@Test public void testRemoveRegionInfoFromMeta() throws Exception { ResultScanner mockedRsTables = Mockito.mock(ResultScanner.class); List<Cell> cells = new ArrayList<>(); cells.add(createCellForTableState(TableName.valueOf("test-tbl"))); Result result = Result.create(cells); ResultScanner mockedRsRegions = Mockito.mock(ResultScanner.class); createRegionInMeta(mockedRsRegions); when(this.mockedTable.getScanner(any(Scan.class))). thenReturn(mockedRsTables). thenReturn(mockedRsRegions); when(mockedRsTables.next()).thenReturn(result,(Result)null); List<String> tableList = new ArrayList<>(); tableList.add("default:test-tbl"); fixer.removeExtraRegionsFromMetaForTables(tableList); Mockito.verify(this.mockedTable).delete(anyList()); }
public List<Future<List<String>>> removeExtraRegionsFromMetaForTables( List<String> nameSpaceOrTable) throws IOException { if(nameSpaceOrTable.size()>0) { InternalMetaChecker<RegionInfo> extraChecker = new InternalMetaChecker<>(); return extraChecker.processRegionsMetaCleanup(this::reportTablesExtraRegions, this::deleteAllRegions, nameSpaceOrTable); } return null; }
FsRegionsMetaRecoverer implements Closeable { public List<Future<List<String>>> removeExtraRegionsFromMetaForTables( List<String> nameSpaceOrTable) throws IOException { if(nameSpaceOrTable.size()>0) { InternalMetaChecker<RegionInfo> extraChecker = new InternalMetaChecker<>(); return extraChecker.processRegionsMetaCleanup(this::reportTablesExtraRegions, this::deleteAllRegions, nameSpaceOrTable); } return null; } }
FsRegionsMetaRecoverer implements Closeable { public List<Future<List<String>>> removeExtraRegionsFromMetaForTables( List<String> nameSpaceOrTable) throws IOException { if(nameSpaceOrTable.size()>0) { InternalMetaChecker<RegionInfo> extraChecker = new InternalMetaChecker<>(); return extraChecker.processRegionsMetaCleanup(this::reportTablesExtraRegions, this::deleteAllRegions, nameSpaceOrTable); } return null; } FsRegionsMetaRecoverer(Configuration configuration);   FsRegionsMetaRecoverer(Configuration configuration, Connection connection, FileSystem fileSystem); }
FsRegionsMetaRecoverer implements Closeable { public List<Future<List<String>>> removeExtraRegionsFromMetaForTables( List<String> nameSpaceOrTable) throws IOException { if(nameSpaceOrTable.size()>0) { InternalMetaChecker<RegionInfo> extraChecker = new InternalMetaChecker<>(); return extraChecker.processRegionsMetaCleanup(this::reportTablesExtraRegions, this::deleteAllRegions, nameSpaceOrTable); } return null; } FsRegionsMetaRecoverer(Configuration configuration);   FsRegionsMetaRecoverer(Configuration configuration, Connection connection, FileSystem fileSystem); Map<TableName,List<Path>> reportTablesMissingRegions(final List<String> namespacesOrTables); Map<TableName,List<RegionInfo>> reportTablesExtraRegions(final List<String> namespacesOrTables); List<Future<List<String>>> addMissingRegionsInMetaForTables(
      List<String> nameSpaceOrTable); List<Future<List<String>>> removeExtraRegionsFromMetaForTables(
    List<String> nameSpaceOrTable); @Override void close(); }
FsRegionsMetaRecoverer implements Closeable { public List<Future<List<String>>> removeExtraRegionsFromMetaForTables( List<String> nameSpaceOrTable) throws IOException { if(nameSpaceOrTable.size()>0) { InternalMetaChecker<RegionInfo> extraChecker = new InternalMetaChecker<>(); return extraChecker.processRegionsMetaCleanup(this::reportTablesExtraRegions, this::deleteAllRegions, nameSpaceOrTable); } return null; } FsRegionsMetaRecoverer(Configuration configuration);   FsRegionsMetaRecoverer(Configuration configuration, Connection connection, FileSystem fileSystem); Map<TableName,List<Path>> reportTablesMissingRegions(final List<String> namespacesOrTables); Map<TableName,List<RegionInfo>> reportTablesExtraRegions(final List<String> namespacesOrTables); List<Future<List<String>>> addMissingRegionsInMetaForTables(
      List<String> nameSpaceOrTable); List<Future<List<String>>> removeExtraRegionsFromMetaForTables(
    List<String> nameSpaceOrTable); @Override void close();  }