Joe McDonnell has uploaded this change for review. ( http://gerrit.cloudera.org:8080/15640
Change subject: IMPALA-9571: Fix Impala crash from unexpected boost filesystem_error exception ...................................................................... IMPALA-9571: Fix Impala crash from unexpected boost filesystem_error exception The no-exception signature of boost::filesystem::remove_all() has a longstanding bug where it can throw an exception even for the no-exceptions interface. Boost recently added the "noexcept" specifier to the no-exception signature of remove_all(). When a "noexcept" function throws an exception, it causes the program to call std::terminate() which aborts the program. This makes the try/catch block around remove_all() useless. As a point fix, this switches FilesystemUtil to use the remove_all() signature that can throw exceptions. This code already had a try/catch block around remove_all(), so now it just uses that to get the error code. Newer versions of boost (1.63+) fix the underlying problem, so this code can be removed when we upgrade boost. Testing: - Ran core tests - Ran FilesystemUtil backend test Change-Id: I23016f37401604fc41fc99c0a056439a31333e3f --- M be/src/util/filesystem-util.cc 1 file changed, 13 insertions(+), 6 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/40/15640/1 -- To view, visit http://gerrit.cloudera.org:8080/15640 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I23016f37401604fc41fc99c0a056439a31333e3f Gerrit-Change-Number: 15640 Gerrit-PatchSet: 1 Gerrit-Owner: Joe McDonnell <[email protected]> Gerrit-Reviewer: Impala Public Jenkins <[email protected]>
