소스 검색

HPCC-11618 Roxie core when detaching from dali

If roxie detaches from dali while a Workunit listener thread is at certain
locations inside dodequeue, Roxie may core.

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Richard Chapman 11 년 전
부모
커밋
c39cf86b68
2개의 변경된 파일2개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 1
      roxie/ccd/ccddali.cpp
  2. 1 0
      roxie/ccd/ccdlistener.cpp

+ 1 - 1
roxie/ccd/ccddali.cpp

@@ -726,10 +726,10 @@ public:
                 closeDllServer();
                 closeEnvironment();
                 clientShutdownWorkUnit();
+                disconnectRoxieQueues();
                 ::closedownClientProcess(); // dali client closedown
                 isConnected = false;
                 disconnectSem.signal();
-                disconnectRoxieQueues();
             }
         }
     }

+ 1 - 0
roxie/ccd/ccdlistener.cpp

@@ -863,6 +863,7 @@ public:
         {
             DBGLOG("RoxieWorkUnitListener::disconnectQueue");
             queue->cancelAcceptConversation();
+            queue.clear();
         }
     }