You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ib...@apache.org on 2024/01/15 13:26:30 UTC

(ignite-3) branch main updated: IGNITE-21245 Remove APPLIED_REV_KEY from metastorage manager (#3042)

This is an automated email from the ASF dual-hosted git repository.

ibessonov pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
     new c40b788b50 IGNITE-21245 Remove APPLIED_REV_KEY from metastorage manager (#3042)
c40b788b50 is described below

commit c40b788b5051b33c4ae1777e0b3e65cf90c03819
Author: Ivan Bessonov <be...@gmail.com>
AuthorDate: Mon Jan 15 16:26:24 2024 +0300

    IGNITE-21245 Remove APPLIED_REV_KEY from metastorage manager (#3042)
---
 .../catalog/CatalogManagerRecoveryTest.java        |  8 +--
 .../catalog/storage/UpdateLogImplTest.java         | 14 +----
 .../internal/catalog/BaseCatalogManagerTest.java   | 10 +---
 .../ignite/internal/catalog/CatalogTestUtils.java  |  9 +--
 .../metastore/DeploymentUnitStoreImplTest.java     |  8 +--
 ...niteDistributionZoneManagerNodeRestartTest.java |  2 -
 .../distributionzones/DistributionZoneManager.java |  3 -
 .../BaseDistributionZoneManagerTest.java           | 11 +---
 .../DistributionZoneRebalanceEngineTest.java       | 11 +---
 .../IndexAvailabilityControllerRestorerTest.java   | 13 ++---
 .../index/IndexAvailabilityControllerTest.java     | 11 +---
 .../ignite/internal/index/IndexManagerTest.java    | 14 ++---
 .../impl/ItMetaStorageManagerImplTest.java         | 11 +---
 .../ItMetaStorageMultipleNodesAbstractTest.java    |  1 -
 ...MetaStorageSafeTimePropagationAbstractTest.java |  5 +-
 .../metastorage/impl/ItMetaStorageWatchTest.java   |  1 -
 .../metastorage/impl/MetaStorageManagerImpl.java   | 67 ++++------------------
 .../server/OnRevisionAppliedCallback.java          |  7 +--
 .../metastorage/server/WatchProcessor.java         | 46 ++++++---------
 .../MetaStorageDeployWatchesCorrectnessTest.java   | 24 +-------
 .../impl/MetaStorageManagerRecoveryTest.java       |  4 --
 .../metastorage/impl/MetaStorageRangeTest.java     | 13 +----
 .../server/BasicOperationsKeyValueStorageTest.java | 13 ++---
 .../metastorage/server/WatchProcessorTest.java     | 21 ++-----
 .../impl/StandaloneMetaStorageManager.java         | 18 ++----
 .../MultiActorPlacementDriverTest.java             |  6 +-
 .../ignite/internal/placementdriver/Node.java      |  8 +--
 .../PlacementDriverManagerTest.java                | 11 +---
 .../placementdriver/PlacementDriverTest.java       | 12 +---
 .../ItDistributedConfigurationPropertiesTest.java  |  1 -
 .../ItDistributedConfigurationStorageTest.java     |  1 -
 .../runner/app/ItIgniteNodeRestartTest.java        |  2 -
 .../org/apache/ignite/internal/app/IgniteImpl.java |  2 -
 .../ignite/internal/schema/SchemaManagerTest.java  | 10 +---
 .../rebalance/ItRebalanceDistributedTest.java      |  2 -
 .../table/distributed/TableManagerTest.java        |  9 +--
 36 files changed, 85 insertions(+), 324 deletions(-)

diff --git a/modules/catalog/src/test/java/org/apache/ignite/internal/catalog/CatalogManagerRecoveryTest.java b/modules/catalog/src/test/java/org/apache/ignite/internal/catalog/CatalogManagerRecoveryTest.java
index e8d3f3ce14..f5e6abf7cd 100644
--- a/modules/catalog/src/test/java/org/apache/ignite/internal/catalog/CatalogManagerRecoveryTest.java
+++ b/modules/catalog/src/test/java/org/apache/ignite/internal/catalog/CatalogManagerRecoveryTest.java
@@ -41,8 +41,6 @@ import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
 import org.apache.ignite.internal.testframework.WorkDirectory;
 import org.apache.ignite.internal.testframework.WorkDirectoryExtension;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.extension.ExtendWith;
@@ -57,15 +55,13 @@ public class CatalogManagerRecoveryTest extends BaseIgniteAbstractTest {
 
     private final HybridClock clock = new HybridClockImpl();
 
-    private final VaultManager vaultManager = new VaultManager(new InMemoryVaultService());
-
     private MetaStorageManager metaStorageManager;
 
     private CatalogManager catalogManager;
 
     @AfterEach
     void tearDown() throws Exception {
-        IgniteUtils.stopAll(catalogManager, metaStorageManager, vaultManager);
+        IgniteUtils.stopAll(catalogManager, metaStorageManager);
     }
 
     @Test
@@ -113,7 +109,7 @@ public class CatalogManagerRecoveryTest extends BaseIgniteAbstractTest {
     private void createComponents() {
         KeyValueStorage keyValueStorage = new TestRocksDbKeyValueStorage(NODE_NAME, workDir);
 
-        metaStorageManager = StandaloneMetaStorageManager.create(vaultManager, keyValueStorage);
+        metaStorageManager = StandaloneMetaStorageManager.create(keyValueStorage);
 
         catalogManager = CatalogTestUtils.createTestCatalogManager(NODE_NAME, clock, metaStorageManager);
     }
diff --git a/modules/catalog/src/test/java/org/apache/ignite/internal/catalog/storage/UpdateLogImplTest.java b/modules/catalog/src/test/java/org/apache/ignite/internal/catalog/storage/UpdateLogImplTest.java
index 8b8c3fc26d..8d232d6e1a 100644
--- a/modules/catalog/src/test/java/org/apache/ignite/internal/catalog/storage/UpdateLogImplTest.java
+++ b/modules/catalog/src/test/java/org/apache/ignite/internal/catalog/storage/UpdateLogImplTest.java
@@ -44,8 +44,6 @@ import org.apache.ignite.internal.metastorage.server.SimpleInMemoryKeyValueStora
 import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
 import org.apache.ignite.internal.tostring.S;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
@@ -58,17 +56,12 @@ class UpdateLogImplTest extends BaseIgniteAbstractTest {
 
     private MetaStorageManager metastore;
 
-    private VaultManager vault;
-
     @BeforeEach
     void setUp() {
-        vault = new VaultManager(new InMemoryVaultService());
-
         keyValueStorage = new SimpleInMemoryKeyValueStorage("test");
 
-        metastore = StandaloneMetaStorageManager.create(vault, keyValueStorage);
+        metastore = StandaloneMetaStorageManager.create(keyValueStorage);
 
-        vault.start();
         keyValueStorage.start();
         metastore.start();
     }
@@ -77,8 +70,7 @@ class UpdateLogImplTest extends BaseIgniteAbstractTest {
     public void tearDown() throws Exception {
         IgniteUtils.closeAll(
                 metastore == null ? null : metastore::stop,
-                keyValueStorage == null ? null : keyValueStorage::close,
-                vault == null ? null : vault::stop
+                keyValueStorage == null ? null : keyValueStorage::close
         );
     }
 
@@ -139,7 +131,7 @@ class UpdateLogImplTest extends BaseIgniteAbstractTest {
 
         metastore.stop();
 
-        metastore = StandaloneMetaStorageManager.create(vault, keyValueStorage);
+        metastore = StandaloneMetaStorageManager.create(keyValueStorage);
         metastore.start();
 
         assertThat(metastore.recoveryFinishedFuture(), willBe(recoverRevision));
diff --git a/modules/catalog/src/testFixtures/java/org/apache/ignite/internal/catalog/BaseCatalogManagerTest.java b/modules/catalog/src/testFixtures/java/org/apache/ignite/internal/catalog/BaseCatalogManagerTest.java
index 728ff5404a..3103ded609 100644
--- a/modules/catalog/src/testFixtures/java/org/apache/ignite/internal/catalog/BaseCatalogManagerTest.java
+++ b/modules/catalog/src/testFixtures/java/org/apache/ignite/internal/catalog/BaseCatalogManagerTest.java
@@ -48,8 +48,6 @@ import org.apache.ignite.internal.metastorage.impl.StandaloneMetaStorageManager;
 import org.apache.ignite.internal.metastorage.server.SimpleInMemoryKeyValueStorage;
 import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.jetbrains.annotations.Nullable;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
@@ -66,8 +64,6 @@ public abstract class BaseCatalogManagerTest extends BaseIgniteAbstractTest {
 
     final HybridClock clock = new HybridClockImpl();
 
-    private VaultManager vault;
-
     private MetaStorageManager metastore;
 
     UpdateLog updateLog;
@@ -81,9 +77,8 @@ public abstract class BaseCatalogManagerTest extends BaseIgniteAbstractTest {
     @BeforeEach
     void setUp() {
         delayDuration.set(CatalogManagerImpl.DEFAULT_DELAY_DURATION);
-        vault = new VaultManager(new InMemoryVaultService());
 
-        metastore = StandaloneMetaStorageManager.create(vault, new SimpleInMemoryKeyValueStorage(NODE_NAME));
+        metastore = StandaloneMetaStorageManager.create(new SimpleInMemoryKeyValueStorage(NODE_NAME));
 
         updateLog = spy(new UpdateLogImpl(metastore));
         clockWaiter = spy(new ClockWaiter(NODE_NAME, clock));
@@ -95,7 +90,6 @@ public abstract class BaseCatalogManagerTest extends BaseIgniteAbstractTest {
                 () -> CatalogManagerImpl.DEFAULT_PARTITION_IDLE_SAFE_TIME_PROPAGATION_PERIOD
         );
 
-        vault.start();
         metastore.start();
         clockWaiter.start();
         manager.start();
@@ -105,7 +99,7 @@ public abstract class BaseCatalogManagerTest extends BaseIgniteAbstractTest {
 
     @AfterEach
     public void tearDown() throws Exception {
-        IgniteUtils.closeAll(Stream.of(manager, clockWaiter, metastore, vault)
+        IgniteUtils.closeAll(Stream.of(manager, clockWaiter, metastore)
                 .filter(Objects::nonNull)
                 .map(component -> component::stop)
         );
diff --git a/modules/catalog/src/testFixtures/java/org/apache/ignite/internal/catalog/CatalogTestUtils.java b/modules/catalog/src/testFixtures/java/org/apache/ignite/internal/catalog/CatalogTestUtils.java
index 4c4be4d062..232d8f6edd 100644
--- a/modules/catalog/src/testFixtures/java/org/apache/ignite/internal/catalog/CatalogTestUtils.java
+++ b/modules/catalog/src/testFixtures/java/org/apache/ignite/internal/catalog/CatalogTestUtils.java
@@ -47,8 +47,6 @@ import org.apache.ignite.internal.lang.IgniteInternalException;
 import org.apache.ignite.internal.metastorage.MetaStorageManager;
 import org.apache.ignite.internal.metastorage.impl.StandaloneMetaStorageManager;
 import org.apache.ignite.internal.metastorage.server.SimpleInMemoryKeyValueStorage;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.apache.ignite.lang.ErrorGroups.Common;
 import org.apache.ignite.sql.ColumnType;
 
@@ -65,16 +63,13 @@ public class CatalogTestUtils {
      * @param clock Hybrid clock.
      */
     public static CatalogManager createTestCatalogManager(String nodeName, HybridClock clock) {
-        var vault = new VaultManager(new InMemoryVaultService());
-
-        StandaloneMetaStorageManager metastore = StandaloneMetaStorageManager.create(vault, new SimpleInMemoryKeyValueStorage(nodeName));
+        StandaloneMetaStorageManager metastore = StandaloneMetaStorageManager.create(new SimpleInMemoryKeyValueStorage(nodeName));
 
         var clockWaiter = new ClockWaiter(nodeName, clock);
 
         return new CatalogManagerImpl(new UpdateLogImpl(metastore), clockWaiter) {
             @Override
             public CompletableFuture<Void> start() {
-                vault.start();
                 metastore.start();
                 clockWaiter.start();
 
@@ -91,7 +86,6 @@ public class CatalogTestUtils {
 
                 clockWaiter.beforeNodeStop();
                 metastore.beforeNodeStop();
-                vault.beforeNodeStop();
             }
 
             @Override
@@ -100,7 +94,6 @@ public class CatalogTestUtils {
 
                 clockWaiter.stop();
                 metastore.stop();
-                vault.stop();
             }
         };
     }
diff --git a/modules/code-deployment/src/test/java/org/apache/ignite/deployment/metastore/DeploymentUnitStoreImplTest.java b/modules/code-deployment/src/test/java/org/apache/ignite/deployment/metastore/DeploymentUnitStoreImplTest.java
index dd66badea3..22c43fc572 100644
--- a/modules/code-deployment/src/test/java/org/apache/ignite/deployment/metastore/DeploymentUnitStoreImplTest.java
+++ b/modules/code-deployment/src/test/java/org/apache/ignite/deployment/metastore/DeploymentUnitStoreImplTest.java
@@ -50,8 +50,6 @@ import org.apache.ignite.internal.metastorage.server.persistence.RocksDbKeyValue
 import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
 import org.apache.ignite.internal.testframework.WorkDirectory;
 import org.apache.ignite.internal.testframework.WorkDirectoryExtension;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
@@ -64,8 +62,6 @@ import org.junit.jupiter.api.extension.ExtendWith;
 public class DeploymentUnitStoreImplTest extends BaseIgniteAbstractTest {
     private static final String LOCAL_NODE = "localNode";
 
-    private final VaultManager vaultManager = new VaultManager(new InMemoryVaultService());
-
     private final List<UnitNodeStatus> nodeHistory = Collections.synchronizedList(new ArrayList<>());
 
     private final NodeEventCallback nodeEventCallback = new NodeEventCallback() {
@@ -97,19 +93,17 @@ public class DeploymentUnitStoreImplTest extends BaseIgniteAbstractTest {
         clusterHistory.clear();
         KeyValueStorage storage = new RocksDbKeyValueStorage("test", workDir);
 
-        MetaStorageManager metaStorageManager = StandaloneMetaStorageManager.create(vaultManager, storage);
+        MetaStorageManager metaStorageManager = StandaloneMetaStorageManager.create(storage);
         metastore = new DeploymentUnitStoreImpl(metaStorageManager);
         NodeStatusWatchListener nodeListener = new NodeStatusWatchListener(metastore, LOCAL_NODE, nodeEventCallback);
         metastore.registerNodeStatusListener(nodeListener);
         ClusterStatusWatchListener clusterListener = new ClusterStatusWatchListener(clusterEventCallback);
         metastore.registerClusterStatusListener(clusterListener);
 
-        vaultManager.start();
         metaStorageManager.start();
 
         toStop = () -> {
             nodeListener.stop();
-            vaultManager.stop();
             try {
                 metaStorageManager.stop();
             } catch (Exception e) {
diff --git a/modules/distribution-zones/src/integrationTest/java/org/apache/ignite/internal/distributionzones/ItIgniteDistributionZoneManagerNodeRestartTest.java b/modules/distribution-zones/src/integrationTest/java/org/apache/ignite/internal/distributionzones/ItIgniteDistributionZoneManagerNodeRestartTest.java
index 79fefe2e28..318e47608e 100644
--- a/modules/distribution-zones/src/integrationTest/java/org/apache/ignite/internal/distributionzones/ItIgniteDistributionZoneManagerNodeRestartTest.java
+++ b/modules/distribution-zones/src/integrationTest/java/org/apache/ignite/internal/distributionzones/ItIgniteDistributionZoneManagerNodeRestartTest.java
@@ -205,7 +205,6 @@ public class ItIgniteDistributionZoneManagerNodeRestartTest extends BaseIgniteRe
         when(cmgManager.logicalTopology()).thenAnswer(invocation -> completedFuture(logicalTopology.getLogicalTopology()));
 
         metastore = spy(StandaloneMetaStorageManager.create(
-                vault,
                 new TestRocksDbKeyValueStorage(name, workDir.resolve("metastorage"))
         ));
 
@@ -247,7 +246,6 @@ public class ItIgniteDistributionZoneManagerNodeRestartTest extends BaseIgniteRe
                 revisionUpdater,
                 metastore,
                 logicalTopologyService,
-                vault,
                 catalogManager
         );
 
diff --git a/modules/distribution-zones/src/main/java/org/apache/ignite/internal/distributionzones/DistributionZoneManager.java b/modules/distribution-zones/src/main/java/org/apache/ignite/internal/distributionzones/DistributionZoneManager.java
index e6845ff14c..f308f93f17 100644
--- a/modules/distribution-zones/src/main/java/org/apache/ignite/internal/distributionzones/DistributionZoneManager.java
+++ b/modules/distribution-zones/src/main/java/org/apache/ignite/internal/distributionzones/DistributionZoneManager.java
@@ -119,7 +119,6 @@ import org.apache.ignite.internal.metastorage.dsl.Update;
 import org.apache.ignite.internal.thread.NamedThreadFactory;
 import org.apache.ignite.internal.thread.StripedScheduledThreadPoolExecutor;
 import org.apache.ignite.internal.util.IgniteSpinBusyLock;
-import org.apache.ignite.internal.vault.VaultManager;
 import org.jetbrains.annotations.TestOnly;
 
 /**
@@ -202,7 +201,6 @@ public class DistributionZoneManager implements IgniteComponent {
      * @param registry Registry for versioned values.
      * @param metaStorageManager Meta Storage manager.
      * @param logicalTopologyService Logical topology service.
-     * @param vaultMgr Vault manager.
      * @param catalogManager Catalog manager.
      */
     public DistributionZoneManager(
@@ -210,7 +208,6 @@ public class DistributionZoneManager implements IgniteComponent {
             Consumer<LongFunction<CompletableFuture<?>>> registry,
             MetaStorageManager metaStorageManager,
             LogicalTopologyService logicalTopologyService,
-            VaultManager vaultMgr,
             CatalogManager catalogManager
     ) {
         this.metaStorageManager = metaStorageManager;
diff --git a/modules/distribution-zones/src/test/java/org/apache/ignite/internal/distributionzones/BaseDistributionZoneManagerTest.java b/modules/distribution-zones/src/test/java/org/apache/ignite/internal/distributionzones/BaseDistributionZoneManagerTest.java
index b621752305..b3a804c104 100644
--- a/modules/distribution-zones/src/test/java/org/apache/ignite/internal/distributionzones/BaseDistributionZoneManagerTest.java
+++ b/modules/distribution-zones/src/test/java/org/apache/ignite/internal/distributionzones/BaseDistributionZoneManagerTest.java
@@ -47,8 +47,6 @@ import org.apache.ignite.internal.metastorage.impl.StandaloneMetaStorageManager;
 import org.apache.ignite.internal.metastorage.server.SimpleInMemoryKeyValueStorage;
 import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.jetbrains.annotations.Nullable;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
@@ -75,8 +73,6 @@ public abstract class BaseDistributionZoneManagerTest extends BaseIgniteAbstract
 
     protected MetaStorageManager metaStorageManager;
 
-    VaultManager vaultMgr;
-
     private final HybridClock clock = new HybridClockImpl();
 
     protected CatalogManager catalogManager;
@@ -87,13 +83,9 @@ public abstract class BaseDistributionZoneManagerTest extends BaseIgniteAbstract
     void setUp() throws InterruptedException {
         String nodeName = "test";
 
-        vaultMgr = new VaultManager(new InMemoryVaultService());
-
-        components.add(vaultMgr);
-
         keyValueStorage = spy(new SimpleInMemoryKeyValueStorage(nodeName));
 
-        metaStorageManager = spy(StandaloneMetaStorageManager.create(vaultMgr, keyValueStorage));
+        metaStorageManager = spy(StandaloneMetaStorageManager.create(keyValueStorage));
 
         components.add(metaStorageManager);
 
@@ -118,7 +110,6 @@ public abstract class BaseDistributionZoneManagerTest extends BaseIgniteAbstract
                 revisionUpdater,
                 metaStorageManager,
                 new LogicalTopologyServiceImpl(topology, cmgManager),
-                vaultMgr,
                 catalogManager
         );
 
diff --git a/modules/distribution-zones/src/test/java/org/apache/ignite/internal/distributionzones/rebalance/DistributionZoneRebalanceEngineTest.java b/modules/distribution-zones/src/test/java/org/apache/ignite/internal/distributionzones/rebalance/DistributionZoneRebalanceEngineTest.java
index 0e3a0cbf9a..2b367a0f5e 100644
--- a/modules/distribution-zones/src/test/java/org/apache/ignite/internal/distributionzones/rebalance/DistributionZoneRebalanceEngineTest.java
+++ b/modules/distribution-zones/src/test/java/org/apache/ignite/internal/distributionzones/rebalance/DistributionZoneRebalanceEngineTest.java
@@ -34,7 +34,6 @@ import static org.apache.ignite.internal.testframework.IgniteTestUtils.waitForCo
 import static org.apache.ignite.internal.util.ByteUtils.fromBytes;
 import static org.apache.ignite.internal.util.ByteUtils.toBytes;
 import static org.apache.ignite.internal.util.CompletableFutures.emptyMapCompletedFuture;
-import static org.apache.ignite.internal.util.CompletableFutures.nullCompletedFuture;
 import static org.apache.ignite.sql.ColumnType.STRING;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
@@ -94,7 +93,6 @@ import org.apache.ignite.internal.table.TableTestUtils;
 import org.apache.ignite.internal.testframework.IgniteAbstractTest;
 import org.apache.ignite.internal.util.IgniteSpinBusyLock;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
 import org.apache.ignite.network.ClusterService;
 import org.apache.ignite.network.MessagingService;
 import org.jetbrains.annotations.Nullable;
@@ -120,8 +118,6 @@ public class DistributionZoneRebalanceEngineTest extends IgniteAbstractTest {
 
     private final DistributionZoneManager distributionZoneManager = mock(DistributionZoneManager.class);
 
-    private final VaultManager vaultManager = mock(VaultManager.class);
-
     private DistributionZoneRebalanceEngine rebalanceEngine;
 
     private WatchListener watchListener;
@@ -222,9 +218,6 @@ public class DistributionZoneRebalanceEngineTest extends IgniteAbstractTest {
 
         // stable partitions for tables are empty
         when(metaStorageManager.getAll(any())).thenReturn(emptyMapCompletedFuture());
-
-        when(vaultManager.get(any(ByteArray.class))).thenReturn(nullCompletedFuture());
-        when(vaultManager.put(any(ByteArray.class), any(byte[].class))).thenReturn(nullCompletedFuture());
     }
 
     @AfterEach
@@ -380,7 +373,7 @@ public class DistributionZoneRebalanceEngineTest extends IgniteAbstractTest {
                 clock.now()
         );
 
-        MetaStorageManager realMetaStorageManager = StandaloneMetaStorageManager.create(vaultManager, keyValueStorage);
+        MetaStorageManager realMetaStorageManager = StandaloneMetaStorageManager.create(keyValueStorage);
 
         realMetaStorageManager.start();
 
@@ -410,7 +403,7 @@ public class DistributionZoneRebalanceEngineTest extends IgniteAbstractTest {
             );
         }
 
-        MetaStorageManager realMetaStorageManager = StandaloneMetaStorageManager.create(vaultManager, keyValueStorage);
+        MetaStorageManager realMetaStorageManager = StandaloneMetaStorageManager.create(keyValueStorage);
 
         realMetaStorageManager.start();
 
diff --git a/modules/index/src/test/java/org/apache/ignite/internal/index/IndexAvailabilityControllerRestorerTest.java b/modules/index/src/test/java/org/apache/ignite/internal/index/IndexAvailabilityControllerRestorerTest.java
index b7ebb03e43..d1921acfee 100644
--- a/modules/index/src/test/java/org/apache/ignite/internal/index/IndexAvailabilityControllerRestorerTest.java
+++ b/modules/index/src/test/java/org/apache/ignite/internal/index/IndexAvailabilityControllerRestorerTest.java
@@ -59,8 +59,6 @@ import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
 import org.apache.ignite.internal.testframework.WorkDirectory;
 import org.apache.ignite.internal.testframework.WorkDirectoryExtension;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.apache.ignite.network.ClusterNode;
 import org.apache.ignite.network.ClusterService;
 import org.apache.ignite.network.TopologyService;
@@ -79,8 +77,6 @@ public class IndexAvailabilityControllerRestorerTest extends BaseIgniteAbstractT
 
     private final ClusterService clusterService = mock(ClusterService.class);
 
-    private final VaultManager vaultManager = new VaultManager(new InMemoryVaultService());
-
     private KeyValueStorage keyValueStorage;
 
     private MetaStorageManagerImpl metaStorageManager;
@@ -93,11 +89,11 @@ public class IndexAvailabilityControllerRestorerTest extends BaseIgniteAbstractT
     void setUp() throws Exception {
         keyValueStorage = new TestRocksDbKeyValueStorage(NODE_NAME, workDir);
 
-        metaStorageManager = StandaloneMetaStorageManager.create(vaultManager, keyValueStorage);
+        metaStorageManager = StandaloneMetaStorageManager.create(keyValueStorage);
 
         catalogManager = CatalogTestUtils.createTestCatalogManager(NODE_NAME, clock, metaStorageManager);
 
-        Stream.of(vaultManager, metaStorageManager, catalogManager).forEach(IgniteComponent::start);
+        Stream.of(metaStorageManager, catalogManager).forEach(IgniteComponent::start);
 
         deployWatches();
 
@@ -109,8 +105,7 @@ public class IndexAvailabilityControllerRestorerTest extends BaseIgniteAbstractT
         IgniteUtils.closeAll(
                 controller == null ? null : controller::close,
                 catalogManager == null ? null : catalogManager::stop,
-                metaStorageManager == null ? null : metaStorageManager::stop,
-                vaultManager::stop
+                metaStorageManager == null ? null : metaStorageManager::stop
         );
     }
 
@@ -196,7 +191,7 @@ public class IndexAvailabilityControllerRestorerTest extends BaseIgniteAbstractT
 
         keyValueStorage = new TestRocksDbKeyValueStorage(NODE_NAME, workDir);
 
-        metaStorageManager = StandaloneMetaStorageManager.create(vaultManager, keyValueStorage);
+        metaStorageManager = StandaloneMetaStorageManager.create(keyValueStorage);
 
         catalogManager = spy(CatalogTestUtils.createTestCatalogManager(NODE_NAME, clock, metaStorageManager));
 
diff --git a/modules/index/src/test/java/org/apache/ignite/internal/index/IndexAvailabilityControllerTest.java b/modules/index/src/test/java/org/apache/ignite/internal/index/IndexAvailabilityControllerTest.java
index 29f7698389..f6f08817d9 100644
--- a/modules/index/src/test/java/org/apache/ignite/internal/index/IndexAvailabilityControllerTest.java
+++ b/modules/index/src/test/java/org/apache/ignite/internal/index/IndexAvailabilityControllerTest.java
@@ -60,8 +60,6 @@ import org.apache.ignite.internal.storage.index.IndexStorage;
 import org.apache.ignite.internal.table.TableTestUtils;
 import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.apache.ignite.network.ClusterNode;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
@@ -75,9 +73,7 @@ public class IndexAvailabilityControllerTest extends BaseIgniteAbstractTest {
 
     private int partitions;
 
-    private final VaultManager vaultManager = new VaultManager(new InMemoryVaultService());
-
-    private final MetaStorageManagerImpl metaStorageManager = StandaloneMetaStorageManager.create(vaultManager);
+    private final MetaStorageManagerImpl metaStorageManager = StandaloneMetaStorageManager.create();
 
     private final CatalogManager catalogManager = CatalogTestUtils.createTestCatalogManager(NODE_NAME, clock, metaStorageManager);
 
@@ -95,7 +91,7 @@ public class IndexAvailabilityControllerTest extends BaseIgniteAbstractTest {
 
     @BeforeEach
     void setUp() {
-        Stream.of(vaultManager, metaStorageManager, catalogManager).forEach(IgniteComponent::start);
+        Stream.of(metaStorageManager, catalogManager).forEach(IgniteComponent::start);
 
         assertThat(metaStorageManager.deployWatches(), willCompleteSuccessfully());
 
@@ -116,8 +112,7 @@ public class IndexAvailabilityControllerTest extends BaseIgniteAbstractTest {
                 indexAvailabilityController::close,
                 indexBuilder::close,
                 catalogManager::stop,
-                metaStorageManager::stop,
-                vaultManager::stop
+                metaStorageManager::stop
         );
     }
 
diff --git a/modules/index/src/test/java/org/apache/ignite/internal/index/IndexManagerTest.java b/modules/index/src/test/java/org/apache/ignite/internal/index/IndexManagerTest.java
index 5c82a4e9fb..ce7c034d7a 100644
--- a/modules/index/src/test/java/org/apache/ignite/internal/index/IndexManagerTest.java
+++ b/modules/index/src/test/java/org/apache/ignite/internal/index/IndexManagerTest.java
@@ -93,8 +93,6 @@ import org.apache.ignite.internal.testframework.WorkDirectory;
 import org.apache.ignite.internal.testframework.WorkDirectoryExtension;
 import org.apache.ignite.internal.tx.impl.HeapLockManager;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.apache.ignite.sql.IgniteSql;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
@@ -118,8 +116,6 @@ public class IndexManagerTest extends BaseIgniteAbstractTest {
 
     private SchemaManager mockSchemaManager;
 
-    private VaultManager vaultManager;
-
     private MetaStorageManagerImpl metaStorageManager;
 
     private CatalogManager catalogManager;
@@ -149,7 +145,7 @@ public class IndexManagerTest extends BaseIgniteAbstractTest {
 
     @AfterEach
     void tearDown() throws Exception {
-        IgniteUtils.stopAll(vaultManager, metaStorageManager, catalogManager, indexManager);
+        IgniteUtils.stopAll(metaStorageManager, catalogManager, indexManager);
     }
 
     @Test
@@ -322,7 +318,7 @@ public class IndexManagerTest extends BaseIgniteAbstractTest {
 
         clearInvocations(tableViewInternal);
 
-        IgniteUtils.stopAll(indexManager, catalogManager, metaStorageManager, vaultManager);
+        IgniteUtils.stopAll(indexManager, catalogManager, metaStorageManager);
 
         createAndStartComponents();
 
@@ -376,9 +372,7 @@ public class IndexManagerTest extends BaseIgniteAbstractTest {
     }
 
     private void createAndStartComponents() {
-        vaultManager = new VaultManager(new InMemoryVaultService());
-
-        metaStorageManager = StandaloneMetaStorageManager.create(vaultManager, new TestRocksDbKeyValueStorage(NODE_NAME, workDir));
+        metaStorageManager = StandaloneMetaStorageManager.create(new TestRocksDbKeyValueStorage(NODE_NAME, workDir));
 
         catalogManager = CatalogTestUtils.createTestCatalogManager(NODE_NAME, clock, metaStorageManager);
 
@@ -390,7 +384,7 @@ public class IndexManagerTest extends BaseIgniteAbstractTest {
                 (LongFunction<CompletableFuture<?>> function) -> metaStorageManager.registerRevisionUpdateListener(function::apply)
         );
 
-        List.of(vaultManager, metaStorageManager, catalogManager, indexManager).forEach(IgniteComponent::start);
+        List.of(metaStorageManager, catalogManager, indexManager).forEach(IgniteComponent::start);
 
         assertThat(metaStorageManager.recoveryFinishedFuture(), willCompleteSuccessfully());
         assertThat(metaStorageManager.notifyRevisionUpdateListenerOnStart(), willCompleteSuccessfully());
diff --git a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageManagerImplTest.java b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageManagerImplTest.java
index 17e9b8daaa..2a227fdbd9 100644
--- a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageManagerImplTest.java
+++ b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageManagerImplTest.java
@@ -69,8 +69,6 @@ import org.apache.ignite.internal.raft.client.TopologyAwareRaftGroupServiceFacto
 import org.apache.ignite.internal.raft.configuration.RaftConfiguration;
 import org.apache.ignite.internal.testframework.IgniteAbstractTest;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.apache.ignite.network.ClusterService;
 import org.apache.ignite.network.NetworkAddress;
 import org.apache.ignite.network.StaticNodeFinder;
@@ -87,8 +85,6 @@ import org.mockito.ArgumentCaptor;
  */
 @ExtendWith(ConfigurationExtension.class)
 public class ItMetaStorageManagerImplTest extends IgniteAbstractTest {
-    private VaultManager vaultManager;
-
     private ClusterService clusterService;
 
     private Loza raftManager;
@@ -122,8 +118,6 @@ public class ItMetaStorageManagerImplTest extends IgniteAbstractTest {
                 raftGroupEventsClientListener
         );
 
-        vaultManager = new VaultManager(new InMemoryVaultService());
-
         ClusterManagementGroupManager cmgManager = mock(ClusterManagementGroupManager.class);
 
         when(cmgManager.metaStorageNodes()).thenReturn(completedFuture(Set.of(clusterService.nodeName())));
@@ -131,7 +125,6 @@ public class ItMetaStorageManagerImplTest extends IgniteAbstractTest {
         storage = new RocksDbKeyValueStorage(clusterService.nodeName(), workDir.resolve("metastorage"));
 
         metaStorageManager = new MetaStorageManagerImpl(
-                vaultManager,
                 clusterService,
                 cmgManager,
                 logicalTopologyService,
@@ -142,7 +135,6 @@ public class ItMetaStorageManagerImplTest extends IgniteAbstractTest {
                 metaStorageConfiguration
         );
 
-        vaultManager.start();
         clusterService.start();
         raftManager.start();
         metaStorageManager.start();
@@ -152,7 +144,7 @@ public class ItMetaStorageManagerImplTest extends IgniteAbstractTest {
 
     @AfterEach
     void tearDown() throws Exception {
-        List<IgniteComponent> components = List.of(metaStorageManager, raftManager, clusterService, vaultManager);
+        List<IgniteComponent> components = List.of(metaStorageManager, raftManager, clusterService);
 
         IgniteUtils.closeAll(Stream.concat(
                 components.stream().map(c -> c::beforeNodeStop),
@@ -219,7 +211,6 @@ public class ItMetaStorageManagerImplTest extends IgniteAbstractTest {
         when(cmgManager.metaStorageNodes()).thenReturn(cmgFut);
 
         metaStorageManager = new MetaStorageManagerImpl(
-                vaultManager,
                 clusterService,
                 cmgManager,
                 mock(LogicalTopologyService.class),
diff --git a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageMultipleNodesAbstractTest.java b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageMultipleNodesAbstractTest.java
index 991a1c596b..9b430704df 100644
--- a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageMultipleNodesAbstractTest.java
+++ b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageMultipleNodesAbstractTest.java
@@ -183,7 +183,6 @@ public abstract class ItMetaStorageMultipleNodesAbstractTest extends IgniteAbstr
             );
 
             this.metaStorageManager = new MetaStorageManagerImpl(
-                    vaultManager,
                     clusterService,
                     cmgManager,
                     logicalTopologyService,
diff --git a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageSafeTimePropagationAbstractTest.java b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageSafeTimePropagationAbstractTest.java
index cdbcb04e11..ee66bfc219 100644
--- a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageSafeTimePropagationAbstractTest.java
+++ b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageSafeTimePropagationAbstractTest.java
@@ -18,7 +18,6 @@
 package org.apache.ignite.internal.metastorage.impl;
 
 import static org.apache.ignite.internal.testframework.matchers.CompletableFutureMatcher.willCompleteSuccessfully;
-import static org.apache.ignite.internal.util.CompletableFutures.nullCompletedFuture;
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.hamcrest.Matchers.lessThan;
 import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -54,8 +53,8 @@ public abstract class ItMetaStorageSafeTimePropagationAbstractTest extends Abstr
             }
 
             @Override
-            public CompletableFuture<Void> onRevisionApplied(WatchEvent e) {
-                return nullCompletedFuture();
+            public void onRevisionApplied(long revision) {
+                // No-op.
             }
         });
     }
diff --git a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageWatchTest.java b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageWatchTest.java
index d9b8fe1db8..8ed494f04f 100644
--- a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageWatchTest.java
+++ b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageWatchTest.java
@@ -174,7 +174,6 @@ public class ItMetaStorageWatchTest extends IgniteAbstractTest {
             );
 
             this.metaStorageManager = new MetaStorageManagerImpl(
-                    vaultManager,
                     clusterService,
                     cmgManager,
                     logicalTopologyService,
diff --git a/modules/metastorage/src/main/java/org/apache/ignite/internal/metastorage/impl/MetaStorageManagerImpl.java b/modules/metastorage/src/main/java/org/apache/ignite/internal/metastorage/impl/MetaStorageManagerImpl.java
index 8a5475a2f7..938abb9c3f 100644
--- a/modules/metastorage/src/main/java/org/apache/ignite/internal/metastorage/impl/MetaStorageManagerImpl.java
+++ b/modules/metastorage/src/main/java/org/apache/ignite/internal/metastorage/impl/MetaStorageManagerImpl.java
@@ -17,23 +17,17 @@
 
 package org.apache.ignite.internal.metastorage.impl;
 
-import static org.apache.ignite.internal.util.ByteUtils.bytesToLong;
-import static org.apache.ignite.internal.util.ByteUtils.longToBytes;
 import static org.apache.ignite.internal.util.CompletableFutures.nullCompletedFuture;
 import static org.apache.ignite.internal.util.IgniteUtils.cancelOrConsume;
 import static org.apache.ignite.internal.util.IgniteUtils.inBusyLock;
-import static org.apache.ignite.lang.ErrorGroups.MetaStorage.RESTORING_STORAGE_ERR;
 
 import java.util.Collection;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.CompletableFuture;
-import java.util.concurrent.ExecutionException;
 import java.util.concurrent.Flow.Publisher;
 import java.util.concurrent.Flow.Subscriber;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.TimeoutException;
 import java.util.concurrent.atomic.AtomicBoolean;
 import org.apache.ignite.internal.cluster.management.ClusterManagementGroupManager;
 import org.apache.ignite.internal.cluster.management.topology.api.LogicalTopologyService;
@@ -46,14 +40,12 @@ import org.apache.ignite.internal.logger.Loggers;
 import org.apache.ignite.internal.metastorage.Entry;
 import org.apache.ignite.internal.metastorage.MetaStorageManager;
 import org.apache.ignite.internal.metastorage.RevisionUpdateListener;
-import org.apache.ignite.internal.metastorage.WatchEvent;
 import org.apache.ignite.internal.metastorage.WatchListener;
 import org.apache.ignite.internal.metastorage.configuration.MetaStorageConfiguration;
 import org.apache.ignite.internal.metastorage.dsl.Condition;
 import org.apache.ignite.internal.metastorage.dsl.Iif;
 import org.apache.ignite.internal.metastorage.dsl.Operation;
 import org.apache.ignite.internal.metastorage.dsl.StatementResult;
-import org.apache.ignite.internal.metastorage.exceptions.MetaStorageException;
 import org.apache.ignite.internal.metastorage.server.KeyValueStorage;
 import org.apache.ignite.internal.metastorage.server.OnRevisionAppliedCallback;
 import org.apache.ignite.internal.metastorage.server.raft.MetaStorageListener;
@@ -72,8 +64,6 @@ import org.apache.ignite.internal.raft.service.RaftGroupService;
 import org.apache.ignite.internal.util.Cursor;
 import org.apache.ignite.internal.util.IgniteSpinBusyLock;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultEntry;
-import org.apache.ignite.internal.vault.VaultManager;
 import org.apache.ignite.lang.IgniteException;
 import org.apache.ignite.network.ClusterService;
 import org.jetbrains.annotations.Nullable;
@@ -92,16 +82,8 @@ import org.jetbrains.annotations.TestOnly;
 public class MetaStorageManagerImpl implements MetaStorageManager {
     private static final IgniteLogger LOG = Loggers.forClass(MetaStorageManagerImpl.class);
 
-    /**
-     * Special key for the Vault where the applied revision is stored.
-     */
-    private static final ByteArray APPLIED_REV_KEY = new ByteArray("applied_revision");
-
     private final ClusterService clusterService;
 
-    /** Vault manager in order to commit processed watches with corresponding applied revision. */
-    private final VaultManager vaultMgr;
-
     /** Raft manager that is used for metastorage raft group handling. */
     private final RaftManager raftMgr;
 
@@ -136,14 +118,13 @@ public class MetaStorageManagerImpl implements MetaStorageManager {
 
     private final TopologyAwareRaftGroupServiceFactory topologyAwareRaftGroupServiceFactory;
 
-    private volatile long appliedRevision;
+    private volatile long appliedRevision = 0;
 
     private volatile MetaStorageConfiguration metaStorageConfiguration;
 
     /**
      * The constructor.
      *
-     * @param vaultMgr Vault manager.
      * @param clusterService Cluster network service.
      * @param cmgMgr Cluster management service Manager.
      * @param logicalTopologyService Logical topology service.
@@ -152,7 +133,6 @@ public class MetaStorageManagerImpl implements MetaStorageManager {
      * @param clock A hybrid logical clock.
      */
     public MetaStorageManagerImpl(
-            VaultManager vaultMgr,
             ClusterService clusterService,
             ClusterManagementGroupManager cmgMgr,
             LogicalTopologyService logicalTopologyService,
@@ -161,7 +141,6 @@ public class MetaStorageManagerImpl implements MetaStorageManager {
             HybridClock clock,
             TopologyAwareRaftGroupServiceFactory topologyAwareRaftGroupServiceFactory
     ) {
-        this.vaultMgr = vaultMgr;
         this.clusterService = clusterService;
         this.raftMgr = raftMgr;
         this.cmgMgr = cmgMgr;
@@ -176,7 +155,6 @@ public class MetaStorageManagerImpl implements MetaStorageManager {
      */
     @TestOnly
     public MetaStorageManagerImpl(
-            VaultManager vaultMgr,
             ClusterService clusterService,
             ClusterManagementGroupManager cmgMgr,
             LogicalTopologyService logicalTopologyService,
@@ -186,7 +164,7 @@ public class MetaStorageManagerImpl implements MetaStorageManager {
             TopologyAwareRaftGroupServiceFactory topologyAwareRaftGroupServiceFactory,
             MetaStorageConfiguration configuration
     ) {
-        this(vaultMgr, clusterService, cmgMgr, logicalTopologyService, raftMgr, storage, clock, topologyAwareRaftGroupServiceFactory);
+        this(clusterService, cmgMgr, logicalTopologyService, raftMgr, storage, clock, topologyAwareRaftGroupServiceFactory);
 
         configure(configuration);
     }
@@ -232,6 +210,7 @@ public class MetaStorageManagerImpl implements MetaStorageManager {
 
                 storage.setRecoveryRevisionListener(null);
 
+                appliedRevision = targetRevision;
                 if (recoveryFinishedFuture.complete(targetRevision)) {
                     LOG.info("Finished MetaStorage recovery");
                 }
@@ -248,9 +227,12 @@ public class MetaStorageManagerImpl implements MetaStorageManager {
 
         // Storage might be already up-to-date, so check here manually after setting the listener.
         try {
-            if (storage.revision() >= targetRevision) {
+            long storageRevision = storage.revision();
+
+            if (storageRevision >= targetRevision) {
                 storage.setRecoveryRevisionListener(null);
 
+                appliedRevision = targetRevision;
                 if (recoveryFinishedFuture.complete(targetRevision)) {
                     LOG.info("Finished MetaStorage recovery");
                 }
@@ -358,8 +340,6 @@ public class MetaStorageManagerImpl implements MetaStorageManager {
     public CompletableFuture<Void> start() {
         storage.start();
 
-        appliedRevision = readRevisionFromVault();
-
         cmgMgr.metaStorageNodes()
                 .thenCompose(metaStorageNodes -> {
                     if (!busyLock.enterBusy()) {
@@ -387,16 +367,6 @@ public class MetaStorageManagerImpl implements MetaStorageManager {
         return nullCompletedFuture();
     }
 
-    private long readRevisionFromVault() {
-        try {
-            VaultEntry entry = vaultMgr.get(APPLIED_REV_KEY).get(10, TimeUnit.SECONDS);
-
-            return entry == null ? 0L : bytesToLong(entry.value());
-        } catch (InterruptedException | ExecutionException | TimeoutException e) {
-            throw new MetaStorageException(RESTORING_STORAGE_ERR, e);
-        }
-    }
-
     @Override
     public void stop() throws Exception {
         if (!isStopped.compareAndSet(false, true)) {
@@ -451,7 +421,6 @@ public class MetaStorageManagerImpl implements MetaStorageManager {
         try {
             return recoveryFinishedFuture
                     .thenAccept(revision -> inBusyLock(busyLock, () -> {
-                        // Meta Storage contract states that all updated entries under a particular revision must be stored in the Vault.
                         storage.startWatches(revision + 1, new OnRevisionAppliedCallback() {
                             @Override
                             public void onSafeTimeAdvanced(HybridTimestamp newSafeTime) {
@@ -459,8 +428,8 @@ public class MetaStorageManagerImpl implements MetaStorageManager {
                             }
 
                             @Override
-                            public CompletableFuture<Void> onRevisionApplied(WatchEvent watchEvent) {
-                                return MetaStorageManagerImpl.this.onRevisionApplied(watchEvent);
+                            public void onRevisionApplied(long revision) {
+                                MetaStorageManagerImpl.this.onRevisionApplied(revision);
                             }
                         });
                     }))
@@ -855,22 +824,10 @@ public class MetaStorageManagerImpl implements MetaStorageManager {
     }
 
     /**
-     * Saves processed Meta Storage revision and corresponding entries to the Vault.
+     * Saves processed Meta Storage revision to the {@link #appliedRevision}.
      */
-    private CompletableFuture<Void> onRevisionApplied(WatchEvent watchEvent) {
-        if (!busyLock.enterBusy()) {
-            LOG.info("Skipping applying MetaStorage revision because the node is stopping");
-
-            return nullCompletedFuture();
-        }
-
-        try {
-            CompletableFuture<Void> saveToVaultFuture = vaultMgr.put(APPLIED_REV_KEY, longToBytes(watchEvent.revision()));
-
-            return saveToVaultFuture.thenRun(() -> appliedRevision = watchEvent.revision());
-        } finally {
-            busyLock.leaveBusy();
-        }
+    private void onRevisionApplied(long revision) {
+        appliedRevision = revision;
     }
 
     @Override
diff --git a/modules/metastorage/src/main/java/org/apache/ignite/internal/metastorage/server/OnRevisionAppliedCallback.java b/modules/metastorage/src/main/java/org/apache/ignite/internal/metastorage/server/OnRevisionAppliedCallback.java
index b514048950..48a07367bf 100644
--- a/modules/metastorage/src/main/java/org/apache/ignite/internal/metastorage/server/OnRevisionAppliedCallback.java
+++ b/modules/metastorage/src/main/java/org/apache/ignite/internal/metastorage/server/OnRevisionAppliedCallback.java
@@ -17,9 +17,7 @@
 
 package org.apache.ignite.internal.metastorage.server;
 
-import java.util.concurrent.CompletableFuture;
 import org.apache.ignite.internal.hlc.HybridTimestamp;
-import org.apache.ignite.internal.metastorage.WatchEvent;
 
 /**
  * Interface for declaring callbacks that get called after all Meta Storage watches have been notified of a particular revision
@@ -37,8 +35,7 @@ public interface OnRevisionAppliedCallback {
     /**
      * Notifies of completion of processing of Meta Storage watches for a particular revision.
      *
-     * @param watchEvent Event with modified Meta Storage entries processed by at least one Watch.
-     * @return Future that represents the state of the execution of the callback.
+     * @param revision Latest applied meta-storage revision.
      */
-    CompletableFuture<Void> onRevisionApplied(WatchEvent watchEvent);
+    void onRevisionApplied(long revision);
 }
diff --git a/modules/metastorage/src/main/java/org/apache/ignite/internal/metastorage/server/WatchProcessor.java b/modules/metastorage/src/main/java/org/apache/ignite/internal/metastorage/server/WatchProcessor.java
index 9cb803bce0..18e8c256b7 100644
--- a/modules/metastorage/src/main/java/org/apache/ignite/internal/metastorage/server/WatchProcessor.java
+++ b/modules/metastorage/src/main/java/org/apache/ignite/internal/metastorage/server/WatchProcessor.java
@@ -25,7 +25,6 @@ import static org.apache.ignite.internal.util.CompletableFutures.nullCompletedFu
 
 import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
-import java.util.HashSet;
 import java.util.List;
 import java.util.OptionalLong;
 import java.util.concurrent.CompletableFuture;
@@ -37,6 +36,7 @@ import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
 import org.apache.ignite.internal.close.ManuallyCloseable;
 import org.apache.ignite.internal.hlc.HybridTimestamp;
+import org.apache.ignite.internal.lang.NodeStoppingException;
 import org.apache.ignite.internal.logger.IgniteLogger;
 import org.apache.ignite.internal.logger.Loggers;
 import org.apache.ignite.internal.metastorage.Entry;
@@ -172,12 +172,18 @@ public class WatchProcessor implements ManuallyCloseable {
                                 CompletableFuture<Void> notifyUpdateRevisionFuture = notifyUpdateRevisionListeners(newRevision);
 
                                 CompletableFuture<Void> notificationFuture = allOf(notifyWatchesFuture, notifyUpdateRevisionFuture)
-                                        .thenComposeAsync(
-                                                unused -> invokeOnRevisionCallback(watchAndEvents, newRevision, time),
+                                        .thenRunAsync(
+                                                () -> invokeOnRevisionCallback(newRevision, time),
                                                 watchExecutor
                                         );
 
-                                notificationFuture.whenComplete((unused, e) -> maybeLogLongProcessing(updatedEntries, startTimeNanos));
+                                notificationFuture.whenComplete((unused, e) -> {
+                                    maybeLogLongProcessing(updatedEntries, startTimeNanos);
+
+                                    if (e != null) {
+                                        LOG.error("Error occurred when notifying watches", e);
+                                    }
+                                });
 
                                 return notificationFuture;
                             }, watchExecutor);
@@ -210,8 +216,10 @@ public class WatchProcessor implements ManuallyCloseable {
                                     e = e.getCause();
                                 }
 
-                                // TODO: IGNITE-14693 Implement Meta storage exception handling
-                                LOG.error("Error occurred when processing a watch event", e);
+                                if (!(e instanceof NodeStoppingException)) {
+                                    // TODO: IGNITE-14693 Implement Meta storage exception handling
+                                    LOG.error("Error occurred when processing a watch event", e);
+                                }
 
                                 watchAndEvents.watch.onError(e);
                             }
@@ -284,30 +292,10 @@ public class WatchProcessor implements ManuallyCloseable {
         }, watchExecutor);
     }
 
-    private CompletableFuture<Void> invokeOnRevisionCallback(List<WatchAndEvents> watchAndEventsList, long revision, HybridTimestamp time) {
-        try {
-            // Only notify about entries that have been accepted by at least one Watch.
-            var acceptedEntries = new HashSet<EntryEvent>();
-
-            for (WatchAndEvents watchAndEvents : watchAndEventsList) {
-                acceptedEntries.addAll(watchAndEvents.events);
-            }
-
-            var event = new WatchEvent(acceptedEntries, revision, time);
+    private void invokeOnRevisionCallback(long revision, HybridTimestamp time) {
+        revisionCallback.onSafeTimeAdvanced(time);
 
-            revisionCallback.onSafeTimeAdvanced(time);
-
-            return revisionCallback.onRevisionApplied(event)
-                    .whenComplete((ignored, e) -> {
-                        if (e != null) {
-                            LOG.error("Error occurred when notifying watches", e);
-                        }
-                    });
-        } catch (Throwable e) {
-            LOG.error("Error occurred when notifying watches", e);
-
-            return failedFuture(e);
-        }
+        revisionCallback.onRevisionApplied(revision);
     }
 
     /**
diff --git a/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/impl/MetaStorageDeployWatchesCorrectnessTest.java b/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/impl/MetaStorageDeployWatchesCorrectnessTest.java
index 570295b0fa..709c4378d7 100644
--- a/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/impl/MetaStorageDeployWatchesCorrectnessTest.java
+++ b/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/impl/MetaStorageDeployWatchesCorrectnessTest.java
@@ -41,11 +41,7 @@ import org.apache.ignite.internal.raft.RaftManager;
 import org.apache.ignite.internal.raft.client.TopologyAwareRaftGroupService;
 import org.apache.ignite.internal.raft.client.TopologyAwareRaftGroupServiceFactory;
 import org.apache.ignite.internal.testframework.IgniteAbstractTest;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.apache.ignite.network.ClusterService;
-import org.junit.jupiter.api.AfterAll;
-import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.extension.ExtendWith;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.MethodSource;
@@ -55,26 +51,9 @@ import org.junit.jupiter.params.provider.MethodSource;
  */
 @ExtendWith(ConfigurationExtension.class)
 public class MetaStorageDeployWatchesCorrectnessTest extends IgniteAbstractTest {
-    /** Vault manager. */
-    private static VaultManager vaultManager;
-
     @InjectConfiguration
     private static MetaStorageConfiguration metaStorageConfiguration;
 
-    @BeforeAll
-    public static void init() {
-        vaultManager = new VaultManager(new InMemoryVaultService());
-
-        vaultManager.start();
-    }
-
-    @AfterAll
-    public static void deInit() {
-        vaultManager.beforeNodeStop();
-
-        vaultManager.stop();
-    }
-
     /**
      * Returns a stream with test arguments.
      *
@@ -98,7 +77,6 @@ public class MetaStorageDeployWatchesCorrectnessTest extends IgniteAbstractTest
 
         return Stream.of(
                 new MetaStorageManagerImpl(
-                        vaultManager,
                         clusterService,
                         cmgManager,
                         mock(LogicalTopologyService.class),
@@ -108,7 +86,7 @@ public class MetaStorageDeployWatchesCorrectnessTest extends IgniteAbstractTest
                         mock(TopologyAwareRaftGroupServiceFactory.class),
                         metaStorageConfiguration
                 ),
-                StandaloneMetaStorageManager.create(vaultManager)
+                StandaloneMetaStorageManager.create()
         );
     }
 
diff --git a/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/impl/MetaStorageManagerRecoveryTest.java b/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/impl/MetaStorageManagerRecoveryTest.java
index 09a4c5fed7..43ea6c7442 100644
--- a/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/impl/MetaStorageManagerRecoveryTest.java
+++ b/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/impl/MetaStorageManagerRecoveryTest.java
@@ -44,8 +44,6 @@ import org.apache.ignite.internal.raft.RaftManager;
 import org.apache.ignite.internal.raft.client.TopologyAwareRaftGroupServiceFactory;
 import org.apache.ignite.internal.raft.service.RaftGroupService;
 import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.apache.ignite.network.ClusterService;
 import org.apache.ignite.network.MessagingService;
 import org.apache.ignite.network.NodeMetadata;
@@ -71,7 +69,6 @@ public class MetaStorageManagerRecoveryTest extends BaseIgniteAbstractTest {
     private HybridClock clock;
 
     private void createMetaStorage(long remoteRevision) throws Exception {
-        VaultManager vault = new VaultManager(new InMemoryVaultService());
         ClusterService clusterService = clusterService();
         ClusterManagementGroupManager cmgManager = clusterManagementManager();
         LogicalTopologyService topologyService = mock(LogicalTopologyService.class);
@@ -81,7 +78,6 @@ public class MetaStorageManagerRecoveryTest extends BaseIgniteAbstractTest {
         kvs = spy(new SimpleInMemoryKeyValueStorage(NODE_NAME));
 
         metaStorageManager = new MetaStorageManagerImpl(
-                vault,
                 clusterService,
                 cmgManager,
                 topologyService,
diff --git a/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/impl/MetaStorageRangeTest.java b/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/impl/MetaStorageRangeTest.java
index 7fc500d562..114b9ee10f 100644
--- a/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/impl/MetaStorageRangeTest.java
+++ b/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/impl/MetaStorageRangeTest.java
@@ -23,7 +23,6 @@ import static org.apache.ignite.internal.testframework.flow.TestFlowUtils.subscr
 import static org.apache.ignite.internal.testframework.matchers.CompletableFutureMatcher.willBe;
 import static org.apache.ignite.internal.testframework.matchers.CompletableFutureMatcher.willCompleteSuccessfully;
 import static org.apache.ignite.internal.util.ByteUtils.intToBytes;
-import static org.apache.ignite.internal.util.IgniteUtils.closeAll;
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.hamcrest.Matchers.empty;
 import static org.mockito.ArgumentMatchers.any;
@@ -39,7 +38,6 @@ import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.CompletableFuture;
 import java.util.stream.IntStream;
-import java.util.stream.Stream;
 import org.apache.ignite.internal.hlc.HybridTimestamp;
 import org.apache.ignite.internal.lang.ByteArray;
 import org.apache.ignite.internal.metastorage.Entry;
@@ -49,8 +47,6 @@ import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
 import org.apache.ignite.internal.testframework.WorkDirectory;
 import org.apache.ignite.internal.testframework.WorkDirectoryExtension;
 import org.apache.ignite.internal.util.ByteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.jetbrains.annotations.Nullable;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
@@ -62,8 +58,6 @@ import org.junit.jupiter.api.extension.ExtendWith;
  */
 @ExtendWith(WorkDirectoryExtension.class)
 public abstract class MetaStorageRangeTest extends BaseIgniteAbstractTest {
-    private final VaultManager vaultManager = new VaultManager(new InMemoryVaultService());
-
     private KeyValueStorage storage;
 
     private MetaStorageManager metaStorageManager;
@@ -74,16 +68,15 @@ public abstract class MetaStorageRangeTest extends BaseIgniteAbstractTest {
     void setUp(@WorkDirectory Path workDir) {
         storage = spy(getStorage(workDir));
 
-        metaStorageManager = StandaloneMetaStorageManager.create(vaultManager, storage);
+        metaStorageManager = StandaloneMetaStorageManager.create(storage);
 
-        vaultManager.start();
         metaStorageManager.start();
     }
 
     @AfterEach
     void tearDown() throws Exception {
-        closeAll(Stream.of(vaultManager, metaStorageManager).map(c -> c::beforeNodeStop));
-        closeAll(Stream.of(vaultManager, metaStorageManager).map(c -> c::stop));
+        metaStorageManager.beforeNodeStop();
+        metaStorageManager.stop();
     }
 
     @Test
diff --git a/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/server/BasicOperationsKeyValueStorageTest.java b/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/server/BasicOperationsKeyValueStorageTest.java
index def2336907..80742d1677 100644
--- a/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/server/BasicOperationsKeyValueStorageTest.java
+++ b/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/server/BasicOperationsKeyValueStorageTest.java
@@ -35,6 +35,7 @@ import static org.junit.jupiter.api.Assertions.assertThrows;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 import static org.junit.jupiter.api.Assertions.fail;
 import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyLong;
 import static org.mockito.Mockito.doThrow;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.never;
@@ -2081,8 +2082,8 @@ public abstract class BasicOperationsKeyValueStorageTest extends AbstractKeyValu
             }
 
             @Override
-            public CompletableFuture<Void> onRevisionApplied(WatchEvent event) {
-                return nullCompletedFuture();
+            public void onRevisionApplied(long revision) {
+                // No-op.
             }
         });
 
@@ -2423,8 +2424,6 @@ public abstract class BasicOperationsKeyValueStorageTest extends AbstractKeyValu
 
         OnRevisionAppliedCallback mockCallback = mock(OnRevisionAppliedCallback.class);
 
-        when(mockCallback.onRevisionApplied(any())).thenReturn(nullCompletedFuture());
-
         storage.startWatches(1, mockCallback);
 
         putToMs(key, value);
@@ -2435,7 +2434,7 @@ public abstract class BasicOperationsKeyValueStorageTest extends AbstractKeyValu
 
         verify(mockListener3, timeout(10_000)).onUpdate(any());
 
-        verify(mockCallback, never()).onRevisionApplied(any());
+        verify(mockCallback, never()).onRevisionApplied(anyLong());
     }
 
     @Test
@@ -2627,8 +2626,8 @@ public abstract class BasicOperationsKeyValueStorageTest extends AbstractKeyValu
             }
 
             @Override
-            public CompletableFuture<Void> onRevisionApplied(WatchEvent event) {
-                return nullCompletedFuture();
+            public void onRevisionApplied(long revision) {
+                // No-op.
             }
         });
 
diff --git a/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/server/WatchProcessorTest.java b/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/server/WatchProcessorTest.java
index 498bff7880..54bc6699a4 100644
--- a/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/server/WatchProcessorTest.java
+++ b/modules/metastorage/src/test/java/org/apache/ignite/internal/metastorage/server/WatchProcessorTest.java
@@ -22,9 +22,8 @@ import static org.apache.ignite.internal.testframework.matchers.CompletableFutur
 import static org.apache.ignite.internal.testframework.matchers.CompletableFutureMatcher.willCompleteSuccessfully;
 import static org.apache.ignite.internal.util.CompletableFutures.nullCompletedFuture;
 import static org.hamcrest.MatcherAssert.assertThat;
-import static org.hamcrest.Matchers.containsInAnyOrder;
-import static org.hamcrest.Matchers.is;
 import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyLong;
 import static org.mockito.Mockito.inOrder;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.never;
@@ -45,7 +44,6 @@ import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
-import org.mockito.ArgumentCaptor;
 import org.mockito.InOrder;
 
 /**
@@ -58,8 +56,6 @@ public class WatchProcessorTest extends BaseIgniteAbstractTest {
 
     @BeforeEach
     void setUp() {
-        when(revisionCallback.onRevisionApplied(any())).thenReturn(nullCompletedFuture());
-
         watchProcessor.setRevisionCallback(revisionCallback);
     }
 
@@ -92,14 +88,7 @@ public class WatchProcessorTest extends BaseIgniteAbstractTest {
         verify(listener1).onUpdate(new WatchEvent(entryEvent1));
         verify(listener2).onUpdate(new WatchEvent(entryEvent2));
 
-        var watchEventCaptor = ArgumentCaptor.forClass(WatchEvent.class);
-
-        verify(revisionCallback).onRevisionApplied(watchEventCaptor.capture());
-
-        WatchEvent event = watchEventCaptor.getValue();
-
-        assertThat(event.entryEvents(), containsInAnyOrder(entryEvent1, entryEvent2));
-        assertThat(event.revision(), is(1L));
+        verify(revisionCallback).onRevisionApplied(1L);
     }
 
     /**
@@ -126,7 +115,7 @@ public class WatchProcessorTest extends BaseIgniteAbstractTest {
 
         verify(listener1).onUpdate(event);
 
-        verify(revisionCallback).onRevisionApplied(event);
+        verify(revisionCallback).onRevisionApplied(1L);
 
         ts = new HybridTimestamp(2, 3);
 
@@ -138,7 +127,7 @@ public class WatchProcessorTest extends BaseIgniteAbstractTest {
 
         verify(listener2).onUpdate(event);
 
-        verify(revisionCallback).onRevisionApplied(event);
+        verify(revisionCallback).onRevisionApplied(2L);
     }
 
     /**
@@ -166,7 +155,7 @@ public class WatchProcessorTest extends BaseIgniteAbstractTest {
         verify(listener2).onUpdate(new WatchEvent(new EntryEvent(oldEntry(entry2), entry2)));
         verify(listener2).onError(any(IllegalStateException.class));
 
-        verify(revisionCallback, never()).onRevisionApplied(any());
+        verify(revisionCallback, never()).onRevisionApplied(anyLong());
     }
 
     /**
diff --git a/modules/metastorage/src/testFixtures/java/org/apache/ignite/internal/metastorage/impl/StandaloneMetaStorageManager.java b/modules/metastorage/src/testFixtures/java/org/apache/ignite/internal/metastorage/impl/StandaloneMetaStorageManager.java
index 084598c3cc..bfebc36262 100644
--- a/modules/metastorage/src/testFixtures/java/org/apache/ignite/internal/metastorage/impl/StandaloneMetaStorageManager.java
+++ b/modules/metastorage/src/testFixtures/java/org/apache/ignite/internal/metastorage/impl/StandaloneMetaStorageManager.java
@@ -44,7 +44,6 @@ import org.apache.ignite.internal.raft.client.TopologyAwareRaftGroupServiceFacto
 import org.apache.ignite.internal.raft.service.BeforeApplyHandler;
 import org.apache.ignite.internal.raft.service.CommandClosure;
 import org.apache.ignite.internal.raft.service.RaftGroupListener;
-import org.apache.ignite.internal.vault.VaultManager;
 import org.apache.ignite.network.ClusterService;
 import org.jetbrains.annotations.Nullable;
 import org.jetbrains.annotations.TestOnly;
@@ -66,22 +65,20 @@ public class StandaloneMetaStorageManager extends MetaStorageManagerImpl {
     private static final MockSettings LENIENT_SETTINGS = withSettings().strictness(Strictness.LENIENT);
 
     /**
-     * Creates standalone MetaStorage manager for provided VaultManager.
+     * Creates standalone MetaStorage manager.
      */
-    public static StandaloneMetaStorageManager create(VaultManager vaultManager) {
-        return create(vaultManager, new SimpleInMemoryKeyValueStorage(TEST_NODE_NAME));
+    public static StandaloneMetaStorageManager create() {
+        return create(new SimpleInMemoryKeyValueStorage(TEST_NODE_NAME));
     }
 
     /**
-     * Creates standalone MetaStorage manager for provided VaultManager and key-value storage.
-     * The manager is responsible for starting/stopping provided key-value storage.
+     * Creates standalone MetaStorage manager for provided key-value storage. The manager is responsible for starting/stopping provided
+     * key-value storage.
      *
-     * @param vaultManager Vault manager.
      * @param keyValueStorage Key-value storage.
      */
-    public static StandaloneMetaStorageManager create(VaultManager vaultManager, KeyValueStorage keyValueStorage) {
+    public static StandaloneMetaStorageManager create(KeyValueStorage keyValueStorage) {
         return new StandaloneMetaStorageManager(
-                vaultManager,
                 mockClusterService(),
                 mockClusterGroupManager(),
                 mock(LogicalTopologyService.class),
@@ -95,7 +92,6 @@ public class StandaloneMetaStorageManager extends MetaStorageManagerImpl {
     /**
      * The constructor.
      *
-     * @param vaultMgr Vault manager.
      * @param clusterService Cluster network service.
      * @param cmgMgr Cluster management service Manager.
      * @param logicalTopologyService Logical topology service.
@@ -103,7 +99,6 @@ public class StandaloneMetaStorageManager extends MetaStorageManagerImpl {
      * @param storage Storage. This component owns this resource and will manage its lifecycle.
      */
     private StandaloneMetaStorageManager(
-            VaultManager vaultMgr,
             ClusterService clusterService,
             ClusterManagementGroupManager cmgMgr,
             LogicalTopologyService logicalTopologyService,
@@ -113,7 +108,6 @@ public class StandaloneMetaStorageManager extends MetaStorageManagerImpl {
             MetaStorageConfiguration configuration
     ) {
         super(
-                vaultMgr,
                 clusterService,
                 cmgMgr,
                 logicalTopologyService,
diff --git a/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/MultiActorPlacementDriverTest.java b/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/MultiActorPlacementDriverTest.java
index eacbbbdcbb..6b14cba943 100644
--- a/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/MultiActorPlacementDriverTest.java
+++ b/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/MultiActorPlacementDriverTest.java
@@ -66,8 +66,6 @@ import org.apache.ignite.internal.raft.configuration.RaftConfiguration;
 import org.apache.ignite.internal.raft.service.RaftGroupService;
 import org.apache.ignite.internal.replicator.TablePartitionId;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.apache.ignite.network.ClusterService;
 import org.apache.ignite.network.NetworkAddress;
 import org.apache.ignite.network.NetworkMessageHandler;
@@ -221,7 +219,6 @@ public class MultiActorPlacementDriverTest extends BasePlacementDriverTest {
 
         for (int i = 0; i < placementDriverNodeNames.size(); i++) {
             String nodeName = placementDriverNodeNames.get(i);
-            var vaultManager = new VaultManager(new InMemoryVaultService());
             var clusterService = services.get(nodeName);
 
             ClusterManagementGroupManager cmgManager = mock(ClusterManagementGroupManager.class);
@@ -254,7 +251,6 @@ public class MultiActorPlacementDriverTest extends BasePlacementDriverTest {
             var storage = new SimpleInMemoryKeyValueStorage(nodeName);
 
             var metaStorageManager = new MetaStorageManagerImpl(
-                    vaultManager,
                     clusterService,
                     cmgManager,
                     logicalTopologyService,
@@ -281,7 +277,7 @@ public class MultiActorPlacementDriverTest extends BasePlacementDriverTest {
                     nodeClock
             );
 
-            res.add(new Node(nodeName, vaultManager, clusterService, raftManager, metaStorageManager, placementDriverManager));
+            res.add(new Node(nodeName, clusterService, raftManager, metaStorageManager, placementDriverManager));
         }
 
         assertThat(allOf(res.stream().map(Node::startAsync).toArray(CompletableFuture[]::new)), willCompleteSuccessfully());
diff --git a/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/Node.java b/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/Node.java
index 8c7c8f480a..f95437b063 100644
--- a/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/Node.java
+++ b/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/Node.java
@@ -24,14 +24,11 @@ import org.apache.ignite.internal.manager.IgniteComponent;
 import org.apache.ignite.internal.metastorage.impl.MetaStorageManagerImpl;
 import org.apache.ignite.internal.raft.Loza;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
 import org.apache.ignite.network.ClusterService;
 
 class Node implements AutoCloseable {
     final String name;
 
-    final VaultManager vault;
-
     final ClusterService clusterService;
 
     final Loza loza;
@@ -42,14 +39,12 @@ class Node implements AutoCloseable {
 
     Node(
             String name,
-            VaultManager vault,
             ClusterService clusterService,
             Loza loza,
             MetaStorageManagerImpl metastore,
             PlacementDriverManager placementDriverManager
     ) {
         this.name = name;
-        this.vault = vault;
         this.clusterService = clusterService;
         this.loza = loza;
         this.metastore = metastore;
@@ -57,7 +52,6 @@ class Node implements AutoCloseable {
     }
 
     CompletableFuture<Void> startAsync() {
-        vault.start();
         clusterService.start();
         loza.start();
         metastore.start();
@@ -71,7 +65,7 @@ class Node implements AutoCloseable {
 
     @Override
     public void close() throws Exception {
-        List<IgniteComponent> igniteComponents = List.of(placementDriverManager, metastore, loza, clusterService, vault);
+        List<IgniteComponent> igniteComponents = List.of(placementDriverManager, metastore, loza, clusterService);
 
         IgniteUtils.closeAll(Stream.concat(
                 igniteComponents.stream().map(component -> component::beforeNodeStop),
diff --git a/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/PlacementDriverManagerTest.java b/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/PlacementDriverManagerTest.java
index 89fc69306d..750d78b9b7 100644
--- a/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/PlacementDriverManagerTest.java
+++ b/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/PlacementDriverManagerTest.java
@@ -80,8 +80,6 @@ import org.apache.ignite.internal.replicator.TablePartitionId;
 import org.apache.ignite.internal.testframework.WithSystemProperty;
 import org.apache.ignite.internal.util.ByteUtils;
 import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.persistence.PersistentVaultService;
 import org.apache.ignite.network.ClusterNode;
 import org.apache.ignite.network.ClusterService;
 import org.apache.ignite.network.NetworkAddress;
@@ -111,8 +109,6 @@ public class PlacementDriverManagerTest extends BasePlacementDriverTest {
 
     private HybridClock nodeClock = new HybridClockImpl();
 
-    private VaultManager vaultManager;
-
     private ClusterService clusterService;
 
     private LogicalTopologyServiceTestImpl logicalTopologyService;
@@ -152,8 +148,6 @@ public class PlacementDriverManagerTest extends BasePlacementDriverTest {
     }
 
     private void startPlacementDriverManager() {
-        vaultManager = new VaultManager(new PersistentVaultService(testNodeName(testInfo, PORT), workDir.resolve("vault")));
-
         var nodeFinder = new StaticNodeFinder(Collections.singletonList(new NetworkAddress("localhost", PORT)));
 
         clusterService = ClusterServiceTestUtils.clusterService(testInfo, PORT, nodeFinder);
@@ -192,7 +186,6 @@ public class PlacementDriverManagerTest extends BasePlacementDriverTest {
         var storage = new SimpleInMemoryKeyValueStorage(nodeName);
 
         metaStorageManager = new MetaStorageManagerImpl(
-                vaultManager,
                 clusterService,
                 cmgManager,
                 logicalTopologyService,
@@ -215,7 +208,6 @@ public class PlacementDriverManagerTest extends BasePlacementDriverTest {
                 nodeClock
         );
 
-        vaultManager.start();
         clusterService.start();
         anotherClusterService.start();
         raftManager.start();
@@ -270,8 +262,7 @@ public class PlacementDriverManagerTest extends BasePlacementDriverTest {
                 metaStorageManager,
                 raftManager,
                 clusterService,
-                anotherClusterService,
-                vaultManager
+                anotherClusterService
         );
 
         IgniteUtils.closeAll(Stream.concat(
diff --git a/modules/placement-driver/src/test/java/org/apache/ignite/internal/placementdriver/PlacementDriverTest.java b/modules/placement-driver/src/test/java/org/apache/ignite/internal/placementdriver/PlacementDriverTest.java
index 231c645518..d1f8107e7a 100644
--- a/modules/placement-driver/src/test/java/org/apache/ignite/internal/placementdriver/PlacementDriverTest.java
+++ b/modules/placement-driver/src/test/java/org/apache/ignite/internal/placementdriver/PlacementDriverTest.java
@@ -59,8 +59,6 @@ import org.apache.ignite.internal.replicator.TablePartitionId;
 import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
 import org.apache.ignite.internal.util.IgniteUtils;
 import org.apache.ignite.internal.util.PendingComparableValuesTracker;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.jetbrains.annotations.Nullable;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
@@ -112,8 +110,6 @@ public class PlacementDriverTest extends BaseIgniteAbstractTest {
 
     private static final int AWAIT_PRIMARY_REPLICA_TIMEOUT = 10;
 
-    private VaultManager vault;
-
     private MetaStorageManager metastore;
 
     private PendingComparableValuesTracker<Long, Void> revisionTracker;
@@ -122,9 +118,7 @@ public class PlacementDriverTest extends BaseIgniteAbstractTest {
 
     @BeforeEach
     void setUp() {
-        vault = new VaultManager(new InMemoryVaultService());
-
-        metastore = StandaloneMetaStorageManager.create(vault);
+        metastore = StandaloneMetaStorageManager.create();
 
         revisionTracker = new PendingComparableValuesTracker<>(-1L);
 
@@ -136,7 +130,6 @@ public class PlacementDriverTest extends BaseIgniteAbstractTest {
             return nullCompletedFuture();
         });
 
-        vault.start();
         metastore.start();
 
         CompletableFuture<Long> recoveryFinishedFuture = metastore.recoveryFinishedFuture();
@@ -152,8 +145,7 @@ public class PlacementDriverTest extends BaseIgniteAbstractTest {
     void tearDown() throws Exception {
         IgniteUtils.closeAll(
                 placementDriver == null ? null : placementDriver::stopTrack,
-                metastore == null ? null : metastore::stop,
-                vault == null ? null : vault::stop
+                metastore == null ? null : metastore::stop
         );
     }
 
diff --git a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/ItDistributedConfigurationPropertiesTest.java b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/ItDistributedConfigurationPropertiesTest.java
index 67528ef82e..e4f2deb576 100644
--- a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/ItDistributedConfigurationPropertiesTest.java
+++ b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/ItDistributedConfigurationPropertiesTest.java
@@ -185,7 +185,6 @@ public class ItDistributedConfigurationPropertiesTest extends BaseIgniteAbstract
             );
 
             metaStorageManager = new MetaStorageManagerImpl(
-                    vaultManager,
                     clusterService,
                     cmgManager,
                     logicalTopologyService,
diff --git a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/storage/ItDistributedConfigurationStorageTest.java b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/storage/ItDistributedConfigurationStorageTest.java
index b4ba1fae03..457a057e13 100644
--- a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/storage/ItDistributedConfigurationStorageTest.java
+++ b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/storage/ItDistributedConfigurationStorageTest.java
@@ -158,7 +158,6 @@ public class ItDistributedConfigurationStorageTest extends BaseIgniteAbstractTes
             );
 
             metaStorageManager = new MetaStorageManagerImpl(
-                    vaultManager,
                     clusterService,
                     cmgManager,
                     logicalTopologyService,
diff --git a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/runner/app/ItIgniteNodeRestartTest.java b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/runner/app/ItIgniteNodeRestartTest.java
index 51b482171a..fcb7d4e609 100644
--- a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/runner/app/ItIgniteNodeRestartTest.java
+++ b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/runner/app/ItIgniteNodeRestartTest.java
@@ -301,7 +301,6 @@ public class ItIgniteNodeRestartTest extends BaseIgniteRestartTest {
         );
 
         var metaStorageMgr = new MetaStorageManagerImpl(
-                vault,
                 clusterSvc,
                 cmgManager,
                 logicalTopologyService,
@@ -400,7 +399,6 @@ public class ItIgniteNodeRestartTest extends BaseIgniteRestartTest {
                 registry,
                 metaStorageMgr,
                 logicalTopologyService,
-                vault,
                 catalogManager
         );
 
diff --git a/modules/runner/src/main/java/org/apache/ignite/internal/app/IgniteImpl.java b/modules/runner/src/main/java/org/apache/ignite/internal/app/IgniteImpl.java
index 0033e7a0ae..6afc21aa95 100644
--- a/modules/runner/src/main/java/org/apache/ignite/internal/app/IgniteImpl.java
+++ b/modules/runner/src/main/java/org/apache/ignite/internal/app/IgniteImpl.java
@@ -458,7 +458,6 @@ public class IgniteImpl implements Ignite {
         );
 
         metaStorageMgr = new MetaStorageManagerImpl(
-                vaultMgr,
                 clusterSvc,
                 cmgMgr,
                 logicalTopologyService,
@@ -568,7 +567,6 @@ public class IgniteImpl implements Ignite {
                 registry,
                 metaStorageMgr,
                 logicalTopologyService,
-                vaultMgr,
                 catalogManager
         );
 
diff --git a/modules/schema/src/test/java/org/apache/ignite/internal/schema/SchemaManagerTest.java b/modules/schema/src/test/java/org/apache/ignite/internal/schema/SchemaManagerTest.java
index aa769bd006..dda97ea2ba 100644
--- a/modules/schema/src/test/java/org/apache/ignite/internal/schema/SchemaManagerTest.java
+++ b/modules/schema/src/test/java/org/apache/ignite/internal/schema/SchemaManagerTest.java
@@ -56,8 +56,6 @@ import org.apache.ignite.internal.metastorage.MetaStorageManager;
 import org.apache.ignite.internal.metastorage.impl.StandaloneMetaStorageManager;
 import org.apache.ignite.internal.metastorage.server.SimpleInMemoryKeyValueStorage;
 import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
-import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.apache.ignite.sql.ColumnType;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
@@ -87,8 +85,6 @@ class SchemaManagerTest extends BaseIgniteAbstractTest {
     @Mock
     private CatalogService catalogService;
 
-    private VaultManager vaultManager;
-
     private MetaStorageManager metaStorageManager;
 
     private final SimpleInMemoryKeyValueStorage metaStorageKvStorage = new SimpleInMemoryKeyValueStorage("test");
@@ -102,10 +98,7 @@ class SchemaManagerTest extends BaseIgniteAbstractTest {
 
     @BeforeEach
     void setUp() {
-        vaultManager = new VaultManager(new InMemoryVaultService());
-        vaultManager.start();
-
-        metaStorageManager = spy(StandaloneMetaStorageManager.create(vaultManager, metaStorageKvStorage));
+        metaStorageManager = spy(StandaloneMetaStorageManager.create(metaStorageKvStorage));
         metaStorageManager.start();
 
         doAnswer(invocation -> {
@@ -128,7 +121,6 @@ class SchemaManagerTest extends BaseIgniteAbstractTest {
     void tearDown() throws Exception {
         schemaManager.stop();
         metaStorageManager.stop();
-        vaultManager.stop();
     }
 
     private void createSomeTable() {
diff --git a/modules/table/src/integrationTest/java/org/apache/ignite/internal/rebalance/ItRebalanceDistributedTest.java b/modules/table/src/integrationTest/java/org/apache/ignite/internal/rebalance/ItRebalanceDistributedTest.java
index 850d689df6..14d4f4e08a 100644
--- a/modules/table/src/integrationTest/java/org/apache/ignite/internal/rebalance/ItRebalanceDistributedTest.java
+++ b/modules/table/src/integrationTest/java/org/apache/ignite/internal/rebalance/ItRebalanceDistributedTest.java
@@ -934,7 +934,6 @@ public class ItRebalanceDistributedTest extends BaseIgniteAbstractTest {
             );
 
             metaStorageManager = new MetaStorageManagerImpl(
-                    vaultManager,
                     clusterService,
                     cmgManager,
                     logicalTopologyService,
@@ -1035,7 +1034,6 @@ public class ItRebalanceDistributedTest extends BaseIgniteAbstractTest {
                     registry,
                     metaStorageManager,
                     logicalTopologyService,
-                    vaultManager,
                     catalogManager
             );
 
diff --git a/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/TableManagerTest.java b/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/TableManagerTest.java
index 629e1451c0..8afa0cb9bb 100644
--- a/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/TableManagerTest.java
+++ b/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/TableManagerTest.java
@@ -116,7 +116,6 @@ import org.apache.ignite.internal.tx.storage.state.TxStateTableStorage;
 import org.apache.ignite.internal.util.CursorUtils;
 import org.apache.ignite.internal.util.IgniteUtils;
 import org.apache.ignite.internal.vault.VaultManager;
-import org.apache.ignite.internal.vault.inmemory.InMemoryVaultService;
 import org.apache.ignite.network.ClusterNode;
 import org.apache.ignite.network.ClusterNodeImpl;
 import org.apache.ignite.network.ClusterService;
@@ -223,9 +222,6 @@ public class TableManagerTest extends IgniteAbstractTest {
     /** Hybrid clock. */
     private final HybridClock clock = new HybridClockImpl();
 
-    /** Catalog vault. */
-    private VaultManager catalogVault;
-
     /** Catalog metastore. */
     private MetaStorageManager catalogMetastore;
 
@@ -236,11 +232,9 @@ public class TableManagerTest extends IgniteAbstractTest {
 
     @BeforeEach
     void before() throws NodeStoppingException {
-        catalogVault = new VaultManager(new InMemoryVaultService());
-        catalogMetastore = StandaloneMetaStorageManager.create(catalogVault, new SimpleInMemoryKeyValueStorage(NODE_NAME));
+        catalogMetastore = StandaloneMetaStorageManager.create(new SimpleInMemoryKeyValueStorage(NODE_NAME));
         catalogManager = CatalogTestUtils.createTestCatalogManager(NODE_NAME, clock, catalogMetastore);
 
-        catalogVault.start();
         catalogMetastore.start();
         catalogManager.start();
 
@@ -287,7 +281,6 @@ public class TableManagerTest extends IgniteAbstractTest {
                 sm == null ? null : sm::stop,
                 catalogManager == null ? null : catalogManager::stop,
                 catalogMetastore == null ? null : catalogMetastore::stop,
-                catalogVault == null ? null : catalogVault::stop,
                 partitionOperationsExecutor == null ? null
                         : () -> IgniteUtils.shutdownAndAwaitTermination(partitionOperationsExecutor, 10, TimeUnit.SECONDS)
         );