WL#1709: Transaction profiles/optimizations

Affects: Server-7.1   —   Status: Un-Assigned

Add different transaction profiles which will be handled differently by TC
Example of ideas:
* Run LQHKEYREQ in parallell instead in serial
* Introduce transaction records in LQH and commit using this

This should typically be configurable (per transaction) for the user
since different algorithms have different benifits.

Note: Running LQHKEYREQ in parallell will probably improve
performance for disk operations quite a lot.


Martin:
Different timeouts and resource usage is probably even more urgent
to add for individual transactions:
Suggestion: add Ndb::startTransaction(NdbTransactionProfile &profile)
where NdbTransactionProfile can contain:
* TransactionDeadlockDetectionTimeout
* TransactionInactiveTimeout
* MaxNoOfOperations
...

Sidenote: Ndb::startTransaction already takes two
arguments (in 5.1)
* Table object used for deciding which node to run 
  the Transaction Coordinator on
* Partition key
These are more about controlling where the transaction executes
and over what data than resource usage.