Commit Graph

102 Commits

Author SHA1 Message Date
Anton Popov
fc17936c12 Merge remote-tracking branch 'upstream/master' into HEAD 2021-09-14 23:02:30 +03:00
Mike Kot
bce011cb33 Replacing IsDecimalNumber 2021-09-11 00:40:18 +02:00
mergify[bot]
b7ae4e4ced
Merge branch 'master' into async-insert 2021-07-12 09:21:37 +00:00
Azat Khuzhin
5bc0533712 Add a note for padded to 8 bytes keys in StringHashTable 2021-07-07 10:42:33 +03:00
Ivan Lezhankin
84c23dc060 Merge branch 'master' into async-insert 2021-06-02 18:06:21 +03:00
Maksim Kita
cf43a3efe2 Updated LRUHashMap benchmarks 2021-05-17 11:08:22 +03:00
Alexey Milovidov
037d06bb2a Fix warnings by PVS-Studio 2021-05-08 23:50:12 +03:00
Alexey Milovidov
2fbecf36ca More fixes for PVS-Studio 2021-05-08 18:20:40 +03:00
Alexey Milovidov
02ce9cc725 Untangle UUID 2021-05-04 01:46:51 +03:00
Alexey Milovidov
bad13149ec Fix clang-tidy 2021-05-03 22:48:46 +03:00
Alexey Milovidov
c7b6d3e2ac PVS-Studio 2021-05-03 18:25:14 +03:00
Alexey Milovidov
9f74565948 PVS-Studio 2021-05-03 01:42:01 +03:00
Alexey Milovidov
1fda866881 Merge branch 'master' into normalize-bigint 2021-05-02 21:24:45 +03:00
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
Maksim Kita
5bb263f535 Fixed tests 2021-04-26 13:44:59 +03:00
Maksim Kita
6e3efee28c Updated HashMap functions 2021-04-26 01:36:47 +03:00
Maksim Kita
cac4a85286 Aggregator remove unused code 2021-04-26 01:17:24 +03:00
Alexey Milovidov
649550c5ab Attempt to normalize big integers 2021-04-25 12:30:43 +03:00
Alexey Milovidov
60be962dca Merging with master 2021-04-25 07:08:57 +03:00
Alexey Milovidov
8f01af62d9 Merge branch 'master' into normalize-bigint 2021-04-25 06:57:44 +03:00
Ivan Lezhankin
9e5d274467 Merge remote-tracking branch 'upstream/master' into async-insert 2021-04-14 20:16:05 +03:00
Maksim Kita
e486fde35e
Update HashMap.h 2021-04-05 01:20:17 +03:00
Maksim Kita
fa49817421
Update HashMap.h 2021-04-05 01:01:20 +03:00
Maksim Kita
ff86c21e65 Dictionary update field fix 2021-04-04 16:30:48 +03:00
Ivan Lezhankin
de05803177 Merge branch 'master' into async-insert 2021-03-29 20:59:02 +03:00
Maksim Kita
13417b5b40 Added documentation 2021-03-26 18:42:32 +03:00
Maksim Kita
eb0039ed03 Fixed tests 2021-03-26 18:42:32 +03:00
Ivan Lezhankin
4f1fad97ab Merge remote-tracking branch 'upstream/master' into async-insert 2021-03-19 23:41:01 +03:00
Maksim Kita
18ed9c5c67 SSDCacheDictionary remove max_stored_keys option 2021-03-18 12:55:17 +03:00
Maksim Kita
f140204279 Improved performance of SSDCache dictionary 2021-03-17 22:01:45 +03:00
Maksim Kita
bc22f4f6eb Updated implementation 2021-03-17 20:14:36 +03:00
Maksim Kita
3d1c42827b Added FixedDeadlineHashMap 2021-03-16 01:59:04 +03:00
Maksim Kita
c314de7388 Fixed documentation 2021-03-06 14:37:56 +03:00
Maksim Kita
717a9b048a Fixed tests 2021-03-06 14:37:36 +03:00
Maksim Kita
7602c6c6cb Fixed sanitizers errors 2021-03-06 14:36:37 +03:00
Maksim Kita
d04e707567 Fixed special build 2021-03-06 14:36:37 +03:00
Maksim Kita
a22ec65e8a Fixed minor issues 2021-03-06 14:36:37 +03:00
Maksim Kita
b6e72334ef Fixed DefaultHash for StringRef 2021-03-06 14:36:37 +03:00
Ivan Lezhankin
74214865eb Merge remote-tracking branch 'upstream/master' into async-insert 2021-03-04 14:14:28 +03:00
Ivan Lezhankin
b726845be2 [WIP] 2021-03-04 14:10:21 +03:00
Alexey Milovidov
00e6b6232f Revert "optimize aggfunc column data copy (#19407)"
This reverts commit 7e3186c826.
2021-02-21 12:49:50 +03:00
Maksim Kita
e3003add57 HashTable fix bug during resize with nonstandard grower 2021-02-15 22:23:10 +03:00
Anton Popov
ece7e87cfb
Merge pull request #20079 from ClickHouse/vdimir/fix-join-used-flag
Split use flags and RowRef in HashJoin
2021-02-10 20:34:22 +03:00
Maksim Kita
ebf5868652
Merge pull request #20164 from kitaisreal/cache-dictionaries-lru-cache
Added LRUHashMap
2021-02-08 21:00:27 +03:00
templarzq
7e3186c826
optimize aggfunc column data copy (#19407)
* optimize agg column data copy

* add aggfunc col data copy test

* fix null warning

* fix style

* fix style

* fix style

* fix style

* fix copy same dat to same pos bug

* fix style

* fix style

* Update ColumnAggregateFunction.cpp

fix type check

* control record buf size

* fix performance

* fix performance

* fix destroy data speed

* decrease run time.

* fix warning

* decrease test run time

* Update aggfunc_col_data_copy.xml

* replace unordered_map with HashMap

* fix compile err

* fix compile err

* fix compile err

* fix compile err

* fix compile err

* fix compile err

* fix compile err

* fix compile err

* fix compile err

* fix hash map compile err

* fix compile err

* fix compile err

* fix format

* faster test

Co-authored-by: centos7 <templarzq@localhost.localdomain>
2021-02-08 16:18:48 +03:00
vdimir
776b682f28
Add comment for used_flags in hash join, fix build 2021-02-08 14:38:31 +03:00
Maksim Kita
285d46bc56 Fix gcc build issues 2021-02-07 23:54:14 +03:00
Maksim Kita
1201c4c55f Fixed build issues 2021-02-07 16:45:29 +03:00
Maksim Kita
eadd23aa38 Added LRUHashMap 2021-02-07 00:06:27 +03:00
vdimir
01a6e01ad7
Store usage info flags separate from row refs in hash join 2021-02-05 16:20:13 +03:00