use of com.palantir.paxos.PaxosAcceptorState in project atlasdb by palantir.
the class TimeLockCorruptionTestSetup method createLogComponentsForServer.
private static StateLogComponents createLogComponentsForServer(DataSource dataSource, NamespaceAndUseCase namespaceAndUseCase) {
Client client = namespaceAndUseCase.namespace();
String paxosUseCase = namespaceAndUseCase.useCase();
PaxosStateLog<PaxosValue> learnerLog = SqlitePaxosStateLog.create(ImmutableNamespaceAndUseCase.of(client, LearnerUseCase.createLearnerUseCase(paxosUseCase).value()), dataSource);
PaxosStateLog<PaxosAcceptorState> acceptorLog = SqlitePaxosStateLog.create(ImmutableNamespaceAndUseCase.of(client, AcceptorUseCase.createAcceptorUseCase(paxosUseCase).value()), dataSource);
return StateLogComponents.builder().dataSource(dataSource).learnerLog(learnerLog).acceptorLog(acceptorLog).build();
}
use of com.palantir.paxos.PaxosAcceptorState in project atlasdb by palantir.
the class PaxosSerializationTestUtils method writeAcceptorStateForLogAndRound.
public static PaxosAcceptorState writeAcceptorStateForLogAndRound(PaxosStateLog<PaxosAcceptorState> log, long round, Optional<PaxosValue> paxosValue) {
PaxosAcceptorState acceptorState = getAcceptorStateForRound(round, paxosValue);
log.writeRound(round, acceptorState);
return acceptorState;
}
use of com.palantir.paxos.PaxosAcceptorState in project atlasdb by palantir.
the class PaxosSerializationTestUtils method getAcceptorStateForRound.
private static PaxosAcceptorState getAcceptorStateForRound(long round, Optional<PaxosValue> paxosValue) {
PaxosProposalId pid = new PaxosProposalId(round, UUID.randomUUID().toString());
PaxosAcceptorState acceptorState = PaxosAcceptorState.newState(pid);
return paxosValue.map(val -> acceptorState.withState(pid, pid, val)).orElse(acceptorState);
}
Aggregations