Joe McDonnell has posted comments on this change. Change subject: IMPALA-5750: Catch exceptions from boost thread creation ......................................................................
Patch Set 7: (1 comment) http://gerrit.cloudera.org:8080/#/c/7730/7/be/src/exec/kudu-scan-node.cc File be/src/exec/kudu-scan-node.cc: PS7, Line 173: scanner_threads_.AddThread(move(t)); > There may be another race here where if the KuduScanNode is closed before w Here is my understanding: SetDone() in Close() gets lock_ before calling SetDoneInternal(), so it holds lock_ regardless of whether done_ is true. The thread in ThreadAvailableCb() also gets lock_ before reading done_. So, they agree about done_ and either the thread in Close waits for the thread in ThreadAvailableCb() to add the thread and will need to join with it, or the thread in ThreadAvailableCb() will see done_==true and bail. I might be missing something. -- To view, visit http://gerrit.cloudera.org:8080/7730 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I15a2f278dc71892b7fec09593f81b1a57ab725c0 Gerrit-PatchSet: 7 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Joe McDonnell <[email protected]> Gerrit-Reviewer: Dan Hecht <[email protected]> Gerrit-Reviewer: Joe McDonnell <[email protected]> Gerrit-Reviewer: Sailesh Mukil <[email protected]> Gerrit-Reviewer: Tim Armstrong <[email protected]> Gerrit-HasComments: Yes
