executor.submit(ImpersonationUtils.createImpersonatingCallable(impersonator, namespaceMeta, callable)); futures.put(tableId, future); } else if (isStateStoreTable(tableId)) { executor.submit(ImpersonationUtils.createImpersonatingCallable(impersonator, namespaceMeta, callable)); futures.put(tableId, future);
private Map<String, Future<?>> upgradeUserTables(final NamespaceMeta namespaceMeta, final ExecutorService executor, final HBaseDDLExecutor ddlExecutor) throws Exception { Map<String, Future<?>> futures = new HashMap<>(); String hBaseNamespace = hBaseTableUtil.getHBaseNamespace(namespaceMeta); try (HBaseAdmin hAdmin = new HBaseAdmin(hConf)) { for (final HTableDescriptor desc : hAdmin.listTableDescriptorsByNamespace(HTableNameConverter.encodeHBaseEntity(hBaseNamespace))) { Callable<Void> callable = new Callable<Void>() { @Override public Void call() throws Exception { if (isCDAPUserTable(desc)) { upgradeUserTable(desc); } else if (isStreamOrQueueTable(desc.getNameAsString())) { updateTableDesc(desc, ddlExecutor); } return null; } }; Future<?> future = executor.submit(ImpersonationUtils.createImpersonatingCallable(impersonator, namespaceMeta, callable)); futures.put(desc.getNameAsString(), future); } } return futures; }