You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-30 19:23:07 +03:00
MCOL-4912 This patch introduces Extent Map index to improve EM scaleability
EM scaleability project has two parts: phase1 and phase2. This is phase1 that brings EM index to speed up(from O(n) down to the speed of boost::unordered_map) EM lookups looking for <dbroot, oid, partition> tuple to turn it into LBID, e.g. most bulk insertion meta info operations. The basis is boost::shared_managed_object where EMIndex is stored. Whilst it is not debug-friendly it allows to put a nested structs into shmem. EMIndex has 3 tiers. Top down description: vector of dbroots, map of oids to partition vectors, partition vectors that have EM indices. Separate EM methods now queries index before they do EM run. EMIndex has a separate shmem file with the fixed id MCS-shm-00060001.
This commit is contained in:
committed by
Leonid Fedorov
parent
fb3eaabd29
commit
4c26e4f960
@ -381,11 +381,11 @@ void XMLJob::setJobData(xmlNode* pNode, const xmlTag tag, bool bExpectContent, X
|
||||
if (tagType == TYPE_INT)
|
||||
bSuccess = getNodeContent(pNode, &intVal, TYPE_INT);
|
||||
else // longlong
|
||||
if (tagType == TYPE_LONGLONG)
|
||||
bSuccess = getNodeContent(pNode, &llVal, TYPE_LONGLONG);
|
||||
else // char
|
||||
if (tagType == TYPE_LONGLONG)
|
||||
bSuccess = getNodeContent(pNode, &llVal, TYPE_LONGLONG);
|
||||
else // char
|
||||
if (tagType == TYPE_CHAR)
|
||||
bSuccess = getNodeContentStr(pNode, bufString);
|
||||
bSuccess = getNodeContentStr(pNode, bufString);
|
||||
|
||||
if (!bSuccess)
|
||||
return;
|
||||
@ -1194,7 +1194,8 @@ void XMLJob::validateAllColumnsHaveTags(const execplan::CalpontSystemCatalog::RI
|
||||
/* static */
|
||||
int XMLJob::genJobXMLFileName(const string& sXMLJobDir, const string& jobDir, const string& jobId,
|
||||
bool bTempFile, const string& schemaName, const string& tableName,
|
||||
boost::filesystem::path& xmlFilePath, string& errMsg, std::string& tableOIDStr)
|
||||
boost::filesystem::path& xmlFilePath, string& errMsg,
|
||||
const std::string& tableOIDStr)
|
||||
{
|
||||
// get full file directory path for XML job description file
|
||||
if (sXMLJobDir.empty())
|
||||
|
Reference in New Issue
Block a user