1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-08-07 03:22:57 +03:00

Found and fixed a race on a counter in the new HJ hash table

construction code in PrimProc.
This commit is contained in:
Patrick LeBlanc
2019-12-17 18:17:04 -05:00
parent d8e763655c
commit 98d546c2c2
3 changed files with 26 additions and 8 deletions

View File

@@ -284,7 +284,7 @@ private:
typedef std::tr1::unordered_multimap<uint64_t, uint32_t,
joiner::TupleJoiner::hasher, std::equal_to<uint64_t>,
utils::STLPoolAllocator<std::pair<const uint64_t, uint32_t> > > TJoiner;
typedef std::tr1::unordered_multimap<joiner::TypelessData,
uint32_t, joiner::TupleJoiner::hasher, std::equal_to<joiner::TypelessData>,
utils::STLPoolAllocator<std::pair<const joiner::TypelessData, uint32_t> > > TLJoiner;
@@ -316,7 +316,7 @@ private:
boost::shared_array<uint32_t> smallSideRowLengths;
boost::shared_array<joblist::JoinType> joinTypes;
uint32_t joinerCount;
boost::shared_array<uint32_t> tJoinerSizes;
boost::shared_array<std::atomic<uint32_t> > tJoinerSizes;
// LSKC[i] = the column in outputRG joiner i uses as its key column
boost::shared_array<uint32_t> largeSideKeyColumns;
// KCPP[i] = true means a joiner uses projection step i as a key column
@@ -398,7 +398,7 @@ private:
uint processorThreads;
uint ptMask;
bool firstInstance;
friend class Command;
friend class ColumnCommand;
friend class DictStep;