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-5505 add parquet support for cpimport and add mcs_parquet_ddl and mcs_parquet_gen tools
This commit is contained in:
@ -1657,6 +1657,41 @@ int ColumnInfo::closeDctnryStore(bool bAbort)
|
||||
return rc;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------
|
||||
// Update dictionary store file with string column parquet data, and return the assigned
|
||||
// tokens (tokenbuf) to be stored in the corresponding column token file.
|
||||
//--------------------------------------------------------------------------------------
|
||||
int ColumnInfo::updateDctnryStoreParquet(std::shared_ptr<arrow::Array> columnData, int tokenPos, const int totalRow, char* tokenBuf)
|
||||
{
|
||||
long long truncCount = 0;
|
||||
|
||||
#ifdef PROFILE
|
||||
Stats::startParseEvent(WE_STATS_WAIT_TO_PARSE_DCT);
|
||||
#endif
|
||||
boost::mutex::scoped_lock lock(fDictionaryMutex);
|
||||
#ifdef PROFILE
|
||||
Stats::stopParseEvent(WE_STATS_WAIT_TO_PARSE_DCT);
|
||||
#endif
|
||||
|
||||
int rc = fStore->insertDctnryParquet(columnData, tokenPos, totalRow, id, tokenBuf, truncCount, column.cs, column.weType);
|
||||
|
||||
if (rc != NO_ERROR)
|
||||
{
|
||||
WErrorCodes ec;
|
||||
std::ostringstream oss;
|
||||
oss << "updateDctnryStore: error adding rows to store file for "
|
||||
<< "OID-" << column.dctnry.dctnryOid << "; DBRoot-" << curCol.dataFile.fDbRoot << "; part-"
|
||||
<< curCol.dataFile.fPartition << "; seg-" << curCol.dataFile.fSegment << "; " << ec.errorString(rc);
|
||||
fLog->logMsg(oss.str(), rc, MSGLVL_CRITICAL);
|
||||
fpTableInfo->fBRMReporter.addToErrMsgEntry(oss.str());
|
||||
return rc;
|
||||
}
|
||||
|
||||
incSaturatedCnt(truncCount);
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Update dictionary store file with specified strings, and return the assigned
|
||||
// tokens (tokenbuf) to be stored in the corresponding column token file.
|
||||
|
Reference in New Issue
Block a user