private TransactionManagerConsistencyResult indeterminateResultForException(Exception ex) { return ImmutableTransactionManagerConsistencyResult.builder() .consistencyState(TransactionManagerConsistencyResult.ConsistencyState.INDETERMINATE) .reasonForInconsistency(ex) .build(); }
public static LeaderElectionService create(MetricsManager metricsManager, Consumer<Object> env, LeaderConfig config, Supplier<LeaderRuntimeConfig> runtime, String userAgent) { return createAndRegisterLocalServices(metricsManager, env, config, runtime, userAgent).leaderElectionService(); }
/** * Creates a LeaderElectionService using the supplied configuration and registers appropriate endpoints for that * service. */ public static LeaderElectionService create(MetricsManager metricsManager, Consumer<Object> env, LeaderConfig config, Supplier<LeaderRuntimeConfig> runtime) { return create(metricsManager, env, config, runtime, UserAgents.DEFAULT_USER_AGENT); }
@SuppressWarnings("OptionalUsedAsFieldOrParameterType") private TransactionManager createTransactionManager(AtlasDbConfig config, Optional<AtlasDbRuntimeConfig> atlasDbRuntimeConfigOptional, Environment environment, TaggedMetricRegistry taggedMetricRegistry) { return TransactionManagers.builder() .config(config) .userAgent("ete test") .globalMetricsRegistry(environment.metrics()) .globalTaggedMetricRegistry(taggedMetricRegistry) .registrar(environment.jersey()::register) .addAllSchemas(ETE_SCHEMAS) .runtimeConfigSupplier(() -> atlasDbRuntimeConfigOptional) .build() .serializable(); }
public BenchmarksResource(AtlasDbConfig config) { this.txnManager = TransactionManagers.builder() .config(config) .userAgent(UserAgents.DEFAULT_USER_AGENT) .globalMetricsRegistry(new MetricRegistry()) .globalTaggedMetricRegistry(new DefaultTaggedMetricRegistry()) .addSchemas(BenchmarksSchema.SCHEMA) .allowHiddenTableAccess(true) .runtimeConfigSupplier(Optional::empty) .build().serializable(); }
private static LockAndTimestampServices withRefreshingLockService( LockAndTimestampServices lockAndTimestampServices) { TimeLockClient timeLockClient = TimeLockClient.createDefault(lockAndTimestampServices.timelock()); return ImmutableLockAndTimestampServices.builder() .from(lockAndTimestampServices) .timestamp(new TimelockTimestampServiceAdapter(timeLockClient)) .timelock(timeLockClient) .lock(LockRefreshingLockService.create(lockAndTimestampServices.lock())) .close(timeLockClient::close) .build(); }
private static LockAndTimestampServices withCorroboratingTimestampService( LockAndTimestampServices lockAndTimestampServices) { TimelockService timelockService = TimestampCorroboratingTimelockService .create(lockAndTimestampServices.timelock()); TimestampService corroboratingTimestampService = new TimelockTimestampServiceAdapter(timelockService); return ImmutableLockAndTimestampServices.builder() .from(lockAndTimestampServices) .timelock(timelockService) .timestamp(corroboratingTimestampService) .build(); }
private static LockAndTimestampServices getLockAndTimestampServices( MetricsManager metricsManager, Supplier<ServerListConfig> timelockServerListConfig, String userAgent) { LockService lockService = new ServiceCreator<>(metricsManager, LockService.class, userAgent) .applyDynamic(timelockServerListConfig); TimelockService timelockService = new ServiceCreator<>(metricsManager, TimelockService.class, userAgent) .applyDynamic(timelockServerListConfig); TimestampManagementService timestampManagementService = new ServiceCreator<>(metricsManager, TimestampManagementService.class, userAgent) .applyDynamic(timelockServerListConfig); return ImmutableLockAndTimestampServices.builder() .lock(lockService) .timestamp(new TimelockTimestampServiceAdapter(timelockService)) .timestampManagement(timestampManagementService) .timelock(timelockService) .build(); }
public static LocalPaxosServices createInstrumentedLocalServices(MetricsManager metricsManager, LeaderConfig config, Supplier<LeaderRuntimeConfig> runtime, String userAgent) { Set<String> remoteLeaderUris = Sets.newHashSet(config.leaders()); remoteLeaderUris.remove(config.localServer()); RemotePaxosServerSpec remotePaxosServerSpec = ImmutableRemotePaxosServerSpec.builder() .remoteLeaderUris(remoteLeaderUris) .remoteAcceptorUris(remoteLeaderUris) .remoteLearnerUris(remoteLeaderUris) .build(); return createInstrumentedLocalServices(metricsManager, config, runtime, remotePaxosServerSpec, userAgent); }
@Override public TransactionManagers.LockAndTimestampServices provideLockAndTimestampServices( MetricsManager metricsManager, ServicesConfig config) { LockService lockService = LockServiceImpl.create(); return ImmutableLockAndTimestampServices.builder() .lock(LockServiceImpl.create()) .timestamp(timestampService) .timestampManagement(timestampService) .timelock(new LegacyTimelockService(timestampService, lockService, TransactionManagers.LOCK_CLIENT)) .build(); } }
public static LocalPaxosServices createAndRegisterLocalServices( MetricsManager metricsManager, Consumer<Object> env, LeaderConfig config, Supplier<LeaderRuntimeConfig> runtime, String userAgent) { LocalPaxosServices localPaxosServices = createInstrumentedLocalServices( metricsManager, config, runtime, userAgent); env.accept(localPaxosServices.ourAcceptor()); env.accept(localPaxosServices.ourLearner()); env.accept(localPaxosServices.pingableLeader()); env.accept(new NotCurrentLeaderExceptionMapper()); return localPaxosServices; }
private static TimestampManagementService createRemoteManagementService( MetricsManager metricsManager, Supplier<ServerListConfig> serverListConfig, String userAgent) { return new ServiceCreator<>(metricsManager, TimestampManagementService.class, userAgent) .applyDynamic(serverListConfig); }
public static TransactionManagersInitializer createInitialTables( KeyValueService keyValueService, Set<Schema> schemas, boolean initializeAsync) { TransactionManagersInitializer initializer = new TransactionManagersInitializer(keyValueService, schemas); initializer.initialize(initializeAsync); return initializer; }
public T applyDynamic(Supplier<ServerListConfig> input) { return createService( metricsManager, input, SslSocketFactories::createTrustContext, ServiceCreator::createProxySelector, serviceClass, userAgent); }
@Override public T apply(ServerListConfig input) { return applyDynamic(() -> input); }
public static ImmutableTransactionManagers.ConfigBuildStage builder() { return ImmutableTransactionManagers.builder(); }
DeprecatedTablesCleaner(Set<Schema> schemas) { deprecatedTables = deprecatedTables(schemas); }
private void verifyUserAgentOnRawTimestampAndLockRequests() { verifyUserAgentOnTimestampAndLockRequests(TIMESTAMP_PATH, LOCK_PATH); }
/** * Create a {@link TransactionManager} backed by an * {@link com.palantir.atlasdb.keyvalue.impl.InMemoryKeyValueService}. This should be used for testing * purposes only. */ public static TransactionManager createInMemory(Set<Schema> schemas) { AtlasDbConfig config = ImmutableAtlasDbConfig.builder().keyValueService(new InMemoryAtlasDbConfig()).build(); return builder() .config(config) .userAgent(UserAgents.DEFAULT_USER_AGENT) .globalMetricsRegistry(new MetricRegistry()) .globalTaggedMetricRegistry(DefaultTaggedMetricRegistry.getDefault()) .addAllSchemas(schemas) .build() .serializable(); }
private static LockAndTimestampServices withMetrics( MetricsManager metricsManager, LockAndTimestampServices lockAndTimestampServices) { TimelockService timelockServiceWithBatching = lockAndTimestampServices.timelock(); TimelockService instrumentedTimelockService = new InstrumentedTimelockService( timelockServiceWithBatching, metricsManager.getRegistry()); return ImmutableLockAndTimestampServices.builder() .from(lockAndTimestampServices) .timestamp(new TimelockTimestampServiceAdapter(instrumentedTimelockService)) .timelock(instrumentedTimelockService) .build(); }