-
Lakshmi Narayanan Sreethar authored
The original transactions's connection flags in ApiConnectRec are saved in the IndexOperation before executing so that they can be restored after execution. This is to ensure that any subsequent FK triggers run with the original transaction's flag. But the saved flags in the IndexOperations are not reset when the IndexOperation is finally released. Due to this any subsequent transaction that uses the same IndexOperation reads the dirty saved flags and produce inconsistent results. This patch fixes that by resetting the saved flags when the indexOperation is released. This patch also fixes another similar issue in the ApiConnectRecord. When a transaction is newly started, the ApiConnectRecord has to be initialised. But during the execution of the TCINDXREQ signal, this was not being done properly. Due to this, a transaction could read the dirty flags from the previous transaction and return inconsistent results. This is fixed by properly initialising the ApiConnectRecord.
Lakshmi Narayanan Sreethar authoredThe original transactions's connection flags in ApiConnectRec are saved in the IndexOperation before executing so that they can be restored after execution. This is to ensure that any subsequent FK triggers run with the original transaction's flag. But the saved flags in the IndexOperations are not reset when the IndexOperation is finally released. Due to this any subsequent transaction that uses the same IndexOperation reads the dirty saved flags and produce inconsistent results. This patch fixes that by resetting the saved flags when the indexOperation is released. This patch also fixes another similar issue in the ApiConnectRecord. When a transaction is newly started, the ApiConnectRecord has to be initialised. But during the execution of the TCINDXREQ signal, this was not being done properly. Due to this, a transaction could read the dirty flags from the previous transaction and return inconsistent results. This is fixed by properly initialising the ApiConnectRecord.
Loading