From d1199e03c32c0040154db9c6cfe3fe46fa33ab07 Mon Sep 17 00:00:00 2001 From: Andrew Hutchings Date: Thu, 19 Dec 2019 11:15:09 +0200 Subject: [PATCH] Fix atomic usage Using atomic without namespace broke the build on most platforms --- primitives/primproc/batchprimitiveprocessor.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/primitives/primproc/batchprimitiveprocessor.cpp b/primitives/primproc/batchprimitiveprocessor.cpp index 1942715e8..7ae382830 100644 --- a/primitives/primproc/batchprimitiveprocessor.cpp +++ b/primitives/primproc/batchprimitiveprocessor.cpp @@ -291,7 +291,7 @@ void BatchPrimitiveProcessor::initBPP(ByteStream& bs) addToJoinerLocks[j].reset(new boost::mutex[processorThreads]); smallSideDataLocks.reset(new boost::mutex[joinerCount]); - tJoinerSizes.reset(new atomic[joinerCount]); + tJoinerSizes.reset(new std::atomic[joinerCount]); largeSideKeyColumns.reset(new uint32_t[joinerCount]); tlLargeSideKeyColumns.reset(new vector[joinerCount]); typelessJoin.reset(new bool[joinerCount]); @@ -592,7 +592,7 @@ void BatchPrimitiveProcessor::addToJoiner(ByteStream& bs) idbassert(joinerNum < joinerCount); arr = (JoinerElements*) bs.buf(); - atomic &tJoinerSize = tJoinerSizes[joinerNum]; + std::atomic &tJoinerSize = tJoinerSizes[joinerNum]; // XXXPAT: enormous if stmts are evil. TODO: move each block into // properly-named functions for clarity.