You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-29 08:21:15 +03:00
MCOL-5021 Add support for AUX column in the client code calling
CalpontSystemCatalog::columnRIDs().
This commit is contained in:
@ -562,8 +562,19 @@ void DDLPackageProcessor::createFiles(CalpontSystemCatalog::TableName aTableName
|
||||
{
|
||||
SUMMARY_INFO("DDLPackageProcessor::createFiles");
|
||||
boost::shared_ptr<CalpontSystemCatalog> systemCatalogPtr =
|
||||
CalpontSystemCatalog::makeCalpontSystemCatalog(1);
|
||||
CalpontSystemCatalog::makeCalpontSystemCatalog(1);
|
||||
CalpontSystemCatalog::RIDList ridList = systemCatalogPtr->columnRIDs(aTableName);
|
||||
CalpontSystemCatalog::OID tableAUXColOid =
|
||||
systemCatalogPtr->tableAUXColumnOID(aTableName);
|
||||
|
||||
if (tableAUXColOid > 3000)
|
||||
{
|
||||
CalpontSystemCatalog::ROPair auxRoPair;
|
||||
auxRoPair.rid = 0;
|
||||
auxRoPair.objnum = tableAUXColOid;
|
||||
ridList.push_back(auxRoPair);
|
||||
}
|
||||
|
||||
fWEClient->addQueue(uniqueId);
|
||||
CalpontSystemCatalog::ColType colType;
|
||||
ByteStream bytestream;
|
||||
|
@ -70,6 +70,7 @@ DropPartitionProcessor::DDLResult DropPartitionProcessor::processPackage(
|
||||
}
|
||||
|
||||
std::vector<CalpontSystemCatalog::OID> oidList;
|
||||
CalpontSystemCatalog::OID tableAuxColOid;
|
||||
CalpontSystemCatalog::RIDList tableColRidList;
|
||||
CalpontSystemCatalog::DictOIDList dictOIDList;
|
||||
execplan::CalpontSystemCatalog::ROPair roPair;
|
||||
@ -231,6 +232,7 @@ DropPartitionProcessor::DDLResult DropPartitionProcessor::processPackage(
|
||||
userTableName.table = dropPartitionStmt.fTableName->fName;
|
||||
|
||||
tableColRidList = systemCatalogPtr->columnRIDs(userTableName);
|
||||
tableAuxColOid = systemCatalogPtr->tableAUXColumnOID(userTableName);
|
||||
|
||||
dictOIDList = systemCatalogPtr->dictOIDs(userTableName);
|
||||
|
||||
@ -241,6 +243,11 @@ DropPartitionProcessor::DDLResult DropPartitionProcessor::processPackage(
|
||||
oidList.push_back(tableColRidList[i].objnum);
|
||||
}
|
||||
|
||||
if (tableAuxColOid > 3000)
|
||||
{
|
||||
oidList.push_back(tableAuxColOid);
|
||||
}
|
||||
|
||||
for (unsigned i = 0; i < dictOIDList.size(); i++)
|
||||
{
|
||||
if (dictOIDList[i].dictOID > 3000)
|
||||
|
@ -64,6 +64,7 @@ MarkPartitionProcessor::DDLResult MarkPartitionProcessor::processPackage(
|
||||
}
|
||||
|
||||
std::vector<CalpontSystemCatalog::OID> oidList;
|
||||
CalpontSystemCatalog::OID tableAuxColOid;
|
||||
CalpontSystemCatalog::RIDList tableColRidList;
|
||||
CalpontSystemCatalog::DictOIDList dictOIDList;
|
||||
std::string processName("DDLProc");
|
||||
@ -193,6 +194,7 @@ MarkPartitionProcessor::DDLResult MarkPartitionProcessor::processPackage(
|
||||
userTableName.table = markPartitionStmt.fTableName->fName;
|
||||
|
||||
tableColRidList = systemCatalogPtr->columnRIDs(userTableName);
|
||||
tableAuxColOid = systemCatalogPtr->tableAUXColumnOID(userTableName);
|
||||
|
||||
dictOIDList = systemCatalogPtr->dictOIDs(userTableName);
|
||||
|
||||
@ -203,6 +205,11 @@ MarkPartitionProcessor::DDLResult MarkPartitionProcessor::processPackage(
|
||||
oidList.push_back(tableColRidList[i].objnum);
|
||||
}
|
||||
|
||||
if (tableAuxColOid > 3000)
|
||||
{
|
||||
oidList.push_back(tableAuxColOid);
|
||||
}
|
||||
|
||||
for (unsigned i = 0; i < dictOIDList.size(); i++)
|
||||
{
|
||||
if (dictOIDList[i].dictOID > 3000)
|
||||
|
@ -64,6 +64,7 @@ RestorePartitionProcessor::DDLResult RestorePartitionProcessor::processPackage(
|
||||
}
|
||||
|
||||
std::vector<CalpontSystemCatalog::OID> oidList;
|
||||
CalpontSystemCatalog::OID tableAuxColOid;
|
||||
CalpontSystemCatalog::RIDList tableColRidList;
|
||||
CalpontSystemCatalog::DictOIDList dictOIDList;
|
||||
std::string processName("DDLProc");
|
||||
@ -195,6 +196,7 @@ RestorePartitionProcessor::DDLResult RestorePartitionProcessor::processPackage(
|
||||
userTableName.table = restorePartitionStmt.fTableName->fName;
|
||||
|
||||
tableColRidList = systemCatalogPtr->columnRIDs(userTableName);
|
||||
tableAuxColOid = systemCatalogPtr->tableAUXColumnOID(userTableName);
|
||||
|
||||
dictOIDList = systemCatalogPtr->dictOIDs(userTableName);
|
||||
|
||||
@ -205,6 +207,11 @@ RestorePartitionProcessor::DDLResult RestorePartitionProcessor::processPackage(
|
||||
oidList.push_back(tableColRidList[i].objnum);
|
||||
}
|
||||
|
||||
if (tableAuxColOid > 3000)
|
||||
{
|
||||
oidList.push_back(tableAuxColOid);
|
||||
}
|
||||
|
||||
for (unsigned i = 0; i < dictOIDList.size(); i++)
|
||||
{
|
||||
if (dictOIDList[i].dictOID > 3000)
|
||||
|
@ -577,7 +577,6 @@ TupleBPS::TupleBPS(const pColScanStep& rhs, const JobInfo& jobInfo) : BatchPrimi
|
||||
if (dbrm.getExtents(fOidAux, extentsAux))
|
||||
throw runtime_error("TupleBPS::TupleBPS BRM extent lookup failure (1)");
|
||||
|
||||
idbassert(!extentsAux.empty());
|
||||
sort(extentsAux.begin(), extentsAux.end(), BRM::ExtentSorter());
|
||||
|
||||
extentsMap[fOidAux] = tr1::unordered_map<int64_t, EMEntry>();
|
||||
|
Reference in New Issue
Block a user