summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjoreland@mysql.com <>2005-01-20 12:19:48 +0100
committerjoreland@mysql.com <>2005-01-20 12:19:48 +0100
commite49de251714cb418a0b7b4a46289974e2cc99dd6 (patch)
tree2fd9791771e6dbc5eb435dfeb983114aad75c1d9
parent8f0cdf54ee3c8fdeef8b7c1b2bcc73839dbee4b5 (diff)
downloadmariadb-git-e49de251714cb418a0b7b4a46289974e2cc99dd6.tar.gz
bug#8010 - ndb
release connections when last op was simple read
-rw-r--r--ndb/src/kernel/blocks/dbtc/DbtcMain.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp b/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp
index 815d6c9d838..c804fa32bd2 100644
--- a/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp
+++ b/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp
@@ -1271,7 +1271,10 @@ void Dbtc::execTCRELEASEREQ(Signal* signal)
if (tapiBlockref == apiConnectptr.p->ndbapiBlockref) {
if (apiConnectptr.p->apiConnectstate == CS_CONNECTED ||
(apiConnectptr.p->apiConnectstate == CS_ABORTING &&
- apiConnectptr.p->abortState == AS_IDLE)){
+ apiConnectptr.p->abortState == AS_IDLE) ||
+ (apiConnectptr.p->apiConnectstate == CS_STARTED &&
+ apiConnectptr.p->firstTcConnect == RNIL))
+ {
jam(); /* JUST REPLY OK */
releaseApiCon(signal, apiConnectptr.i);
signal->theData[0] = tuserpointer;