ClickHouse® is a real-time analytics DBMS
Go to file
Azat Khuzhin 8b356ba7e0 Add MSan annotation for HashTable
MSan reports [1], strictly speaking it is UB but let's suppress for now:

    [ RUN      ] HierarchyDictionariesUtils.getDescendants
    ==12==WARNING: MemorySanitizer: use-of-uninitialized-value
        0 0x6c22057 in HashTable<unsigned long, HashMapCell<unsigned long, DB::PODArray<unsigned long, 4096ul, Allocator<false, false>, 15ul, 16ul>, DefaultHash<unsigned long, void>, HashTableNoState>, DefaultHash<unsigned long, void>, HashTableGrower<8ul>, Allocator<true, true> >::iterator_base<HashTable<unsigned long, HashMapCell<unsigned long, DB::PODArray<unsigned long, 4096ul, Allocator<false, false>, 15ul, 16ul>, DefaultHash<unsigned long, void>, HashTableNoState>, DefaultHash<unsigned long, void>, HashTableGrower<8ul>, Allocator<true, true> >::iterator, false>::operator++() obj-x86_64-linux-gnu/../src/Common/HashTable/HashTable.h:613:17
        1 0x6c22057 in HashTable<unsigned long, HashMapCell<unsigned long, DB::PODArray<unsigned long, 4096ul, Allocator<false, false>, 15ul, 16ul>, DefaultHash<unsigned long, void>, HashTableNoState>, DefaultHash<unsigned long, void>, HashTableGrower<8ul>, Allocator<true, true> >::destroyElements() obj-x86_64-linux-gnu/../src/Common/HashTable/HashTable.h:587:71
        2 0x6c22057 in HashTable<unsigned long, HashMapCell<unsigned long, DB::PODArray<unsigned long, 4096ul, Allocator<false, false>, 15ul, 16ul>, DefaultHash<unsigned long, void>, HashTableNoState>, DefaultHash<unsigned long, void>, HashTableGrower<8ul>, Allocator<true, true> >::~HashTable() obj-x86_64-linux-gnu/../src/Common/HashTable/HashTable.h:691:9
        3 0x6c0df94 in HierarchyDictionariesUtils_getDescendants_Test::TestBody() obj-x86_64-linux-gnu/../src/Dictionaries/tests/gtest_hierarchy_dictionaries_utils.cpp:186:5
        4 0x731acc9 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2589:10
        5 0x731acc9 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2625:14
        6 0x7274255 in testing::Test::Run() obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2664:5
        7 0x727b4e3 in testing::TestInfo::Run() obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2842:11
        8 0x727e747 in testing::TestSuite::Run() obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2996:28
        9 0x72c87cc in testing::internal::UnitTestImpl::RunAllTests() obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:5708:44
        10 0x731f035 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2589:10
        11 0x731f035 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2625:14
        12 0x72c574a in testing::UnitTest::Run() obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:5291:10
        13 0x6a820d9 in RUN_ALL_TESTS() obj-x86_64-linux-gnu/../contrib/googletest/googletest/include/gtest/gtest.h:2471:46
        14 0x6a820d9 in main obj-x86_64-linux-gnu/../src/Coordination/tests/gtest_for_build.cpp:1308:12
        15 0x7f579f7f00b2 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x270b2)
        16 0x652f50d in _start (/unit_tests_dbms+0x652f50d)

      Memory was marked as uninitialized
        0 0x653bc0e in __sanitizer_dtor_callback (/unit_tests_dbms+0x653bc0e)
        1 0x6c21d16 in PairNoInit<unsigned long, DB::PODArray<unsigned long, 4096ul, Allocator<false, false>, 15ul, 16ul> >::~PairNoInit() obj-x86_64-linux-gnu/../src/Common/HashTable/HashMap.h:20:8
        2 0x6c21d16 in HashMapCell<unsigned long, DB::PODArray<unsigned long, 4096ul, Allocator<false, false>, 15ul, 16ul>, DefaultHash<unsigned long, void>, HashTableNoState>::~HashMapCell() obj-x86_64-linux-gnu/../src/Common/HashTable/HashMap.h:49:8
        3 0x6c21d16 in HashTable<unsigned long, HashMapCell<unsigned long, DB::PODArray<unsigned long, 4096ul, Allocator<false, false>, 15ul, 16ul>, DefaultHash<unsigned long, void>, HashTableNoState>, DefaultHash<unsigned long, void>, HashTableGrower<8ul>, Allocator<true, true> >::destroyElements() obj-x86_64-linux-gnu/../src/Common/HashTable/HashTable.h:588:26
        4 0x6c21d16 in HashTable<unsigned long, HashMapCell<unsigned long, DB::PODArray<unsigned long, 4096ul, Allocator<false, false>, 15ul, 16ul>, DefaultHash<unsigned long, void>, HashTableNoState>, DefaultHash<unsigned long, void>, HashTableGrower<8ul>, Allocator<true, true> >::~HashTable() obj-x86_64-linux-gnu/../src/Common/HashTable/HashTable.h:691:9
        5 0x6c0df94 in HierarchyDictionariesUtils_getDescendants_Test::TestBody() obj-x86_64-linux-gnu/../src/Dictionaries/tests/gtest_hierarchy_dictionaries_utils.cpp:186:5
        6 0x731acc9 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2589:10
        7 0x731acc9 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2625:14
        8 0x7274255 in testing::Test::Run() obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2664:5
        9 0x727b4e3 in testing::TestInfo::Run() obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2842:11
        10 0x727e747 in testing::TestSuite::Run() obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2996:28
        11 0x72c87cc in testing::internal::UnitTestImpl::RunAllTests() obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:5708:44
        12 0x731f035 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2589:10
        13 0x731f035 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:2625:14
        14 0x72c574a in testing::UnitTest::Run() obj-x86_64-linux-gnu/../contrib/googletest/googletest/src/gtest.cc:5291:10
        15 0x6a820d9 in RUN_ALL_TESTS() obj-x86_64-linux-gnu/../contrib/googletest/googletest/include/gtest/gtest.h:2471:46
        16 0x6a820d9 in main obj-x86_64-linux-gnu/../src/Coordination/tests/gtest_for_build.cpp:1308:12
        17 0x7f579f7f00b2 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x270b2)

    SUMMARY: MemorySanitizer: use-of-uninitialized-value obj-x86_64-linux-gnu/../src/Common/HashTable/HashTable.h:613:17 in HashTable<unsigned long, HashMapCell<unsigned long, DB::PODArray<unsigned long, 4096ul, Allocator<false, false>, 15ul, 16ul>, DefaultHash<unsigned long, void>, HashTableNoState>, DefaultHash<unsigned long, void>, HashTableGrower<8ul>, Allocator<true, true> >::iterator_base<HashTable<unsigned long, HashMapCell<unsigned long, DB::PODArray<unsigned long, 4096ul, Allocator<false, false>, 15ul, 16ul>, DefaultHash<unsigned long, void>, HashTableNoState>, DefaultHash<unsigned long, void>, HashTableGrower<8ul>, Allocator<true, true> >::iterator, false>::operator++()
    Exiting

  [1]: https://clickhouse-test-reports.s3.yandex.net/23664/06bb4b2b33513f9cc1cd8faed75397db1f1ed914/unit_tests_msan/test_run.txt.out.log
