diff --git a/vendor/magento/framework/Mview/View.php b/vendor/magento/framework/Mview/View.php
index adf08286cbda..875b226c791f 100644
--- a/vendor/magento/framework/Mview/View.php
+++ b/vendor/magento/framework/Mview/View.php
@@ -258,8 +258,11 @@ public function update()
         }
 
         $lastVersionId = (int)$this->getState()->getVersionId();
-        $action = $this->actionFactory->get($this->getActionClass());
+        if ($lastVersionId >= $currentVersionId) {
+            return;
+        }
 
+        $action = $this->actionFactory->get($this->getActionClass());
         try {
             $this->getState()->setStatus(View\StateInterface::STATUS_WORKING)->save();
 
