use of org.apache.tephra.TransactionManager in project phoenix by apache.
the class BaseTest method setupTxManager.
protected static void setupTxManager() throws SQLException, IOException {
ConnectionInfo connInfo = ConnectionInfo.create(getUrl());
zkClient = ZKClientServices.delegate(ZKClients.reWatchOnExpire(ZKClients.retryOnFailure(ZKClientService.Builder.of(connInfo.getZookeeperConnectionString()).setSessionTimeout(config.getInt(HConstants.ZK_SESSION_TIMEOUT, HConstants.DEFAULT_ZK_SESSION_TIMEOUT)).build(), RetryStrategies.exponentialDelay(500, 2000, TimeUnit.MILLISECONDS))));
zkClient.startAndWait();
DiscoveryService discovery = new ZKDiscoveryService(zkClient);
txManager = new TransactionManager(config, new HDFSTransactionStateStorage(config, new SnapshotCodecProvider(config), new TxMetricsCollector()), new TxMetricsCollector());
txService = new TransactionService(config, zkClient, discovery, Providers.of(txManager));
txService.startAndWait();
}
use of org.apache.tephra.TransactionManager in project cdap by caskdata.
the class HBaseQueueTest method takeTxSnapshot.
/**
* Asks the tx manager to take a snapshot.
*/
private void takeTxSnapshot() throws Exception {
TransactionManager transactionManager = getTransactionManager();
Method doSnapshot = transactionManager.getClass().getDeclaredMethod("doSnapshot", boolean.class);
doSnapshot.setAccessible(true);
doSnapshot.invoke(transactionManager, false);
LOG.info("Read pointer: {}", transactionManager.getCurrentState().getReadPointer());
LOG.info("Snapshot read pointer: {}", transactionManager.getSnapshot().getReadPointer());
}
use of org.apache.tephra.TransactionManager in project cdap by caskdata.
the class InMemoryQueueTest method init.
@BeforeClass
public static void init() throws Exception {
injector = Guice.createInjector(new ConfigModule(), new NonCustomLocationUnitTestModule().getModule(), new DiscoveryRuntimeModule().getInMemoryModules(), new SystemDatasetRuntimeModule().getInMemoryModules(), new AuthorizationTestModule(), new AuthorizationEnforcementModule().getInMemoryModules(), new AuthenticationContextModules().getMasterModule(), new DataSetsModules().getInMemoryModules(), new DataFabricModules().getInMemoryModules(), new TransactionMetricsModule(), new ExploreClientModule(), new ViewAdminModules().getInMemoryModules(), Modules.override(new StreamAdminModules().getInMemoryModules()).with(new AbstractModule() {
@Override
protected void configure() {
// The tests are actually testing stream on queue implementation, hence bind it to the queue implementation
bind(StreamAdmin.class).to(InMemoryStreamAdmin.class);
bind(StreamAdmin.class).annotatedWith(Names.named(StreamAdminModules.NOAUTH_STREAM_ADMIN)).to(InMemoryStreamAdmin.class);
bind(StreamMetaStore.class).to(InMemoryStreamMetaStore.class);
}
}));
// transaction manager is a "service" and must be started
transactionManager = injector.getInstance(TransactionManager.class);
transactionManager.startAndWait();
txSystemClient = injector.getInstance(TransactionSystemClient.class);
queueClientFactory = injector.getInstance(QueueClientFactory.class);
queueAdmin = injector.getInstance(QueueAdmin.class);
executorFactory = injector.getInstance(TransactionExecutorFactory.class);
}
use of org.apache.tephra.TransactionManager in project cdap by caskdata.
the class LevelDBQueueTest method init.
@BeforeClass
public static void init() throws Exception {
CConfiguration conf = CConfiguration.create();
conf.set(Constants.CFG_LOCAL_DATA_DIR, tmpFolder.newFolder().getAbsolutePath());
conf.set(Constants.Dataset.TABLE_PREFIX, "test");
Injector injector = Guice.createInjector(new ConfigModule(conf), new NonCustomLocationUnitTestModule().getModule(), new DiscoveryRuntimeModule().getStandaloneModules(), new AuthorizationTestModule(), new AuthorizationEnforcementModule().getInMemoryModules(), new AuthenticationContextModules().getMasterModule(), new DataSetsModules().getStandaloneModules(), new DataFabricLevelDBModule(), new TransactionMetricsModule());
// transaction manager is a "service" and must be started
transactionManager = injector.getInstance(TransactionManager.class);
transactionManager.startAndWait();
txSystemClient = injector.getInstance(TransactionSystemClient.class);
queueClientFactory = injector.getInstance(QueueClientFactory.class);
queueAdmin = injector.getInstance(QueueAdmin.class);
executorFactory = injector.getInstance(TransactionExecutorFactory.class);
LevelDBTableService.getInstance().clearTables();
}
use of org.apache.tephra.TransactionManager in project cdap by caskdata.
the class TableTest method before.
@Before
public void before() {
Configuration txConf = HBaseConfiguration.create();
TransactionManager txManager = new TransactionManager(txConf);
txManager.startAndWait();
txClient = new InMemoryTxSystemClient(txManager);
}
Aggregations