Open tcm-marcel opened 6 years ago
Valgrind memcheck with --leak-check=full --show-leak-kinds=all
doesn't find any problems:
==14894== LEAK SUMMARY:
==14894== definitely lost: 0 bytes in 0 blocks
==14894== indirectly lost: 0 bytes in 0 blocks
==14894== possibly lost: 0 bytes in 0 blocks
==14894== still reachable: 5,085,637 bytes in 68,578 blocks
==14894== suppressed: 0 bytes in 0 blocks
==14894==
==14894== For counts of detected and suppressed errors, rerun with: -v
==14894== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
The error didn't appear after rerunning travis without code changes: https://travis-ci.org/cmu-db/peloton/builds/392879558
The address sanitizer reports an error in the art_index_test in the Travis Mac build for PR #1244, which is not related to the ART index.
The error appears in the test case NonUniqueKeyMultiThreadedStressTest:
Output of address sanitizer (incomplete)
``` 78: [0;32m[ RUN ] [mArtIndexTests.NonUniqueKeyMultiThreadedStressTest 78: 2018-06-15 21:07:49 [test/index/testing_index_util.cpp:688:BuildTestIndexMetadata] DEBUG - Build index type: ART [unique_keys=0] 78: ================================================================= 78: ==20455==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x61700004fd18 at pc 0x0001116af4b7 bp 0x7000080d4ff0 sp 0x7000080d4fe8 78: READ of size 8 at 0x61700004fd18 thread T12 78: #0 0x1116af4b6 in art::Node48::getChild(unsigned char) const Node48_impl.h:32 78: #1 0x1116b8112 in art::Node::getChild(unsigned char, art::Node const*) Node_impl.h:214 78: #2 0x1116cbdd1 in art::Tree::remove(art::Key const&, unsigned long long, art::ThreadInfo&) Tree.cpp:564 78: #3 0x110944c4e in peloton::index::ArtIndex::DeleteEntry(peloton::storage::Tuple const*, peloton::ItemPointer*) art_index.cpp:88 78: #4 0x10f4bfa15 in peloton::test::ArtIndexTests::DeleteHelper(peloton::index::Index*, std::__1::vectorComplete output