- protected DOMStoreThreePhaseCommitCohort transactionReady(final SnapshotBackedWriteTransaction<TransactionIdentifier> tx,
- final DataTreeModification tree) {
- return new LocalThreePhaseCommitCohort(actorContext, leader, tx, tree) {
- @Override
- protected void transactionAborted(final SnapshotBackedWriteTransaction<TransactionIdentifier> transaction) {
- // No-op
- LOG.debug("Transaction {} aborted", transaction);
- }
+ protected DOMStoreThreePhaseCommitCohort transactionReady(
+ final SnapshotBackedWriteTransaction<TransactionIdentifier> tx, final DataTreeModification tree) {
+ return new LocalThreePhaseCommitCohort(actorContext, leader, tx, tree);
+ }
+
+ @SuppressWarnings({"unchecked", "checkstyle:IllegalCatch"})
+ @Override
+ public LocalThreePhaseCommitCohort onTransactionReady(@Nonnull DOMStoreWriteTransaction tx,
+ @Nullable Exception operationError) {
+ Preconditions.checkArgument(tx instanceof SnapshotBackedWriteTransaction);
+ if (operationError != null) {
+ return new LocalThreePhaseCommitCohort(actorContext, leader,
+ (SnapshotBackedWriteTransaction<TransactionIdentifier>)tx, operationError);
+ }