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

[MCOL-4829] Compression for the temp disk-based aggregation files

This commit is contained in:
Alexey Antipovsky
2021-08-03 13:24:00 +03:00
parent 35bb4193eb
commit bf1640be65
5 changed files with 152 additions and 85 deletions

View File

@@ -686,6 +686,8 @@ void RowAggregation::initialize()
config::Config* config = config::Config::makeConfig();
string tmpDir = config->getTempFileDir(config::Config::TempDirPurpose::Aggregates);
string compStr = config->getConfig("RowAggregation", "Compression");
auto* compressor = compress::getCompressInterfaceByName(compStr);
if (fKeyOnHeap)
{
@@ -696,7 +698,8 @@ void RowAggregation::initialize()
fRm,
fSessionMemLimit,
disk_agg,
allow_gen));
allow_gen,
compressor));
}
else
{
@@ -706,7 +709,8 @@ void RowAggregation::initialize()
fRm,
fSessionMemLimit,
disk_agg,
allow_gen));
allow_gen,
compressor));
}
// Initialize the work row.
@@ -771,6 +775,8 @@ void RowAggregation::aggReset()
config::Config* config = config::Config::makeConfig();
string tmpDir = config->getTempFileDir(config::Config::TempDirPurpose::Aggregates);
string compStr = config->getConfig("RowAggregation", "Compression");
auto* compressor = compress::getCompressInterfaceByName(compStr);
if (fKeyOnHeap)
{
@@ -781,7 +787,8 @@ void RowAggregation::aggReset()
fRm,
fSessionMemLimit,
disk_agg,
allow_gen));
allow_gen,
compressor));
}
else
{
@@ -791,7 +798,8 @@ void RowAggregation::aggReset()
fRm,
fSessionMemLimit,
disk_agg,
allow_gen));
allow_gen,
compressor));
}
fRowGroupOut->getRow(0, &fRow);
copyNullRow(fRow);