assertEquals(cr1.startTimestamp, ctr2.startTimestamp);
//
// Half Aborted Transaction Report
//
AbortedTransactionReport atr1 = clientHandler.receiveMessage(AbortedTransactionReport.class);
assertEquals(tr2.timestamp, atr1.startTimestamp);
clientHandler.receiveMessage(TimestampResponse.class);
secondClientHandler.sendMessage(new TimestampRequest());
CommittedTransactionReport ctr3 = secondClientHandler.receiveMessage(CommittedTransactionReport.class);
assertEquals(cr1.commitTimestamp, ctr3.commitTimestamp);
assertEquals(cr1.startTimestamp, ctr3.startTimestamp);
//
// Half Aborted Transaction Report
//
AbortedTransactionReport atr2 = secondClientHandler.receiveMessage(AbortedTransactionReport.class);
assertEquals(tr2.timestamp, atr2.startTimestamp);
secondClientHandler.receiveMessage(TimestampResponse.class);
secondClientHandler.sendMessage(new FullAbortRequest(tr2.timestamp));