diff options
Diffstat (limited to 'ndb/src')
-rw-r--r-- | ndb/src/ndbapi/NdbDictionaryImpl.cpp | 10 | ||||
-rw-r--r-- | ndb/src/ndbapi/TransporterFacade.cpp | 10 | ||||
-rw-r--r-- | ndb/src/ndbapi/ndb_cluster_connection.cpp | 3 |
3 files changed, 16 insertions, 7 deletions
diff --git a/ndb/src/ndbapi/NdbDictionaryImpl.cpp b/ndb/src/ndbapi/NdbDictionaryImpl.cpp index 9abe52fb030..b9b932663f6 100644 --- a/ndb/src/ndbapi/NdbDictionaryImpl.cpp +++ b/ndb/src/ndbapi/NdbDictionaryImpl.cpp @@ -868,6 +868,8 @@ NdbDictInterface::dictSignal(NdbApiSignal* signal, const int noerrcodes, const int temporaryMask) { + DBUG_ENTER("NdbDictInterface::dictSignal"); + DBUG_PRINT("enter", ("useMasterNodeId: %d", useMasterNodeId)); for(Uint32 i = 0; i<RETRIES; i++){ //if (useMasterNodeId == 0) m_buffer.clear(); @@ -887,7 +889,7 @@ NdbDictInterface::dictSignal(NdbApiSignal* signal, if(aNodeId == 0){ m_error.code = 4009; m_transporter->unlock_mutex(); - return -1; + DBUG_RETURN(-1); } { int r; @@ -923,7 +925,7 @@ NdbDictInterface::dictSignal(NdbApiSignal* signal, if(m_waiter.m_state == NO_WAIT && m_error.code == 0){ // Normal return - return 0; + DBUG_RETURN(0); } /** @@ -946,9 +948,9 @@ NdbDictInterface::dictSignal(NdbApiSignal* signal, continue; } - return -1; + DBUG_RETURN(-1); } - return -1; + DBUG_RETURN(-1); } /***************************************************************** diff --git a/ndb/src/ndbapi/TransporterFacade.cpp b/ndb/src/ndbapi/TransporterFacade.cpp index f0b0bfe2de4..bc24110ea14 100644 --- a/ndb/src/ndbapi/TransporterFacade.cpp +++ b/ndb/src/ndbapi/TransporterFacade.cpp @@ -942,6 +942,8 @@ TransporterFacade::isConnected(NodeId aNodeId){ NodeId TransporterFacade::get_an_alive_node() { + DBUG_ENTER("TransporterFacade::get_an_alive_node"); + DBUG_PRINT("enter", ("theStartNodeId: %d", theStartNodeId)); #ifdef VM_TRACE const char* p = NdbEnv_GetEnv("NDB_ALIVE_NODE_ID", (char*)0, 0); if (p != 0 && *p != 0) @@ -950,17 +952,19 @@ TransporterFacade::get_an_alive_node() NodeId i; for (i = theStartNodeId; i < MAX_NDB_NODES; i++) { if (get_node_alive(i)){ + DBUG_PRINT("info", ("Node %d is alive", i)); theStartNodeId = ((i + 1) % MAX_NDB_NODES); - return i; + DBUG_RETURN(i); } } for (i = 1; i < theStartNodeId; i++) { if (get_node_alive(i)){ + DBUG_PRINT("info", ("Node %d is alive", i)); theStartNodeId = ((i + 1) % MAX_NDB_NODES); - return i; + DBUG_RETURN(i); } } - return (NodeId)0; + DBUG_RETURN((NodeId)0); } TransporterFacade::ThreadData::ThreadData(Uint32 size){ diff --git a/ndb/src/ndbapi/ndb_cluster_connection.cpp b/ndb/src/ndbapi/ndb_cluster_connection.cpp index 5be4f0f9f91..358dfa74785 100644 --- a/ndb/src/ndbapi/ndb_cluster_connection.cpp +++ b/ndb/src/ndbapi/ndb_cluster_connection.cpp @@ -67,6 +67,9 @@ void Ndb_cluster_connection::connect_thread() printf("Ndb_cluster_connection::connect_thread error\n"); DBUG_ASSERT(false); g_run_connect_thread= 0; + } else { + // Wait before making a new connect attempt + NdbSleep_SecSleep(1); } } while (g_run_connect_thread); if (m_connect_callback) |