You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@carbondata.apache.org by "Kunal Kapoor (Jira)" <ji...@apache.org> on 2021/09/20 04:47:00 UTC
[jira] [Resolved] (CARBONDATA-4285) complex columns with global
sort compaction is failed
[ https://issues.apache.org/jira/browse/CARBONDATA-4285?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kunal Kapoor resolved CARBONDATA-4285.
--------------------------------------
Fix Version/s: 2.3.0
Resolution: Fixed
> complex columns with global sort compaction is failed
> -----------------------------------------------------
>
> Key: CARBONDATA-4285
> URL: https://issues.apache.org/jira/browse/CARBONDATA-4285
> Project: CarbonData
> Issue Type: Bug
> Reporter: Mahesh Raju Somalaraju
> Priority: Major
> Fix For: 2.3.0
>
> Time Spent: 8h 50m
> Remaining Estimate: 0h
>
> complex columns with global sort compaction is failed.
>
> Steps to reproduce
> -=-------------------------
> 1) create table with global sort
> 2) load the data multiple times
> 3) alter add columns
> 4) insert the data
> 5) repeat 3 and 4 for four times
> 6) execute the compaction.
> test("test the complex columns with global sort compaction") {
> sql("DROP TABLE IF EXISTS alter_global1")
> sql("CREATE TABLE alter_global1(intField INT) STORED AS carbondata " +
> "TBLPROPERTIES('sort_columns'='intField','sort_scope'='global_sort')")
> sql("insert into alter_global1 values(1)")
> sql("insert into alter_global1 values(2)")
> sql("insert into alter_global1 values(3)")
> sql( "ALTER TABLE alter_global1 ADD COLUMNS(str1 array<int>)")
> sql("insert into alter_global1 values(4, array(1))")
> checkAnswer(sql("select * from alter_global1"),
> Seq(Row(1, null), Row(2, null), Row(3, null), Row(4, make(Array(1)))))
> val addedColumns = addedColumnsInSchemaEvolutionEntry("alter_global1")
> assert(addedColumns.size == 1)
> sql("alter table alter_global1 compact 'minor'")
> checkAnswer(sql("select * from alter_global1"),
> Seq(Row(1, null), Row(2, null), Row(3, null), Row(4, make(Array(1)))))
> sql("DROP TABLE IF EXISTS alter_global1")
> }
> test("test the multi-level complex columns with global sort compaction") {
> sql("DROP TABLE IF EXISTS alter_global2")
> sql("CREATE TABLE alter_global2(intField INT) STORED AS carbondata " +
> "TBLPROPERTIES('sort_columns'='intField','sort_scope'='global_sort')")
> sql("insert into alter_global2 values(1)")
> // multi-level nested array
> sql(
> "ALTER TABLE alter_global2 ADD COLUMNS(arr1 array<array<int>>, arr2 array<struct<a1:string," +
> "map1:Map<string, string>>>) ")
> sql(
> "insert into alter_global2 values(1, array(array(1,2)), array(named_struct('a1','st'," +
> "'map1', map('a','b'))))")
> // multi-level nested struct
> sql("ALTER TABLE alter_global2 ADD COLUMNS(struct1 struct<s1:string, arr: array<int>>," +
> " struct2 struct<num:double,contact:map<string,array<int>>>) ")
> sql("insert into alter_global2 values(1, " +
> "array(array(1,2)), array(named_struct('a1','st','map1', map('a','b'))), " +
> "named_struct('s1','hi','arr',array(1,2)), named_struct('num',2.3,'contact',map('ph'," +
> "array(1,2))))")
> // multi-level nested map
> sql(
> "ALTER TABLE alter_global2 ADD COLUMNS(map1 map<string,array<string>>, map2 map<string," +
> "struct<d:int, s:struct<im:string>>>)")
> sql("insert into alter_global2 values(1, " +
> "array(array(1,2)), array(named_struct('a1','st','map1', map('a','b'))), " +
> "named_struct('s1','hi','arr',array(1,2)), named_struct('num',2.3,'contact',map('ph'," +
> "array(1,2))),map('a',array('hi')), map('a',named_struct('d',23,'s',named_struct('im'," +
> "'sh'))))")
> val addedColumns = addedColumnsInSchemaEvolutionEntry("alter_global2")
> assert(addedColumns.size == 6)
> sql("alter table alter_global2 compact 'minor'")
> sql("DROP TABLE IF EXISTS alter_global2")
--
This message was sent by Atlassian Jira
(v8.3.4#803005)