1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-30 19:23:07 +03:00

MCOL-641 Basic support for multi-value inserts, and deletes.

This commit is contained in:
Gagan Goel
2020-02-17 19:52:05 -05:00
committed by Roman Nozdrin
parent 55afcd8890
commit 93170c3b31
11 changed files with 266 additions and 1551 deletions

View File

@ -1550,17 +1550,20 @@ void DDLPackageProcessor::updateSyscolumns(execplan::CalpontSystemCatalog::SCN t
if (result.result != NO_ERROR)
return;
WriteEngine::ColStructList colStructs;
WriteEngine::ColStructList colStructs;
WriteEngine::CSCTypesList cscColTypeList;
//std::vector<ColStruct> colStructs;
WriteEngine::ColStruct colStruct;
execplan::CalpontSystemCatalog::ColType colType;
WriteEngine::DctnryStructList dctnryStructList;
WriteEngine::DctnryValueList dctnryValueList;
//Build column structure for COLUMNPOS_COL
colStruct.dataOid = OID_SYSCOLUMN_COLUMNPOS;
colStruct.colWidth = 4;
colType.columnOID = colStruct.dataOid = OID_SYSCOLUMN_COLUMNPOS;
colType.colWidth = colStruct.colWidth = 4;
colStruct.tokenFlag = false;
colStruct.colDataType = CalpontSystemCatalog::INT;
colType.colDataType = colStruct.colDataType = CalpontSystemCatalog::INT;
colStructs.push_back(colStruct);
cscColTypeList.push_back(colType);
int error;
std::string err;
std::vector<void*> colOldValuesList1;
@ -1568,7 +1571,7 @@ void DDLPackageProcessor::updateSyscolumns(execplan::CalpontSystemCatalog::SCN t
try
{
//@Bug 3051 use updateColumnRecs instead of updateColumnRec to use different value for diffrent rows.
if (NO_ERROR != (error = fWriteEngine.updateColumnRecs( txnID, colStructs, colValuesList, ridList )))
if (NO_ERROR != (error = fWriteEngine.updateColumnRecs( txnID, cscColTypeList, colStructs, colValuesList, ridList )))
{
// build the logging message
WErrorCodes ec;