Search in sources :

Example 1 with DefaultFileSystemMaster

use of alluxio.master.file.DefaultFileSystemMaster in project alluxio by Alluxio.

the class BlockMasterIntegrityIntegrationTest method removeFileMetadata.

private void removeFileMetadata(AlluxioURI uri) throws Exception {
    FileSystemMaster fsm = mCluster.getLocalAlluxioMaster().getMasterProcess().getMaster(FileSystemMaster.class);
    InodeTree tree = Whitebox.getInternalState(fsm, "mInodeTree");
    LockedInodePath path = tree.lockInodePath(uri, LockPattern.WRITE_EDGE);
    RpcContext rpcContext = ((DefaultFileSystemMaster) fsm).createRpcContext();
    ((DefaultFileSystemMaster) fsm).deleteInternal(rpcContext, path, DeleteContext.defaults());
    path.close();
    rpcContext.close();
}
Also used : LockedInodePath(alluxio.master.file.meta.LockedInodePath) RpcContext(alluxio.master.file.RpcContext) DefaultFileSystemMaster(alluxio.master.file.DefaultFileSystemMaster) DefaultFileSystemMaster(alluxio.master.file.DefaultFileSystemMaster) FileSystemMaster(alluxio.master.file.FileSystemMaster) InodeTree(alluxio.master.file.meta.InodeTree)

Example 2 with DefaultFileSystemMaster

use of alluxio.master.file.DefaultFileSystemMaster in project alluxio by Alluxio.

the class BackupManagerTest method rocksInodeStoreIteratorNotUsed.

@Test
public void rocksInodeStoreIteratorNotUsed() throws Exception {
    // Prepare some data for the iterator
    List<InodeView> inodes = new ArrayList<>();
    inodes.add(createRootDir(99L));
    inodes.add(createNewFile(100L));
    inodes.add(createNewFile(101L));
    inodes.add(createNewFile(102L));
    // When RocksInodeStore.iterator(), return mock iterator
    RocksInodeStore mockInodeStore = mock(RocksInodeStore.class);
    // Make sure the iterator is not used in the backup operation
    when(mockInodeStore.getCloseableIterator()).thenThrow(new UnsupportedOperationException());
    // When the root inode is asked for, return the directory
    InodeView dir = inodes.get(0);
    when(mockInodeStore.get(eq(0L))).thenReturn(Optional.of(new InodeDirectory((InodeDirectoryView) dir)));
    CoreMasterContext masterContext = MasterTestUtils.testMasterContext(new NoopJournalSystem(), null, () -> new HeapBlockStore(), x -> mockInodeStore);
    mMetricsMaster = new MetricsMasterFactory().create(mRegistry, masterContext);
    mBlockMaster = new DefaultBlockMaster(mMetricsMaster, masterContext, mClock, ExecutorServiceFactories.constantExecutorServiceFactory(mExecutorService));
    mRegistry.add(BlockMaster.class, mBlockMaster);
    // Prepare the FileSystemMaster for the backup operation
    FileSystemMaster fsMaster = new DefaultFileSystemMaster(mBlockMaster, masterContext, ExecutorServiceFactories.constantExecutorServiceFactory(mExecutorService));
    mRegistry.add(FileSystemMaster.class, fsMaster);
    mRegistry.start(true);
    // Finish backup operation
    BackupManager manager = new BackupManager(mRegistry);
    File backupDir = AlluxioTestDirectory.createTemporaryDirectory("backup-dir");
    File backupFile = new File(backupDir, "1.backup");
    AtomicLong counter = new AtomicLong(0L);
    // No exception means the RocksInodeStore iterator is not used
    manager.backup(new FileOutputStream(backupFile), counter);
}
Also used : RocksInodeStore(alluxio.master.metastore.rocks.RocksInodeStore) InodeView(alluxio.master.file.meta.InodeView) DefaultBlockMaster(alluxio.master.block.DefaultBlockMaster) ArrayList(java.util.ArrayList) HeapBlockStore(alluxio.master.metastore.heap.HeapBlockStore) DefaultFileSystemMaster(alluxio.master.file.DefaultFileSystemMaster) FileSystemMaster(alluxio.master.file.FileSystemMaster) NoopJournalSystem(alluxio.master.journal.noop.NoopJournalSystem) MutableInodeDirectory(alluxio.master.file.meta.MutableInodeDirectory) InodeDirectory(alluxio.master.file.meta.InodeDirectory) AtomicLong(java.util.concurrent.atomic.AtomicLong) DefaultFileSystemMaster(alluxio.master.file.DefaultFileSystemMaster) FileOutputStream(java.io.FileOutputStream) File(java.io.File) MutableInodeFile(alluxio.master.file.meta.MutableInodeFile) MetricsMasterFactory(alluxio.master.metrics.MetricsMasterFactory) Test(org.junit.Test)

Aggregations

DefaultFileSystemMaster (alluxio.master.file.DefaultFileSystemMaster)2 FileSystemMaster (alluxio.master.file.FileSystemMaster)2 DefaultBlockMaster (alluxio.master.block.DefaultBlockMaster)1 RpcContext (alluxio.master.file.RpcContext)1 InodeDirectory (alluxio.master.file.meta.InodeDirectory)1 InodeTree (alluxio.master.file.meta.InodeTree)1 InodeView (alluxio.master.file.meta.InodeView)1 LockedInodePath (alluxio.master.file.meta.LockedInodePath)1 MutableInodeDirectory (alluxio.master.file.meta.MutableInodeDirectory)1 MutableInodeFile (alluxio.master.file.meta.MutableInodeFile)1 NoopJournalSystem (alluxio.master.journal.noop.NoopJournalSystem)1 HeapBlockStore (alluxio.master.metastore.heap.HeapBlockStore)1 RocksInodeStore (alluxio.master.metastore.rocks.RocksInodeStore)1 MetricsMasterFactory (alluxio.master.metrics.MetricsMasterFactory)1 File (java.io.File)1 FileOutputStream (java.io.FileOutputStream)1 ArrayList (java.util.ArrayList)1 AtomicLong (java.util.concurrent.atomic.AtomicLong)1 Test (org.junit.Test)1