1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-27 21:01:50 +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

@ -4205,6 +4205,8 @@ void ExtentMap::getExtents(int OID, vector<struct EMEntry>& entries,
grabEMEntryTable(READ);
emEntries = fEMShminfo->allocdSize/sizeof(struct EMEntry);
// Pre-expand entries to stop lots of small allocs
entries.reserve(emEntries);
if (incOutOfService) {
for (i = 0 ; i < emEntries; i++)
if ((fExtentMap[i].fileID == OID) &&