Transaction-level locks aren't released when transaction exits in tests because of the way we use SAVEPOINTs to simulate transactions in tests.
I'm not sure what the solution here is... do we track and explicitly release the locks? Or provide alternative tools for locking which can tie into our existing transaction simulation?
Either way, until this is solved, we should document this gotcha.
Transaction-level locks aren't released when
transactionexits in tests because of the way we use SAVEPOINTs to simulate transactions in tests.I'm not sure what the solution here is... do we track and explicitly release the locks? Or provide alternative tools for locking which can tie into our existing transaction simulation?
Either way, until this is solved, we should document this gotcha.