1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-08-08 14:22:09 +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

@@ -163,9 +163,9 @@ void TupleBPS::initializeConfigParms()
//... rids must fall below, before the producer can send more rids.
//These could go in constructor
fRequestSize = fRm.getJlRequestSize();
fMaxOutstandingRequests = fRm.getJlMaxOutstandingRequests();
fProcessorThreadsPerScan = fRm.getJlProcessorThreadsPerScan();
fRequestSize = fRm->getJlRequestSize();
fMaxOutstandingRequests = fRm->getJlMaxOutstandingRequests();
fProcessorThreadsPerScan = fRm->getJlProcessorThreadsPerScan();
fNumThreads = 0;
config::Config* cf = config::Config::makeConfig();
@@ -176,7 +176,7 @@ void TupleBPS::initializeConfigParms()
if (fRequestSize >= fMaxOutstandingRequests)
fRequestSize = 1;
if ((fSessionId & 0x80000000) == 0)
fMaxNumThreads = fRm.getJlNumScanReceiveThreads();
fMaxNumThreads = fRm->getJlNumScanReceiveThreads();
else
fMaxNumThreads = 1;
@@ -896,7 +896,7 @@ bool TupleBPS::goodExtentCount()
void TupleBPS::initExtentMarkers()
{
numDBRoots = fRm.getDBRootCount();
numDBRoots = fRm->getDBRootCount();
lastExtent.resize(numDBRoots);
lastScannedLBID.resize(numDBRoots);