1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-29 08:21:15 +03:00

Minor fixes

This commit is contained in:
mariadb-AndreyPiskunov
2022-10-24 16:08:55 +03:00
parent 315e4be2d8
commit b57d2c30fe
5 changed files with 14 additions and 53 deletions

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2014 InfiniDB, Inc.
/* Copyright (C) 2022 MariaDB Corporation
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2014 InfiniDB, Inc.
/* Copyright (C) 2022 MariaDB Corporation
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License

View File

@ -1,5 +1,4 @@
/* Copyright (C) 2014 InfiniDB, Inc.
Copyright (C) 2019 MariaDB Corporation
/* Copyright (C) 2022 MariaDB Corporation
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
@ -64,15 +63,6 @@ using namespace nlohmann;
namespace joblist
{
// GroupConcatInfo class implementation
JsonArrayInfo::JsonArrayInfo()
{
}
JsonArrayInfo::~JsonArrayInfo()
{
}
void JsonArrayInfo::prepJsonArray(JobInfo& jobInfo)
{
RetColsVector::iterator i = jobInfo.groupConcatCols.begin();
@ -483,17 +473,16 @@ void JsonArrayAggregator::outputRow(std::ostringstream& oss, const rowgroup::Row
case CalpontSystemCatalog::TEXT:
{
std::string maybeJson = row.getStringField(*i);
try
{
[[maybe_unused]] json j = json::parse(maybeJson);
oss << maybeJson.c_str();
break;
}
catch (const json::parse_error& e)
[[maybe_unused]] const auto j = json::parse(maybeJson, nullptr, false);
if (j.is_discarded())
{
oss << std::quoted(maybeJson.c_str());
break;
}
else
{
oss << maybeJson.c_str();
}
break;
}
case CalpontSystemCatalog::DOUBLE:
@ -716,7 +705,7 @@ const string JsonArrayAggregator::toString() const
}
// GroupConcatOrderBy class implementation
JsonArrayAggOrderBy::JsonArrayAggOrderBy()
{
fRule.fIdbCompare = this;
@ -941,7 +930,6 @@ const string JsonArrayAggOrderBy::toString() const
}
// GroupConcatNoOrder class implementation
JsonArrayAggNoOrder::JsonArrayAggNoOrder()
: fRowsPerRG(128), fErrorCode(ERR_AGGREGATION_TOO_BIG), fMemSize(0), fRm(NULL)
{

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2014 InfiniDB, Inc.
/* Copyright (C) 2022 MariaDB Corporation
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
@ -37,37 +37,22 @@
namespace joblist
{
// forward reference
struct JobInfo;
class JsonArrayAggregator;
class ResourceManager;
class JsonArrayInfo
class JsonArrayInfo : public GroupConcatInfo
{
public:
JsonArrayInfo();
virtual ~JsonArrayInfo();
void prepJsonArray(JobInfo&);
void mapColumns(const rowgroup::RowGroup&);
std::set<uint32_t>& columns()
{
return fColumns;
}
std::vector<rowgroup::SP_GroupConcat>& groupConcat()
{
return fGroupConcat;
}
const std::string toString() const;
protected:
uint32_t getColumnKey(const execplan::SRCP& srcp, JobInfo& jobInfo);
boost::shared_array<int> makeMapping(const rowgroup::RowGroup&, const rowgroup::RowGroup&);
std::set<uint32_t> fColumns;
std::vector<rowgroup::SP_GroupConcat> fGroupConcat;
};
@ -81,23 +66,12 @@ class JsonArrayAggregatAgUM : public GroupConcatAgUM
void initialize();
void processRow(const rowgroup::Row&);
EXPORT void merge(const rowgroup::Row&, int64_t);
/*boost::scoped_ptr<JsonArrayAggregator>& concator()
{
return fConcator;
}
*/
EXPORT void getResult(uint8_t*);
EXPORT uint8_t* getResult();
protected:
void applyMapping(const boost::shared_array<int>&, const rowgroup::Row&);
/*
boost::scoped_ptr<JsonArrayAggregator> fConcator;
boost::scoped_array<uint8_t> fData;
rowgroup::Row fRow;
bool fNoOrder;
*/
};
// JSON_ARRAYAGG base

View File

@ -4023,7 +4023,6 @@ void RowAggregationUM::setGroupConcatString()
joblist::JsonArrayAggregatAgUM* gccAg = *((joblist::JsonArrayAggregatAgUM**)buff);
gcString = gccAg->getResult();
fRow.setStringField((char*)gcString, fFunctionCols[j]->fOutputColumnIndex);
// gccAg->getResult(buff);
}
}
}