BUG#28804 release index operation for unique index lookup (without matching tuple) on completion of operation, not txn

This also ensures we free TransactionBufferMemory. This would severely limit
the size of txns doing non-matching unique index lookups (as well as having
the related problem of full txn buff memory).

===== ndb/src/kernel/blocks/dbtc/DbtcMain.cpp 1.110 vs edited =====
--- 1.110/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp	2007-03-26 00:44:03 +10:00
+++ edited/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp	2007-06-29 17:01:19 +10:00
@@ -11999,6 +12003,9 @@
     tcIndxRef->transId[0] = tcKeyRef->transId[0];
     tcIndxRef->transId[1] = tcKeyRef->transId[1];
     tcIndxRef->errorCode = tcKeyRef->errorCode;
+
+    releaseIndexOperation(regApiPtr, indexOp);
+
     sendSignal(regApiPtr->ndbapiBlockref, 
                GSN_TCINDXREF, signal, TcKeyRef::SignalLength, JBB);
     return;
