[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: (ITS#7515) Nested liblmdb transaction bugs



> Here are some crashes with nested liblmdb transactions.

Fixed in mdb.master, except:

> Can't use a DBI from an aborted child txn, unlike aborted main txn:
> 
> $ ./bug  R[cp]      # Create a named DB and put an item there
> $ ./bug  [[o}g]     # Open that DB in a child, abort, use the DBI
> 40: mdb_get(txn, dbi, &key, &rdata): Invalid argument

Fixing this caused problems and got reverted.
The DBI is available to next non-nested txn:

$ ./bug [[o}}[g] # Open DB in child, abort both txns, use DBI in new txn

-- 
Hallvard