2021-04-28 23:05:24 +03:00
.github Update 40_bug-report.md 2021-04-28 06:53:00 +03:00
base Maybe better support for paths with whitespaces 2021-04-24 22:47:52 +03:00
benchmark Convert to python3 (#15007) 2020-10-02 19:54:07 +03:00
cmake Enable use-after-destruction detection in MSan 2021-04-28 23:02:52 +03:00
contrib Merge pull request #23082 from ClickHouse/explain-output 2021-04-28 15:39:06 +03:00
debian Remove pbuilder 2021-04-25 06:32:15 +03:00
docker Enable use-after-destruction detection in MSan 2021-04-28 23:02:52 +03:00
docs Ignore cmake-in-clickhouse 2021-04-28 18:10:12 +03:00
programs Fix segfault in TSan on _exit 2021-04-25 06:06:38 +03:00
src Add MSan annotation for HashTable 2021-04-28 23:05:24 +03:00
tests Merge pull request #23711 from ClickHouse/remove-old-compilers 2021-04-28 22:51:21 +03:00
utils Remove pbuilder 2021-04-25 06:32:15 +03:00
website Update code-review.md 2021-04-14 23:02:28 +03:00
.arcignore Added .arcignore 2020-05-21 09:17:03 +03:00
.clang-format Fixed wrong code around Memory Profiler 2020-03-03 03:24:44 +03:00
.clang-tidy Enable clang-tidy for programs and utils 2020-05-18 04:19:50 +03:00
.editorconfig Changed tabs to spaces in editor configs and in style guide [#CLICKHOUSE-3]. 2017-04-01 11:35:09 +03:00
.gitattributes Union merge for arcadia_skip_list.txt to avoid frequent conflicts 2021-03-10 08:50:32 +03:00
.gitignore Ignore cmake-in-clickhouse 2021-04-28 18:10:12 +03:00
.gitmodules Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into nanodbc 2021-04-11 21:36:08 +00:00
.potato.yml Fix yamllint issues 2021-02-20 23:25:21 +03:00
.pylintrc Add pylintrc config 2021-01-26 23:35:56 +03:00
.vimrc Changed tabs to spaces in editor configs and in style guide [#CLICKHOUSE-3]. 2017-04-01 11:35:09 +03:00
.yamllint Drop truthy.check-keys from yamllint (does not supported on CI) 2021-02-21 06:15:36 +03:00
AUTHORS Update AUTHORS 2020-01-23 17:36:05 +03:00
CHANGELOG.md Update CHANGELOG.md 2021-04-14 01:32:31 +03:00
CMakeLists.txt Follow-up for #23644 2021-04-28 07:32:23 +03:00
CODE_OF_CONDUCT.md Add minimal code of conduct #9676 2020-03-16 12:44:28 +03:00
CONTRIBUTING.md Update CONTRIBUTING.md 2020-01-27 21:03:30 +03:00
docker-compose.yml Updated docker-compose.yml #1025 2017-07-26 20:05:32 +03:00
format_sources allow several <graphite> targets (#603) 2017-03-21 23:08:09 +04:00
LICENSE Update LICENSE 2021-01-25 17:00:13 +03:00
PreLoad.cmake Check if XCODE_IDE is true and avoid enforcing ninja in that case 2021-01-06 03:06:03 +04:00
README.md Update link 2021-03-22 18:29:19 +03:00
release Remove rotten parts of release script 2021-04-25 02:11:31 +03:00
SECURITY.md Update SECURITY.md (outdated long time ago) 2021-01-21 16:48:28 +03:00
uncrustify.cfg Better .clang-format and uncrustify.cfg 2018-11-29 15:45:34 +03:00
ya.make Changes required for auto-sync with Arcadia 2020-04-16 15:31:57 +03:00

ClickHouse — open source distributed column-oriented DBMS

ClickHouse® is an open-source column-oriented database management system that allows generating analytical data reports in real time.

  • Official website has quick high-level overview of ClickHouse on main page.
  • Tutorial shows how to set up and query small ClickHouse cluster.
  • Documentation provides more in-depth information.
  • YouTube channel has a lot of content about ClickHouse in video format.
  • Slack and Telegram allow to chat with ClickHouse users in real-time.
  • Blog contains various ClickHouse-related articles, as well as announcements and reports about events.
  • Code Browser with syntax highlight and navigation.
  • Contacts can help to get your questions answered if there are any.
  • You can also fill this form to meet Yandex ClickHouse team in person.