[MCOL-4320] INSERT..SELECT doesn't work from InnoDB table to Columnstore table on 5.4.1 Created: 2020-09-23  Updated: 2021-04-19  Resolved: 2020-11-02

Status: Closed
Project: MariaDB ColumnStore
Component/s: None
Affects Version/s: None
Fix Version/s: 5.4.3

Type: Bug Priority: Major
Reporter: Nilnandan Joshi Assignee: Daniel Lee (Inactive)
Resolution: Fixed Votes: 0
Labels: MariaDB_10.5

Issue Links:
Relates
relates to MCOL-4364 LOAD DATA crashes mariadb process Closed

 Description   

INSERT..SELECT doesn't work from InnoDB table to Columnstore table on 1.5.4
It gives below error.

MariaDB [test]> insert into global_cust select * from global_cust_test111 where global_ident_num='12345';
ERROR 9999 (HY000): Values saturated
MariaDB [test]>

and I was able to reproduce the same with MariaDB 10.5.5

version 10.5.5-MariaDB
version_comment MariaDB Server
version_compile_machine x86_64
version_compile_os Linux
Columnstore_version 1.5.4

Even I've tried to increase size of VARCHAR columns to 4x for Columnstore table but still getting the same error that value is saturated. Though, direct insert to this table with the
the same value works.

Test case is included in the ticket's internal note.
https://cloud.mariadb.com/case.do?id=CS0121756



 Comments   
Comment by Gagan Goel (Inactive) [ 2020-10-26 ]

For QA:
Steps to reproduce and ensure the bug is fixed:

MariaDB [test]> drop table if exists global_cust_ra_clm_cs;
Query OK, 0 rows affected, 1 warning (0.079 sec)
 
MariaDB [test]> drop table if exists global_cust_ra_clm;
Query OK, 0 rows affected, 1 warning (0.031 sec)
 
MariaDB [test]> 
MariaDB [test]> CREATE TABLE `global_cust_ra_clm_cs` (
    -> `GLOBAL_CUST_KEY` varchar(240) COLLATE utf8mb4_bin NOT NULL,
    -> `GLOBAL_IDENT_NUM` varchar(200) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `ASOF_DT` datetime NOT NULL,
    -> `REL_GRP_KEY` varchar(120) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `CUST_OWNR_KEY` varchar(80) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `IDENT_NUM_TYP` varchar(120) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `CUST_NM` varchar(800) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `MAS_INDUSTRY_CD` varchar(80) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `MAS_INDUSTRY_DESC` varchar(320) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `CNTRY_NM_OF_REGISTRATION` varchar(176) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `DT_OF_REGISTRATION` datetime DEFAULT NULL,
    -> `LOCAL_RM_CD` varchar(200) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `LRM_NM` varchar(400) COLLATE utf8mb4_bin DEFAULT NULL
    -> ) engine=columnstore DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
Query OK, 0 rows affected (0.674 sec)
 
