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

fix(join): Fixes MCOL-5056, an error of joining TEXT column from InnoDB (#3160)

We incorrectly identified TEXT columns from external tables as BLOB.
Alexander Barkov suggested a way to discriminate them which I
implemented here.
This commit is contained in:
Sergey Zefirov
2024-05-15 18:04:10 +03:00
committed by GitHub
parent 5b982469a2
commit 49541993f4
3 changed files with 72 additions and 0 deletions

View File

@ -3189,7 +3189,15 @@ CalpontSystemCatalog::ColType colType_MysqlToIDB(const Item* item)
if (item->field_type() == MYSQL_TYPE_BLOB)
{
// We default to BLOB, but then try to correct type,
// because many textual types in server have type_handler_blob
// (and variants) as their type.
ct.colDataType = CalpontSystemCatalog::BLOB;
const Item_result_field* irf = dynamic_cast<const Item_result_field*>(item);
if (irf && irf->result_field && !irf->result_field->binary())
{
ct.colDataType = CalpontSystemCatalog::TEXT;
}
}
}