* don't make index selectivity estimate requests fail inside cluster
transactions
* improve logging, and don't make transactions more robust
don't make transaction operations fail immediately if they cannot
acquire the transaction lock instantly. it is somewhat expected that
sometimes the garbage collection comes in-between and acquires locks
for a short amount of time - this should not lead to failures in
other operations on the transaction
* fix a race for transaction leases
* fix test failure
* moved functionality into shutdownExecute
* avoid lookup plus sequent insert/emplace for the fast path
additionally add transaction id and more location information to
error messages which were previously undistinguishable
* Revert "avoid lookup plus sequent insert/emplace for the fast path"
This reverts commit 11b27c338940a9fc203dbdb35713845c407a902d.
* revert most stuff, only leave improved logging there
* added missing function db._transactions(), and equivalent REST API route
GET /_api/transaction
* updated
* use performRequests
* updated CHANGELOG
* added tests, fixed segfault
* use throwNotRunning
* use read transactions for testing (mmfiles blocks with multiple write
transactions on the same collection)