[MCOL-4755] Allow joins on all numeric data type pairs Created: 2021-06-10  Updated: 2023-10-06

Status: Open
Project: MariaDB ColumnStore
Component/s: ExeMgr, PrimProc
Affects Version/s: 5.6.1, 6.1.1
Fix Version/s: Icebox

Type: Task Priority: Major
Reporter: Alexander Barkov Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None

Issue Links:
Blocks
is blocked by MCOL-4627 SET int_col=decimal_col returns an error Open
is blocked by MCOL-4628 SET double_col=decimal_col returns an... Open
Relates
relates to MCOL-4173 Support JOINs wide-DECIMAL keys. Closed
relates to MCOL-4753 Performance problem in Typeless join Closed

 Description   

ColumnStore does not support all possible numeric data type pairs in JOINs. For example:

SET default_storage_engine=ColumnStore;
DROP TABLE IF EXISTS t1,t2;
CREATE TABLE t1 (a FLOAT);
INSERT INTO t1 VALUES (1);
CREATE TABLE t2 (a TINYINT);
INSERT INTO t2 VALUES (1);
SELECT * FROM t1,t2 WHERE t1.a=t2.a;

ERROR 1815 (HY000): Internal error: IDB-1002: 't1' and 't2' have incompatible column type specified for join condition.

Here's the full table:

               TINYINT   SMALLINT   MEDIUMINT  INT       BIGINT    DECIMAL(10,0) DECIMAL(10,1) FLOAT DOUBLE
TINYINT        OK        OK         OK         OK        OK        OK            IDB-1002      IDB-1002
SMALLINT       OK        OK         OK         OK        OK        OK            IDB-1002      IDB-1002
MEDIUMINT      OK        OK         OK         OK        OK        OK            IDB-1002      IDB-1002
INT            OK        OK         OK         OK        OK        OK            IDB-1002      IDB-1002
BIGINT         OK        OK         OK         OK        OK        OK            IDB-1002      IDB-1002
DECIMAL(10,0)  OK        OK         OK         OK        OK        OK            IDB-1002      IDB-1002
DECIMAL(10,1)  IDB-1002  IDB-1002   IDB-1002   IDB-1002  IDB-1002  IDB-1002      OK            OK
FLOAT          IDB-1002  IDB-1002   IDB-1002   IDB-1002  IDB-1002  IDB-1002      IDB-1002      IDB-1002
DOUBLE         IDB-1002  IDB-1002   IDB-1002   IDB-1002  IDB-1002  IDB-1002      IDB-1002      IDB-1002

Under terms of this task will allow all combinations that currently return IDB-1002.


Generated at Thu Feb 08 02:52:44 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.