1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-08-05 16:15:50 +03:00

MCOL-3904 group_concat with sum from subquery in order by

This commit is contained in:
David Hall
2020-03-26 13:35:15 -05:00
parent 3caf5a27a1
commit 04a9027782

View File

@@ -365,12 +365,18 @@ void GroupConcatAgUM::applyMapping(const boost::shared_array<int>& mapping, cons
// For some reason the rowgroup mapping fcns don't work right in this class. // For some reason the rowgroup mapping fcns don't work right in this class.
for (uint64_t i = 0; i < fRow.getColumnCount(); i++) for (uint64_t i = 0; i < fRow.getColumnCount(); i++)
{ {
if (fRow.getColumnWidth(i) > 8 && if (fRow.getColumnWidth(i) > 8)
(fRow.getColTypes()[i] == execplan::CalpontSystemCatalog::CHAR ||
fRow.getColTypes()[i] == execplan::CalpontSystemCatalog::VARCHAR ||
fRow.getColTypes()[i] == execplan::CalpontSystemCatalog::TEXT))
{ {
fRow.setStringField(row.getStringPointer(mapping[i]), row.getStringLength(mapping[i]), i); if (fRow.getColTypes()[i] == execplan::CalpontSystemCatalog::CHAR ||
fRow.getColTypes()[i] == execplan::CalpontSystemCatalog::VARCHAR ||
fRow.getColTypes()[i] == execplan::CalpontSystemCatalog::TEXT)
{
fRow.setStringField(row.getStringPointer(mapping[i]), row.getStringLength(mapping[i]), i);
}
else if (fRow.getColTypes()[i] == execplan::CalpontSystemCatalog::LONGDOUBLE)
{
fRow.setLongDoubleField(row.getLongDoubleField(mapping[i]), i);
}
} }
else else
{ {