void doAfterCompletionCommit() {
    final long opStart = statisticsClock.getTime();
    try {
      Assert.assertTrue(locks != null,
          "Gemfire Transaction afterCompletion called with illegal state.");
      try {
        commit();
        saveTXCommitMessageForClientFailover();
      } catch (CommitConflictException error) {
        Assert.assertTrue(false, "Gemfire Transaction " + getTransactionId()
            + " afterCompletion failed.due to CommitConflictException: " + error);
      }
      proxy.getTxMgr().noteCommitSuccess(opStart, jtaLifeTime, this);
      locks = null;

    } catch (InternalGemFireError error) {
      throw new TransactionException(error);
    }
  }
Used to keep track of the region and key associated with a TXEntryState. Also used to sort the
entries into the order in which they will be applied.

@since GemFire 5.7
geode-core/src/main/java/org/apache/geode/internal/cache/TXState.java