You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@carbondata.apache.org by "Chetan Bhat (Jira)" <ji...@apache.org> on 2021/05/07 08:46:00 UTC
[jira] [Updated] (CARBONDATA-4178) if we insert different no of
data in array complex datatype. then query filter on increment or last
index gives error from presto
[ https://issues.apache.org/jira/browse/CARBONDATA-4178?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Chetan Bhat updated CARBONDATA-4178:
------------------------------------
Description:
Steps -
From Spark session the table creation and insert operations are executed as shown below
drop table if exists complextable;
create table complextable (id string, country array<string>, name string) stored as carbondata;
insert into complextable select 1, array('china', 'us'), 'b' union all select 2, array ('pak', 'india', 'china'), 'v';
From presto cli the below queries are executed.
select * from complextable ;
select * from complextable where country[3]='china';
Issue - if we insert different no of data in array complex datatype. then query filter on increment or last index gives error from presto
presto:ranjan> select * from complextable ;
id | country | name
----++---------------------------
1 | [china, us] | b
2 | [pak, india, china] | v
(2 rows)
Query 20210507_072934_00002_d2cjp, FINISHED, 1 node
Splits: 18 total, 18 done (100.00%)
0:07 [2 rows, 95B] [0 rows/s, 12B/s]
presto:ranjan> select * from complextable where country[1]='pak';
id | country | name
----++---------------------------
2 | [pak, india, china] | v
(1 row)
Query 20210507_072948_00003_d2cjp, FINISHED, 1 node
Splits: 18 total, 18 done (100.00%)
0:06 [2 rows, 0B] [0 rows/s, 0B/s]
presto:ranjan> select * from complextable where country[3]='china';
id | country | name
----++---------------------------
2 | [pak, india, china] | v
(1 row)
Query 20210507_073007_00004_d2cjp, FAILED, 1 node
Splits: 18 total, 1 done (5.56%)
0:05 [1 rows, 0B] [0 rows/s, 0B/s]
Query 20210507_073007_00004_d2cjp failed: Array subscript out of bounds
Expected - Error should not be thrown for the query executed in hetu cli and it show correct resultset as in spark session.
0: jdbc:hive2://10.20.254.208:23040/default> select * from complextable where country[2]='china';
+------+-------------------------++-------
|id|country|name|
+------+-------------------------++-------
|2|["pak","india","china"]|v|
+------+-------------------------++-------
was:
Steps -
From presto cli the below queries are executed.
drop table if exists complextable;
create table complextable (id string, country array<string>, name string) stored as carbondata;
insert into complextable select 1, array('china', 'us'), 'b' union all select 2, array ('pak', 'india', 'china'), 'v';
select * from complextable ;
select * from complextable where country[3]='china';
Issue - if we insert different no of data in array complex datatype. then query filter on increment or last index gives error from presto
presto:ranjan> select * from complextable ;
id | country | name
----+---------------------+------
1 | [china, us] | b
2 | [pak, india, china] | v
(2 rows)
Query 20210507_072934_00002_d2cjp, FINISHED, 1 node
Splits: 18 total, 18 done (100.00%)
0:07 [2 rows, 95B] [0 rows/s, 12B/s]
presto:ranjan> select * from complextable where country[1]='pak';
id | country | name
----+---------------------+------
2 | [pak, india, china] | v
(1 row)
Query 20210507_072948_00003_d2cjp, FINISHED, 1 node
Splits: 18 total, 18 done (100.00%)
0:06 [2 rows, 0B] [0 rows/s, 0B/s]
presto:ranjan> select * from complextable where country[3]='china';
id | country | name
----+---------------------+------
2 | [pak, india, china] | v
(1 row)
Query 20210507_073007_00004_d2cjp, FAILED, 1 node
Splits: 18 total, 1 done (5.56%)
0:05 [1 rows, 0B] [0 rows/s, 0B/s]
Query 20210507_073007_00004_d2cjp failed: Array subscript out of bounds
Expected - Error should not be thrown for the query executed in hetu cli and it show correct resultset as in spark session.
0: jdbc:hive2://10.20.254.208:23040/default> select * from complextable where country[2]='china';
+-----+--------------------------+-------+
| id | country | name |
+-----+--------------------------+-------+
| 2 | ["pak","india","china"] | v |
+-----+--------------------------+-------+
> if we insert different no of data in array complex datatype. then query filter on increment or last index gives error from presto
> ---------------------------------------------------------------------------------------------------------------------------------
>
> Key: CARBONDATA-4178
> URL: https://issues.apache.org/jira/browse/CARBONDATA-4178
> Project: CarbonData
> Issue Type: Bug
> Components: presto-integration
> Affects Versions: 2.1.1
> Environment: Spark 2.4.5. Presto 316
> Reporter: Chetan Bhat
> Priority: Major
>
> Steps -
> From Spark session the table creation and insert operations are executed as shown below
>
> drop table if exists complextable;
> create table complextable (id string, country array<string>, name string) stored as carbondata;
> insert into complextable select 1, array('china', 'us'), 'b' union all select 2, array ('pak', 'india', 'china'), 'v';
> From presto cli the below queries are executed.
> select * from complextable ;
> select * from complextable where country[3]='china';
>
> Issue - if we insert different no of data in array complex datatype. then query filter on increment or last index gives error from presto
> presto:ranjan> select * from complextable ;
> id | country | name
> ----++---------------------------
> 1 | [china, us] | b
> 2 | [pak, india, china] | v
> (2 rows)
> Query 20210507_072934_00002_d2cjp, FINISHED, 1 node
> Splits: 18 total, 18 done (100.00%)
> 0:07 [2 rows, 95B] [0 rows/s, 12B/s]
> presto:ranjan> select * from complextable where country[1]='pak';
> id | country | name
> ----++---------------------------
> 2 | [pak, india, china] | v
> (1 row)
> Query 20210507_072948_00003_d2cjp, FINISHED, 1 node
> Splits: 18 total, 18 done (100.00%)
> 0:06 [2 rows, 0B] [0 rows/s, 0B/s]
> presto:ranjan> select * from complextable where country[3]='china';
> id | country | name
> ----++---------------------------
> 2 | [pak, india, china] | v
> (1 row)
> Query 20210507_073007_00004_d2cjp, FAILED, 1 node
> Splits: 18 total, 1 done (5.56%)
> 0:05 [1 rows, 0B] [0 rows/s, 0B/s]
> Query 20210507_073007_00004_d2cjp failed: Array subscript out of bounds
>
> Expected - Error should not be thrown for the query executed in hetu cli and it show correct resultset as in spark session.
> 0: jdbc:hive2://10.20.254.208:23040/default> select * from complextable where country[2]='china';
> +------+-------------------------++-------
> |id|country|name|
> +------+-------------------------++-------
> |2|["pak","india","china"]|v|
> +------+-------------------------++-------
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)