diff --git a/tests/poolallocator.cpp b/tests/poolallocator.cpp index 8a9dc9d64..66795d2a7 100644 --- a/tests/poolallocator.cpp +++ b/tests/poolallocator.cpp @@ -200,7 +200,7 @@ TEST(PoolAllocatorTest, MultithreadedAllocationWithLock) EXPECT_GE(pa.getMemUsage(), expected); } -static const constexpr int64_t MemoryAllowance = 10 * 1024 * 1024; +static const constexpr int64_t MemoryAllowance = 1 * 1024 * 1024; // Test Fixture for AtomicCounterAllocator class PoolallocatorTest : public ::testing::Test @@ -213,7 +213,7 @@ class PoolallocatorTest : public ::testing::Test CountingAllocator allocator; // Constructor - PoolallocatorTest() : allocatedMemory(MemoryAllowance), allocator(&allocatedMemory, MemoryAllowance / 100) + PoolallocatorTest() : allocatedMemory(MemoryAllowance), allocator(&allocatedMemory, MemoryAllowance / 100, MemoryAllowance / 1000) { } @@ -283,5 +283,5 @@ TEST_F(PoolallocatorTest, MultithreadedAccountedAllocationWithLock) EXPECT_GE(pa.getMemUsage(), expected); // 2 * CUSTOM_SIZE semantics is structs allocation overhead. EXPECT_GE(allocatedMemory.load(), - MemoryAllowance - (THREAD_COUNT * ALLOC_PER_THREAD * NUM_ALLOCS_PER_THREAD) - 2 * CUSTOM_SIZE); + MemoryAllowance - (THREAD_COUNT * ALLOC_PER_THREAD * NUM_ALLOCS_PER_THREAD) - 3 * CUSTOM_SIZE); } \ No newline at end of file diff --git a/tests/rowgroup-tests.cpp b/tests/rowgroup-tests.cpp index ca2be5c6d..f664cc291 100644 --- a/tests/rowgroup-tests.cpp +++ b/tests/rowgroup-tests.cpp @@ -360,7 +360,7 @@ class RGDataTest : public ::testing::Test { protected: RGDataTest() - : allocatedMemory(MemoryAllowance), alloc(&allocatedMemory, MemoryAllowance / 100) {} + : allocatedMemory(MemoryAllowance) {} void SetUp() override { rg = setupRG({execplan::CalpontSystemCatalog::VARCHAR, execplan::CalpontSystemCatalog::UDECIMAL, @@ -375,38 +375,38 @@ class RGDataTest : public ::testing::Test rowgroup::RowGroup rg; rowgroup::RGData rgD; std::atomic allocatedMemory{MemoryAllowance}; - allocators::CountingAllocator alloc; }; // bool useStringTable = true; TEST_F(RGDataTest, AllocData) { - rgD = rowgroup::RGData(rg, alloc); - rg.setData(&rgD); - rg.initRow(&r); - rg.getRow(0, &r); + allocators::CountingAllocator alloc(&allocatedMemory, MemoryAllowance / 100, MemoryAllowance / 10000); + rgD = rowgroup::RGData(rg, alloc); + rg.setData(&rgD); + rg.initRow(&r); + rg.getRow(0, &r); - auto currentAllocation = allocatedMemory.load(); - EXPECT_LE(currentAllocation, MemoryAllowance - rg.getMaxDataSize()); + auto currentAllocation = allocatedMemory.load(); + EXPECT_LE(currentAllocation, MemoryAllowance - rg.getMaxDataSize()); - r.setStringField(utils::ConstString{"testaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}, 0); - EXPECT_LE(allocatedMemory.load(), currentAllocation); + r.setStringField(utils::ConstString{"testaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}, 0); + EXPECT_LE(allocatedMemory.load(), currentAllocation); - currentAllocation = allocatedMemory.load(); - r.nextRow(); - r.setStringField(utils::ConstString{"testaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}, 0); - EXPECT_EQ(allocatedMemory.load(), currentAllocation); + currentAllocation = allocatedMemory.load(); + r.nextRow(); + r.setStringField(utils::ConstString{"testaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}, 0); + EXPECT_EQ(allocatedMemory.load(), currentAllocation); - currentAllocation = allocatedMemory.load(); - r.nextRow(); - std::string longString(64 * 1024 + 1000, 'a'); - auto cs = utils::ConstString(longString); + currentAllocation = allocatedMemory.load(); + r.nextRow(); + std::string longString(64 * 1024 + 1000, 'a'); + auto cs = utils::ConstString(longString); - r.setStringField(cs, 0); - EXPECT_LE(allocatedMemory.load(), currentAllocation); + r.setStringField(cs, 0); + EXPECT_LE(allocatedMemory.load(), currentAllocation); - rgD = rowgroup::RGData(rg); + rgD = rowgroup::RGData(rg); - EXPECT_EQ(allocatedMemory.load(), MemoryAllowance); + EXPECT_EQ(allocatedMemory.load(), MemoryAllowance); // reinit }