[NO ISSUE][OTH] Ensure no failures during transaction completion
authorMurtadha Hubail <murtadha.hubail@couchbase.com>
Mon, 14 Feb 2022 23:54:13 +0000 (02:54 +0300)
committerMurtadha Hubail <mhubail@apache.org>
Tue, 15 Feb 2022 21:06:07 +0000 (21:06 +0000)
commit2099f8009596796a9b067480129d9dddf4860ed5
treed9410daaaf358f505368a57cad9853b943d3ae1d
parenta6c858bb541c371bf5530d9caebf31a0b59fb0e9
[NO ISSUE][OTH] Ensure no failures during transaction completion

- user model changes: no
- storage format changes: no
- interface changes: no

Details:

- When completing a transaction, only untouch an index
  if it was successfully touched at the beginning of the
  transaction.
- Log when an expected index is not found and throw an
  exception to avoid an NPE.

Change-Id: Ie0d4879630ae302485d595060dd87a896d151307
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/15288
Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Reviewed-by: Murtadha Hubail <mhubail@apache.org>
Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>
Tested-by: Murtadha Hubail <mhubail@apache.org>
Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/context/BaseOperationTracker.java