MariaDB [test]> 
MariaDB [test]> CREATE TABLE `global_cust_ra_clm` (
    -> `GLOBAL_CUST_KEY` varchar(60) COLLATE utf8mb4_bin NOT NULL,
    -> `GLOBAL_IDENT_NUM` varchar(50) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `ASOF_DT` datetime NOT NULL,
    -> `REL_GRP_KEY` varchar(30) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `CUST_OWNR_KEY` varchar(20) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `IDENT_NUM_TYP` varchar(30) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `CUST_NM` varchar(200) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `MAS_INDUSTRY_CD` varchar(20) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `MAS_INDUSTRY_DESC` varchar(80) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `CNTRY_NM_OF_REGISTRATION` varchar(44) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `DT_OF_REGISTRATION` datetime DEFAULT NULL,
    -> `LOCAL_RM_CD` varchar(50) COLLATE utf8mb4_bin DEFAULT NULL,
    -> `LRM_NM` varchar(100) COLLATE utf8mb4_bin DEFAULT NULL
    -> ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
Query OK, 0 rows affected (0.013 sec)
 
MariaDB [test]> 
MariaDB [test]> INSERT INTO global_cust_ra_clm (GLOBAL_CUST_KEY,GLOBAL_IDENT_NUM,ASOF_DT,REL_GRP_KEY,CUST_OWNR_KEY,IDENT_NUM_TYP,CUST_NM,MAS_INDUSTRY_CD,MAS_INDUSTRY_DESC,CNTRY_NM_OF_REGISTRATION,DT_OF_REGISTRATION, LOCAL_RM_CD,LRM_NM) VALUES ('GC000012148420200823','GC0000121484','2020-08-23 00:00:00','DBSIDID30220090131',400120090131,'GCINC CUSTOMER','XXXXXXX XXXXX XXXX XXXX, XX',010101,'AGRICULTURAL & LIVESTOCK PRODUCTION','INDONESIA','1980-03-15 00:00:00','SAMUELYULIADY','SAMUELYULIADY');
Query OK, 1 row affected (0.002 sec)
 
MariaDB [test]> 
MariaDB [test]> INSERT INTO global_cust_ra_clm_cs SELECT * FROM global_cust_ra_clm;
ERROR 9999 (HY000): Values saturated
MariaDB [test]> select * from global_cust_ra_clm_cs;
+----------------------+------------------+---------------------+-------------+---------------+---------------+---------+-----------------+-------------------+--------------------------+---------------------+-------------+--------+
| GLOBAL_CUST_KEY      | GLOBAL_IDENT_NUM | ASOF_DT             | REL_GRP_KEY | CUST_OWNR_KEY | IDENT_NUM_TYP | CUST_NM | MAS_INDUSTRY_CD | MAS_INDUSTRY_DESC | CNTRY_NM_OF_REGISTRATION | DT_OF_REGISTRATION  | LOCAL_RM_CD | LRM_NM |
+----------------------+------------------+---------------------+-------------+---------------+---------------+---------+-----------------+-------------------+--------------------------+---------------------+-------------+--------+
| GC000012148420200823 | NULL             | 0000-00-00 00:00:00 | NULL        | NULL          | NULL          | NULL    | NULL            | NULL              | NULL                     | 0000-00-00 00:00:00 | NULL        | NULL   |
+----------------------+------------------+---------------------+-------------+---------------+---------------+---------+-----------------+-------------------+--------------------------+---------------------+-------------+--------+
1 row in set (0.103 sec)

Comment by Daniel Lee (Inactive) [ 2020-11-02 ]

Build verified: 5.5.1-1 (Drone #1036)

Reproduced the issue in release 5.4.1-1

MariaDB [mytest]> INSERT INTO global_cust_ra_clm (GLOBAL_CUST_KEY,GLOBAL_IDENT_NUM,ASOF_DT,REL_GRP_KEY,CUST_OWNR_KEY,IDENT_NUM_TYP,CUST_NM,MAS_INDUSTRY_CD,MAS_INDUSTRY_DESC,CNTRY_NM_OF_REGISTRATION,DT_OF_REGISTRATION, LOCAL_RM_CD,LRM_NM) VALUES ('GC000012148420200823','GC0000121484','2020-08-23 00:00:00','DBSIDID30220090131',400120090131,'GCINC CUSTOMER','XXXXXXX XXXXX XXXX XXXX, XX',010101,'AGRICULTURAL & LIVESTOCK PRODUCTION','INDONESIA','1980-03-15 00:00:00','SAMUELYULIADY','SAMUELYULIADY');
Query OK, 1 row affected (0.004 sec)

MariaDB [mytest]> INSERT INTO global_cust_ra_clm_cs SELECT * FROM global_cust_ra_clm;
ERROR 9999 (HY000): Values saturated

Verified fix in 5.5.1-1

MariaDB [mytest]> INSERT INTO global_cust_ra_clm (GLOBAL_CUST_KEY,GLOBAL_IDENT_NUM,ASOF_DT,REL_GRP_KEY,CUST_OWNR_KEY,IDENT_NUM_TYP,CUST_NM,MAS_INDUSTRY_CD,MAS_INDUSTRY_DESC,CNTRY_NM_OF_REGISTRATION,DT_OF_REGISTRATION, LOCAL_RM_CD,LRM_NM) VALUES ('GC000012148420200823','GC0000121484','2020-08-23 00:00:00','DBSIDID30220090131',400120090131,'GCINC CUSTOMER','XXXXXXX XXXXX XXXX XXXX, XX',010101,'AGRICULTURAL & LIVESTOCK PRODUCTION','INDONESIA','1980-03-15 00:00:00','SAMUELYULIADY','SAMUELYULIADY');
Query OK, 1 row affected (0.003 sec)

MariaDB [mytest]> INSERT INTO global_cust_ra_clm_cs SELECT * FROM global_cust_ra_clm;
Query OK, 1 row affected (1.275 sec)
Records: 1 Duplicates: 0 Warnings: 0

Comment by Daniel Lee (Inactive) [ 2020-11-05 ]

Build verified: 5.4.2-1 hot fix (Enterprise Jenkins build #523)

Server version: 10.5.6-4.5.4.2-MariaDB-enterprise MariaDB Enterprise Server

Comment by Daniel Lee (Inactive) [ 2020-11-09 ]

Build verified: 5.4.3-1 hot fix (Enterprise Jenkins build #854)
Server version: 10.5.6-4.5.4.3-MariaDB-enterprise MariaDB Enterprise Server

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