You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-08-01 06:46:55 +03:00
MCOL-5746 Cpimport: convert blob data from ascii hex when reads from STDIN
This commit is contained in:
committed by
Leonid Fedorov
parent
0a118292eb
commit
180e1f793f
@ -1661,7 +1661,8 @@ int ColumnInfo::closeDctnryStore(bool bAbort)
|
||||
// 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)
|
||||
int ColumnInfo::updateDctnryStoreParquet(std::shared_ptr<arrow::Array> columnData, int tokenPos,
|
||||
const int totalRow, char* tokenBuf)
|
||||
{
|
||||
long long truncCount = 0;
|
||||
|
||||
@ -1688,7 +1689,6 @@ int ColumnInfo::updateDctnryStoreParquet(std::shared_ptr<arrow::Array> columnDat
|
||||
}
|
||||
|
||||
incSaturatedCnt(truncCount);
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
@ -1707,7 +1707,7 @@ int ColumnInfo::updateDctnryStore(char* buf, ColPosPair** pos, const int totalRo
|
||||
// column.
|
||||
// This only applies to default text mode. This step is bypassed for
|
||||
// binary imports, because in that case, the data is already true binary.
|
||||
if (((curCol.colType == WR_VARBINARY) || (curCol.colType == WR_BLOB)) &&
|
||||
if (((curCol.colType == WR_VARBINARY) || (curCol.colType == WR_BLOB && fpTableInfo->readFromSTDIN())) &&
|
||||
(fpTableInfo->getImportDataMode() == IMPORT_DATA_TEXT))
|
||||
{
|
||||
#ifdef PROFILE
|
||||
|
@ -2463,5 +2463,10 @@ int TableInfo::allocateBRMColumnExtent(OID columnOID, uint16_t dbRoot, uint32_t&
|
||||
return rc;
|
||||
}
|
||||
|
||||
bool TableInfo::readFromSTDIN()
|
||||
{
|
||||
return fReadFromStdin;
|
||||
}
|
||||
|
||||
} // namespace WriteEngine
|
||||
// end of namespace
|
||||
|
@ -188,7 +188,8 @@ class TableInfo : public WeUIDGID
|
||||
int finishBRM(); // Finish reporting updates for BRM
|
||||
void freeProcessingBuffers(); // Free up Processing Buffers
|
||||
bool isBufferAvailable(bool report); // Is tbl buffer available for reading
|
||||
int openTableFileParquet(int64_t &totalRowsParquet); // Open parquet data file and set batch reader for each buffer
|
||||
int openTableFileParquet(
|
||||
int64_t& totalRowsParquet); // Open parquet data file and set batch reader for each buffer
|
||||
int openTableFile(); // Open data file and set the buffer
|
||||
void reportTotals(double elapsedSec); // Report summary totals
|
||||
void sleepMS(long int ms); // Sleep method
|
||||
@ -465,6 +466,8 @@ class TableInfo : public WeUIDGID
|
||||
|
||||
void setJobUUID(const boost::uuids::uuid& jobUUID);
|
||||
|
||||
bool readFromSTDIN();
|
||||
|
||||
public:
|
||||
friend class BulkLoad;
|
||||
friend class ColumnInfo;
|
||||
|
Reference in New Issue
Block a user