8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-23 18:43:03 +01:00

Fixed bug CORE-3525 : Autonomous transactions should not inherit run-time flags of "parent" transaction

This commit is contained in:
hvlad 2011-06-16 08:58:13 +00:00
parent a1a20777fa
commit eb41aaa8d5
2 changed files with 5 additions and 1 deletions

View File

@ -1600,7 +1600,7 @@ jrd_tra* TRA_start(thread_db* tdbb, ULONG flags, SSHORT lock_timeout, Jrd::jrd_t
Jrd::ContextPoolHolder context(tdbb, pool);
jrd_tra* const temp = jrd_tra::create(pool, attachment, outer);
temp->tra_flags = flags;
temp->tra_flags = flags & TRA_OPTIONS_MASK;
temp->tra_lock_timeout = lock_timeout;
jrd_tra* transaction = NULL;

View File

@ -359,6 +359,10 @@ const ULONG TRA_cancel_request = 0x10000L; // cancel active request, if any
const ULONG TRA_precommitted = 0x20000L; // transaction committed at startup
const ULONG TRA_own_interface = 0x40000L; // tra_interface was created for internal needs
// flags derived from TPB, see also transaction_options() at tra.cpp
const ULONG TRA_OPTIONS_MASK = (TRA_degree3 | TRA_readonly | TRA_ignore_limbo | TRA_read_committed |
TRA_autocommit | TRA_rec_version | TRA_no_auto_undo | TRA_restart_requests);
const int TRA_MASK = 3;
//const int TRA_BITS_PER_TRANS = 2;
//const int TRA_TRANS_PER_BYTE = 4;