Closes #348 Partial implementation of nested transactions for locking purposes. The actual txn (child/grandchild/etc) does all the work, but for locking purposes we only use the parent (oldest ancestor). This should work as expected (with possibly some extra lock overhead) as long as no node has two active (non-aborted non-committed) children simultaneously.
Closes #348
Partial implementation of nested transactions for locking purposes.
The actual txn (child/grandchild/etc) does all the work,
but for locking purposes we only use the parent (oldest ancestor).
This should work as expected (with possibly some extra lock overhead)
as long as no node has two active (non-aborted non-committed) children
simultaneously.

If a node has two children, they are supposed to be able to conflict
with each other (and deadlock/etc).  We are not providing this
conflict behavior between siblings.

We do support arbitrarily deep nested txns, so long as it is
a linked list instead of a general tree.

git-svn-id: 4b2652e19d8125fd9d24eff55f31fd1beb5a42e7@2284 c7de825b-a66e-492c-adef-691d508d4ae1


ollie314/server,slanterns/server,flynn1973/mariadb-aix,flynn1973/mariadb-aix,ollie314/server,natsys/mariadb_10.2,natsys/mariadb_10.2,davidl-zend/zenddbi,davidl-zend/zenddbi,ollie314/server,ollie314/server,flynn1973/mariadb-aix,davidl-zend/zenddbi,flynn1973/mariadb-aix,ollie314/server,natsys/mariadb_10.2,natsys/mariadb_10.2,natsys/mariadb_10.2,ollie314/server,ollie314/server,davidl-zend/zenddbi,davidl-zend/zenddbi,natsys/mariadb_10.2,ollie314/server,ollie314/server,natsys/mariadb_10.2,davidl-zend/zenddbi,natsys/mariadb_10.2,flynn1973/mariadb-aix,flynn1973/mariadb-aix,ollie314/server,davidl-zend/zenddbi,natsys/mariadb_10.2,flynn1973/mariadb-aix,davidl-zend/zenddbi,flynn1973/mariadb-aix,davidl-zend/zenddbi,ollie314/server,flynn1973/mariadb-aix,flynn1973/mariadb-aix,flynn1973/mariadb-aix,natsys/mariadb_10.2,davidl-zend/zenddbi,davidl-zend/zenddbi,natsys/mariadb_10.2