Bug #4149
BlockManager and TransactionManager handle TransactionType.NONE incorrectly
0%
Related issues
History
#1 Updated by Greg Shah about 7 years ago
- Related to Bug #4035: newly created record is not flushed at the right time added
#2 Updated by Greg Shah about 7 years ago
There are 3 major issues that need attention:
TransactionManagerdoes not protect many registrations or notifications ofCommitables,FinalizablesorUndoables.BlockManagerdoes not protect processing related to these notifications (e.g.tm.processValidate()).- Many
Scopableshave no protection for processing based on block types or transaction types (someScopablesdo have protection).
The result of this is that DO blocks that are implemented with BlockManager support are often mis-processed as sub-transaction blocks instead of TransactionType.NONE. This is potentially resulting in incorrect transaction processing behavior. It is also a place where we are doing more processing than is necessary which is a potential performance improvement.
#3 Updated by Greg Shah over 5 years ago
- Related to Support #4032: block/transaction processing context-local and other performance improvements added
#4 Updated by Constantin Asofiei almost 4 years ago
Finalizable.entry() is deprecated and needs to be removed, together with TransactionManager.processEntry() - I can't find any Finalizable implementation where entry() is implemented.
#5 Updated by Constantin Asofiei over 3 years ago
Constantin Asofiei wrote:
Finalizable.entry()is deprecated and needs to be removed, together withTransactionManager.processEntry()- I can't find any Finalizable implementation whereentry()is implemented.
Greg, do you recall why Finalizable.entry was added? I can't find any implementation, and I'd like to remove it.
#6 Updated by Greg Shah over 3 years ago
Constantin Asofiei wrote:
Constantin Asofiei wrote:
Finalizable.entry()is deprecated and needs to be removed, together withTransactionManager.processEntry()- I can't find any Finalizable implementation whereentry()is implemented.Greg, do you recall why
Finalizable.entrywas added? I can't find any implementation, and I'd like to remove it.
I added it in revision 11347.1.75 in preparation for Eric's work with the SavepointManager (and UNDO rework) in revision 11347.1.79. If I recall correctly, we were missing a mechansim that could be used to snapshot things at the same point in processing as can be done with iterate().