1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-08-01 06:46:55 +03:00

MCOL-507 Further ExeMgr performance improvements

This does the following:

* Switch resource manager to a singleton which reduces the amount of
times the XML data is scanned and objects allocated.
* Make the I_S tables use the FE implementation of the system catalog
* Make the I_S.columnstore_columns table use the RID list cache
* Make the extentmap pre-allocate a vector instead of many small allocs
This commit is contained in:
Andrew Hutchings
2017-01-16 12:33:27 +00:00
parent 605f6c51e2
commit ffcfc41563
49 changed files with 197 additions and 178 deletions

View File

@ -135,8 +135,8 @@ pDictionaryScan::pDictionaryScan(
ridCount(0),
ridList(0),
colType(ct),
fScanLbidReqLimit(jobInfo.rm.getJlScanLbidReqLimit()),
fScanLbidReqThreshold(jobInfo.rm.getJlScanLbidReqThreshold()),
fScanLbidReqLimit(jobInfo.rm->getJlScanLbidReqLimit()),
fScanLbidReqThreshold(jobInfo.rm->getJlScanLbidReqThreshold()),
fStopSending(false),
fSingleThread(false),
fPhysicalIO(0),
@ -169,7 +169,7 @@ pDictionaryScan::pDictionaryScan(
}
sort(extents.begin(), extents.end(), ExtentSorter());
numExtents = extents.size();
extentSize = (fRm.getExtentRows()*8)/BLOCK_SIZE;
extentSize = (fRm->getExtentRows()*8)/BLOCK_SIZE;
uint64_t i = 1, mask = 1;
for (; i <= 32; i++)
@ -209,7 +209,7 @@ pDictionaryScan::~pDictionaryScan()
//------------------------------------------------------------------------------
void pDictionaryScan::initializeConfigParms()
{
fLogicalBlocksPerScan = fRm.getJlLogicalBlocksPerScan();
fLogicalBlocksPerScan = fRm->getJlLogicalBlocksPerScan();
}
void pDictionaryScan::startPrimitiveThread()