From 5db496d84490fe00e1dc35bcbd2b6715690efb5d Mon Sep 17 00:00:00 2001 From: lihangyu <15605149486@163.com> Date: Tue, 2 Jan 2024 20:29:17 +0800 Subject: [PATCH] [Improve](Variant) make output stable (#29389) --- be/src/vec/columns/column_object.cpp | 19 ++-- be/src/vec/columns/subcolumn_tree.h | 19 ++++ .../variant_p0/compaction/test_compaction.out | 96 +++++++++---------- .../data/variant_p0/complexjson.out | 10 +- .../data/variant_p0/delete_update.out | 10 +- .../data/variant_p0/insert_into_select.out | 10 +- regression-test/data/variant_p0/load.out | 76 +++++++-------- .../test_alter_table_column_with_delete.out | 10 +- .../data/variant_p0/sql/gh_data.out | 20 ++-- .../data/variant_p0/with_index/load.out | 6 +- .../data/variant_p0/with_index/var_index.out | 10 +- regression-test/suites/variant_p0/desc.groovy | 4 +- 12 files changed, 151 insertions(+), 139 deletions(-) diff --git a/be/src/vec/columns/column_object.cpp b/be/src/vec/columns/column_object.cpp index 8a21bc76d2..77366d05cb 100644 --- a/be/src/vec/columns/column_object.cpp +++ b/be/src/vec/columns/column_object.cpp @@ -34,6 +34,7 @@ #include #include #include +#include #include "common/compiler_util.h" // IWYU pragma: keep #include "common/exception.h" @@ -1009,12 +1010,12 @@ void get_json_by_column_tree(rapidjson::Value& root, rapidjson::Document::Alloca return; } root.SetObject(); - for (auto it = node_root->children.begin(); it != node_root->children.end(); ++it) { - auto child = it->get_second(); + // sort to make output stable + std::vector sorted_keys = node_root->get_sorted_chilren_keys(); + for (const StringRef& key : sorted_keys) { rapidjson::Value value(rapidjson::kObjectType); - get_json_by_column_tree(value, allocator, child.get()); - root.AddMember(rapidjson::StringRef(it->get_first().data, it->get_first().size), value, - allocator); + get_json_by_column_tree(value, allocator, node_root->get_child_node(key).get()); + root.AddMember(rapidjson::StringRef(key.data, key.size), value, allocator); } } @@ -1081,14 +1082,6 @@ bool ColumnObject::serialize_one_row_to_json_format(int row, rapidjson::StringBu VLOG_DEBUG << "dump structure " << JsonFunctions::print_json_value(*doc_structure); #endif for (const auto& subcolumn : subcolumns) { - if (subcolumn->data.data.empty() || subcolumn->data.get_finalized_column_ptr() == nullptr) { - // TODO this is a tmp defensive code to prevent from crash and - // print more info about crash info - LOG(WARNING) << "Dump crash debug info" - << ", structure:" << JsonFunctions::print_json_value(*doc_structure) - << ", num_rows: " << num_rows << ", row_position: " << row; - return false; - } find_and_set_leave_value(subcolumn->data.get_finalized_column_ptr(), subcolumn->path, subcolumn->data.get_least_common_type_serde(), root, doc_structure->GetAllocator(), row); diff --git a/be/src/vec/columns/subcolumn_tree.h b/be/src/vec/columns/subcolumn_tree.h index f895b94ded..53391bf797 100644 --- a/be/src/vec/columns/subcolumn_tree.h +++ b/be/src/vec/columns/subcolumn_tree.h @@ -19,8 +19,11 @@ // and modified by Doris #pragma once +#include + #include "vec/columns/column.h" #include "vec/common/hash_table/hash_map.h" +#include "vec/common/string_ref.h" #include "vec/data_types/data_type.h" #include "vec/json/path_in_data.h" namespace doris::vectorized { @@ -72,6 +75,22 @@ public: StringRef key_ref {strings_pool.insert(key.data(), key.length()), key.length()}; children[key_ref] = std::move(next_node); } + + std::vector get_sorted_chilren_keys() const { + std::vector sorted_keys; + for (auto it = children.begin(); it != children.end(); ++it) { + sorted_keys.push_back(it->get_first()); + } + std::sort(sorted_keys.begin(), sorted_keys.end()); + return sorted_keys; + } + std::shared_ptr get_child_node(StringRef key) const { + auto it = children.find(key); + if (it != children.end()) { + return it->get_second(); + } + return nullptr; + } }; using NodeKind = typename Node::Kind; diff --git a/regression-test/data/variant_p0/compaction/test_compaction.out b/regression-test/data/variant_p0/compaction/test_compaction.out index 5118c2824e..50943aef7b 100644 --- a/regression-test/data/variant_p0/compaction/test_compaction.out +++ b/regression-test/data/variant_p0/compaction/test_compaction.out @@ -36,22 +36,22 @@ 17 {"a":[1]} 18 {"a":["1",2,1.1]} 18 {"a":["1",2,1.1]} -19 {"b":{"c":1},"a":1} -19 {"b":{"c":1},"a":1} -20 {"b":{"c":[{"a":1}]},"a":1} -20 {"b":{"c":[{"a":1}]},"a":1} -21 {"b":{"c":[{"a":1}]},"a":1} -21 {"b":{"c":[{"a":1}]},"a":1} -22 {"b":{"c":[{"a":1}]},"a":1} -22 {"b":{"c":[{"a":1}]},"a":1} -1022 {"b":10,"a":1} -1022 {"b":10,"a":1} -1029 {"b":{"c":1},"a":1} -1029 {"b":{"c":1},"a":1} -1999 {"b":{"c":1},"a":1} -1999 {"b":{"c":1},"a":1} -19921 {"b":10,"a":1} -19921 {"b":10,"a":1} +19 {"a":1,"b":{"c":1}} +19 {"a":1,"b":{"c":1}} +20 {"a":1,"b":{"c":[{"a":1}]}} +20 {"a":1,"b":{"c":[{"a":1}]}} +21 {"a":1,"b":{"c":[{"a":1}]}} +21 {"a":1,"b":{"c":[{"a":1}]}} +22 {"a":1,"b":{"c":[{"a":1}]}} +22 {"a":1,"b":{"c":[{"a":1}]}} +1022 {"a":1,"b":10} +1022 {"a":1,"b":10} +1029 {"a":1,"b":{"c":1}} +1029 {"a":1,"b":{"c":1}} +1999 {"a":1,"b":{"c":1}} +1999 {"a":1,"b":{"c":1}} +19921 {"a":1,"b":10} +19921 {"a":1,"b":10} -- !sql_2 -- 14 [null] @@ -124,22 +124,22 @@ 17 {"a":[1]} 18 {"a":["1",2,1.1]} 18 {"a":["1",2,1.1]} -19 {"b":{"c":1},"a":1} -19 {"b":{"c":1},"a":1} -20 {"b":{"c":[{"a":1}]},"a":1} -20 {"b":{"c":[{"a":1}]},"a":1} -21 {"b":{"c":[{"a":1}]},"a":1} -21 {"b":{"c":[{"a":1}]},"a":1} -22 {"b":{"c":[{"a":1}]},"a":1} -22 {"b":{"c":[{"a":1}]},"a":1} -1022 {"b":10,"a":1} -1022 {"b":10,"a":1} -1029 {"b":{"c":1},"a":1} -1029 {"b":{"c":1},"a":1} -1999 {"b":{"c":1},"a":1} -1999 {"b":{"c":1},"a":1} -19921 {"b":10,"a":1} -19921 {"b":10,"a":1} +19 {"a":1,"b":{"c":1}} +19 {"a":1,"b":{"c":1}} +20 {"a":1,"b":{"c":[{"a":1}]}} +20 {"a":1,"b":{"c":[{"a":1}]}} +21 {"a":1,"b":{"c":[{"a":1}]}} +21 {"a":1,"b":{"c":[{"a":1}]}} +22 {"a":1,"b":{"c":[{"a":1}]}} +22 {"a":1,"b":{"c":[{"a":1}]}} +1022 {"a":1,"b":10} +1022 {"a":1,"b":10} +1029 {"a":1,"b":{"c":1}} +1029 {"a":1,"b":{"c":1}} +1999 {"a":1,"b":{"c":1}} +1999 {"a":1,"b":{"c":1}} +19921 {"a":1,"b":10} +19921 {"a":1,"b":10} -- !sql_22 -- 14 [null] @@ -194,14 +194,14 @@ 16 {"a":"1223"} 17 {"a":[1]} 18 {"a":["1",2,1.1]} -19 {"b":{"c":1},"a":1} -20 {"b":{"c":[{"a":1}]},"a":1} -21 {"b":{"c":[{"a":1}]},"a":1} -22 {"b":{"c":[{"a":1}]},"a":1} -1022 {"b":10,"a":1} -1029 {"b":{"c":1},"a":1} -1999 {"b":{"c":1},"a":1} -19921 {"b":10,"a":1} +19 {"a":1,"b":{"c":1}} +20 {"a":1,"b":{"c":[{"a":1}]}} +21 {"a":1,"b":{"c":[{"a":1}]}} +22 {"a":1,"b":{"c":[{"a":1}]}} +1022 {"a":1,"b":10} +1029 {"a":1,"b":{"c":1}} +1999 {"a":1,"b":{"c":1}} +19921 {"a":1,"b":10} -- !sql_2 -- 14 [null] @@ -247,14 +247,14 @@ 16 {"a":"1223"} 17 {"a":[1]} 18 {"a":["1",2,1.1]} -19 {"b":{"c":1},"a":1} -20 {"b":{"c":[{"a":1}]},"a":1} -21 {"b":{"c":[{"a":1}]},"a":1} -22 {"b":{"c":[{"a":1}]},"a":1} -1022 {"b":10,"a":1} -1029 {"b":{"c":1},"a":1} -1999 {"b":{"c":1},"a":1} -19921 {"b":10,"a":1} +19 {"a":1,"b":{"c":1}} +20 {"a":1,"b":{"c":[{"a":1}]}} +21 {"a":1,"b":{"c":[{"a":1}]}} +22 {"a":1,"b":{"c":[{"a":1}]}} +1022 {"a":1,"b":10} +1029 {"a":1,"b":{"c":1}} +1999 {"a":1,"b":{"c":1}} +19921 {"a":1,"b":10} -- !sql_22 -- 14 [null] diff --git a/regression-test/data/variant_p0/complexjson.out b/regression-test/data/variant_p0/complexjson.out index d5a5154c67..9f55cd03a2 100644 --- a/regression-test/data/variant_p0/complexjson.out +++ b/regression-test/data/variant_p0/complexjson.out @@ -1,17 +1,17 @@ -- This file is automatically generated. You should know what you did if you want to edit this -- !sql -- -1 {"key_0":[{"key_1":[{"key_3":[{"key_7":1025,"key_6":25.5,"key_4":1048576,"key_5":0.0001048576},{"key_7":2,"key_6":"","key_4":null}]}]},{"key_1":[{"key_3":[{"key_7":-922337203685477600.0,"key_6":"aqbjfiruu","key_5":-1},{"key_7":65537,"key_6":"","key_4":""}]},{"key_3":[{"key_7":21474836.48,"key_4":"ghdqyeiom","key_5":1048575}]}]}],"id":1} +1 {"id":1,"key_0":[{"key_1":[{"key_3":[{"key_7":1025,"key_6":25.5,"key_4":1048576,"key_5":0.0001048576},{"key_7":2,"key_6":"","key_4":null}]}]},{"key_1":[{"key_3":[{"key_7":-922337203685477600.0,"key_6":"aqbjfiruu","key_5":-1},{"key_7":65537,"key_6":"","key_4":""}]},{"key_3":[{"key_7":21474836.48,"key_4":"ghdqyeiom","key_5":1048575}]}]}]} -- !sql -- -1 {"key_1":[{"key_2":[{"key_3":[{"key_8":65537},{"key_4":[{"key_5":-0.02},{"key_7":1023},{"key_7":1,"key_6":9223372036854775807}]},{"key_4":[{"key_7":65537,"key_6":null}]}]}]}],"id":1} +1 {"id":1,"key_1":[{"key_2":[{"key_3":[{"key_8":65537},{"key_4":[{"key_5":-0.02},{"key_7":1023},{"key_7":1,"key_6":9223372036854775807}]},{"key_4":[{"key_7":65537,"key_6":null}]}]}]}]} -- !sql -- -1 {"key_0":{"key_4":1,"key_1":{"key_2":1025,"key_3":1},"key_5":256},"key_11":"anve","key_10":65536} +1 {"key_0":{"key_1":{"key_2":1025,"key_3":1},"key_4":1,"key_5":256},"key_10":65536,"key_11":"anve"} 2 {"key_0":[{"key_12":"buwvq","key_11":2.55e-8}]} -- !sql -- -1 {"key_0":[{"key_1":{"key_2":[1,2,3],"key_8":"sffjx"},"key_10":65535,"key_0":-1},{"key_10":10.23,"key_0":922337203.685}],"id":1} +1 {"id":1,"key_0":[{"key_1":{"key_2":[1,2,3],"key_8":"sffjx"},"key_10":65535,"key_0":-1},{"key_10":10.23,"key_0":922337203.685}]} -- !sql -- -1 {"key_0":[{"key_1":[{"key_2":{"key_3":[{"key_4":255},{"key_4":65535},{"key_7":255,"key_6":3}],"key_5":[{"key_7":"nnpqx","key_6":1},{"key_7":255,"key_6":3}]}}]}],"id":1} +1 {"id":1,"key_0":[{"key_1":[{"key_2":{"key_3":[{"key_4":255},{"key_4":65535},{"key_7":255,"key_6":3}],"key_5":[{"key_7":"nnpqx","key_6":1},{"key_7":255,"key_6":3}]}}]}]} diff --git a/regression-test/data/variant_p0/delete_update.out b/regression-test/data/variant_p0/delete_update.out index 6f4eb1123f..0e478bdeb0 100644 --- a/regression-test/data/variant_p0/delete_update.out +++ b/regression-test/data/variant_p0/delete_update.out @@ -1,16 +1,16 @@ -- This file is automatically generated. You should know what you did if you want to edit this -- !sql -- 2 {"updated_value":123} -3 {"c":3.0,"a":3,"b":[3]} -4 {"c":4.0,"a":4,"b":[4]} -5 {"c":5.0,"a":5,"b":[5]} +3 {"a":3,"b":[3],"c":3.0} +4 {"a":4,"b":[4],"c":4.0} +5 {"a":5,"b":[5],"c":5.0} -- !sql -- 2 {"updated_value":123} {"updated_value":123} -6 {"c":4.0,"a":4,"b":[4]} {"updated_value" : 123} +6 {"a":4,"b":[4],"c":4.0} {"updated_value" : 123} 7 {"updated_value":1111} yyy -- !sql -- 2 {"updated_value":123} {"updated_value":123} -6 {"c":4.0,"a":4,"b":[4]} {"updated_value" : 123} +6 {"a":4,"b":[4],"c":4.0} {"updated_value" : 123} diff --git a/regression-test/data/variant_p0/insert_into_select.out b/regression-test/data/variant_p0/insert_into_select.out index ea1714d2ca..3414b2f566 100644 --- a/regression-test/data/variant_p0/insert_into_select.out +++ b/regression-test/data/variant_p0/insert_into_select.out @@ -22,9 +22,9 @@ 5 [5] 5 -- !sql -- -{"c":1.0,"a":1,"b":[1]} -{"c":2.0,"a":2,"b":[1]} -{"c":3.0,"a":3,"b":[3]} -{"c":4.0,"a":4,"b":[4]} -{"c":5.0,"a":5,"b":[5]} +{"a":1,"b":[1],"c":1.0} +{"a":2,"b":[1],"c":2.0} +{"a":3,"b":[3],"c":3.0} +{"a":4,"b":[4],"c":4.0} +{"a":5,"b":[5],"c":5.0} diff --git a/regression-test/data/variant_p0/load.out b/regression-test/data/variant_p0/load.out index 7def94d2fa..a3d237dc15 100644 --- a/regression-test/data/variant_p0/load.out +++ b/regression-test/data/variant_p0/load.out @@ -86,9 +86,9 @@ 123 {"A":123} 123456 {"A":123456} 123456789101112 {"A":123456789101112} -191191 {"c":123,"A":191191,"a":123.0} -1800 {"c":[12345],"A":1800,"a":1.10111} -17211 {"c":111111,"A":17211,"a":1.1111} +191191 {"A":191191,"a":123.0,"c":123} +1800 {"A":1800,"a":1.10111,"c":[12345]} +17211 {"A":17211,"a":1.1111,"c":111111} -- !sql_13 -- \N 123 @@ -106,10 +106,10 @@ \N 123456789101112 {"A":123456789101112} \N \N \N {"AA":[123456]} \N \N \N {"AA":[123456789101112]} \N -123 191191 {"c":123,"A":191191,"a":123.0} \N -123 \N {"c":123456,"a":"123"} \N -1.10111 1800 {"c":[12345],"A":1800,"a":1.10111} \N -1.1111 17211 {"c":111111,"A":17211,"a":1.1111} \N +123 191191 {"A":191191,"a":123.0,"c":123} \N +123 \N {"a":"123","c":123456} \N +1.10111 1800 {"A":1800,"a":1.10111,"c":[12345]} \N +1.1111 17211 {"A":17211,"a":1.1111,"c":111111} \N -- !sql_19 -- \N \N {"oamama":1.1} 1.1 @@ -118,7 +118,7 @@ 123456 -- !sql_21_1 -- -12 {"yyy":456,"xxx":123} +12 {"xxx":123,"yyy":456} -- !sql_21_2 -- [123456] @@ -143,7 +143,7 @@ [123] -- !sql_25 -- -50000 55000.000000002256 6150000 +50000 55000.00000000226 6150000 -- !sql_26 -- 5000 @@ -173,27 +173,27 @@ -- !sql_30 -- {"a":1123} -{"a":11245,"c":{"c":456,"e":7.111},"b":[123,{"xx":1}]} -{"xxxx":"kaana","a":1234} -{"xxxx":"kaana","a":1234} -{"xxxx":"kaana","a":1234} -{"xxxx":"kaana","a":1234} -{"xxxx":"kaana","a":1234} -{"xxxx":"kaana","a":1234} -{"xxxx":"kaana","a":1234} -{"xxxx":"kaana","a":1234} +{"a":11245,"b":[123,{"xx":1}],"c":{"c":456,"e":7.111}} +{"a":1234,"xxxx":"kaana"} +{"a":1234,"xxxx":"kaana"} +{"a":1234,"xxxx":"kaana"} +{"a":1234,"xxxx":"kaana"} +{"a":1234,"xxxx":"kaana"} +{"a":1234,"xxxx":"kaana"} +{"a":1234,"xxxx":"kaana"} +{"a":1234,"xxxx":"kaana"} -- !sql_31 -- -{"a":1123,"c":{"c":456,"e":7.111},"oooo":{"xxxx":{"xxx":123}},"b":[123,{"xx":1}]} -{"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana","a":1234} -{"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana","a":1234} -{"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana","a":1234} -{"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana","a":1234} -{"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana","a":1234} -{"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana","a":1234} -{"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana","a":1234} -{"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana","a":1234} -{"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana","a":1234} +{"a":1123,"b":[123,{"xx":1}],"c":{"c":456,"e":7.111},"oooo":{"xxxx":{"xxx":123}}} +{"a":1234,"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana"} +{"a":1234,"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana"} +{"a":1234,"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana"} +{"a":1234,"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana"} +{"a":1234,"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana"} +{"a":1234,"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana"} +{"a":1234,"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana"} +{"a":1234,"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana"} +{"a":1234,"ddd":{"aaa":123,"mxmxm":[456,"789"]},"xxxx":"kaana"} -- !sql_32 -- "2023-06-21 16:35:58.468 INFO [sino-webhook,6dee61f0605a70f3,6dee61f0605a70f3,true] 1 --- [io-8001-exec-13] c.s.c.a.CustomRequestBodyAdviceAdapter : REQUEST DATA: {String={\\"id\\":\\"3293880a36cd163754ea4f90270331f6\\",\\"token\\":\\"3293880a36cd163754ea4f90270331f6\\",\\"line_items\\":[{\\"id\\":43073082228985,\\"properties\\":{},\\"quantity\\":1000000,\\"variant_id\\":43073082228985,\\"key\\":\\"43073082228985:381f0b4b03d0c76493aa028c4ed006a9\\",\\"discounted_price\\":\\"28.95\\",\\"discounts\\":[],\\"gift_card\\":false,\\"grams\\":0,\\"line_price\\":\\"28950000.00\\",\\"original_line_price\\":\\"28950000.00\\",\\"original_price\\":\\"28.95\\",\\"price\\":\\"28.95\\",\\"product_id\\":7706860617977,\\"sku\\":\\"56011440_Shirt(A)||Brown||M9\\",\\"taxable\\":false,\\"title\\":\\"Men's Hawaiian Short Sleeve Shirt - Shirt(A) \\\\/ Brown \\\\/ M\\",\\"total_discount\\":\\"0.00\\",\\"vendor\\":\\"XT\\",\\"discounted_price_set\\":{\\"shop_money\\":{\\"amount\\":\\"28.95\\",\\"currency_code\\":\\"USD\\"},\\"presentment_money\\":{\\"amount\\":\\"28.95\\",\\"currency_code\\":\\"USD\\"}},\\"line_price_set\\":{\\"shop_money\\":{\\"amount\\":\\"28950000.0\\",\\"currency_code\\":\\"USD\\"},\\"presentment_money\\":{\\"amount\\":\\"28950000.0\\",\\"currency_code\\":\\"USD\\"}},\\"original_line_price_set\\":{\\"shop_money\\":{\\"amount\\":\\"28950000.0\\",\\"currency_code\\":\\"USD\\"},\\"presentment_money\\":{\\"amount\\":\\"28950000.0\\",\\"currency_code\\":\\"USD\\"}},\\"price_set\\":{\\"shop_money\\":{\\"amount\\":\\"28.95\\",\\"currency_code\\":\\"USD\\"},\\"presentment_money\\":{\\"amount\\":\\"28.95\\",\\"currency_code\\":\\"USD\\"}},\\"total_discount_set\\":{\\"shop_money\\":{\\"amount\\":\\"0.0\\",\\"currency_code\\":\\"USD\\"},\\"presentment_money\\":{\\"amount\\":\\"0.0\\",\\"currency_code\\":\\"USD\\"}}}],\\"note\\":null,\\"updated_at\\":\\"2023-06-21T08:35:56.674Z\\",\\"created_at\\":\\"2023-06-21T08:35:48.174Z\\"}}" @@ -227,16 +227,16 @@ \N \N \N -- !sql_36_2 -- -7702 {"url":"https://api.github.com/repos/magik6k/BitBuffer","id":28677864,"name":"magik6k/BitBuffer"} -7701 {"url":"https://api.github.com/repos/wllmtrng/wllmtrng.github.io","id":18089434,"name":"wllmtrng/wllmtrng.github.io"} -7700 {"url":"https://api.github.com/repos/ACID-Scripts/TBC","id":23724137,"name":"ACID-Scripts/TBC"} -7699 {"url":"https://api.github.com/repos/chrisjimenez/IpsePuppet","id":28678128,"name":"chrisjimenez/IpsePuppet"} -7698 {"url":"https://api.github.com/repos/antonioortegajr/beerfind.me","id":28573267,"name":"antonioortegajr/beerfind.me"} -7697 {"url":"https://api.github.com/repos/XLabs/Xamarin-Forms-Labs","id":20463939,"name":"XLabs/Xamarin-Forms-Labs"} -7696 {"url":"https://api.github.com/repos/Fathalian/Guild","id":26995510,"name":"Fathalian/Guild"} -7695 {"url":"https://api.github.com/repos/kevinhofmaenner/blackjack","id":28652857,"name":"kevinhofmaenner/blackjack"} -7694 {"url":"https://api.github.com/repos/marklrh/ocaml-cohttp-test","id":27470715,"name":"marklrh/ocaml-cohttp-test"} -7693 {"url":"https://api.github.com/repos/plouc/mozaik","id":28498113,"name":"plouc/mozaik"} +7702 {"id":28677864,"name":"magik6k/BitBuffer","url":"https://api.github.com/repos/magik6k/BitBuffer"} +7701 {"id":18089434,"name":"wllmtrng/wllmtrng.github.io","url":"https://api.github.com/repos/wllmtrng/wllmtrng.github.io"} +7700 {"id":23724137,"name":"ACID-Scripts/TBC","url":"https://api.github.com/repos/ACID-Scripts/TBC"} +7699 {"id":28678128,"name":"chrisjimenez/IpsePuppet","url":"https://api.github.com/repos/chrisjimenez/IpsePuppet"} +7698 {"id":28573267,"name":"antonioortegajr/beerfind.me","url":"https://api.github.com/repos/antonioortegajr/beerfind.me"} +7697 {"id":20463939,"name":"XLabs/Xamarin-Forms-Labs","url":"https://api.github.com/repos/XLabs/Xamarin-Forms-Labs"} +7696 {"id":26995510,"name":"Fathalian/Guild","url":"https://api.github.com/repos/Fathalian/Guild"} +7695 {"id":28652857,"name":"kevinhofmaenner/blackjack","url":"https://api.github.com/repos/kevinhofmaenner/blackjack"} +7694 {"id":27470715,"name":"marklrh/ocaml-cohttp-test","url":"https://api.github.com/repos/marklrh/ocaml-cohttp-test"} +7693 {"id":28498113,"name":"plouc/mozaik","url":"https://api.github.com/repos/plouc/mozaik"} -- !sql_36_3 -- 2 {"updated_value":10} diff --git a/regression-test/data/variant_p0/schema_change/test_alter_table_column_with_delete.out b/regression-test/data/variant_p0/schema_change/test_alter_table_column_with_delete.out index a23f0b96c4..8b458573cf 100644 --- a/regression-test/data/variant_p0/schema_change/test_alter_table_column_with_delete.out +++ b/regression-test/data/variant_p0/schema_change/test_alter_table_column_with_delete.out @@ -1,12 +1,12 @@ -- This file is automatically generated. You should know what you did if you want to edit this -- !sql -- -1 {"c":3,"b":2,"a":1} 1.0 +1 {"a":1,"b":2,"c":3} 1.0 3 {"g":7,"h":8,"i":9} 3.0 -4 {"k":11,"l":12,"j":10} 4.0 +4 {"j":10,"k":11,"l":12} 4.0 -- !sql -- -1 {"c":3,"b":2,"a":1} 1 -2 {"y":5,"x":4,"f":3} 2 +1 {"a":1,"b":2,"c":3} 1 +2 {"f":3,"x":4,"y":5} 2 3 {"g":7,"h":8,"i":9} 3 -4 {"k":11,"l":12,"j":10} 4 +4 {"j":10,"k":11,"l":12} 4 diff --git a/regression-test/data/variant_p0/sql/gh_data.out b/regression-test/data/variant_p0/sql/gh_data.out index 4c34edabe4..77e38f4ac2 100644 --- a/regression-test/data/variant_p0/sql/gh_data.out +++ b/regression-test/data/variant_p0/sql/gh_data.out @@ -46,16 +46,16 @@ disclose/diodata 2 73801003 -- !gh_data_12 -- -27 {"url":"https://api.github.com/repos/leonardomso/33-js-concepts","id":147350463,"name":"leonardomso/33-js-concepts"} -36 {"url":"https://api.github.com/repos/odeke-em/drive","id":26109545,"name":"odeke-em/drive"} -46 {"url":"https://api.github.com/repos/GO-LiFE/GoFIT_SDK_Android","id":141905736,"name":"GO-LiFE/GoFIT_SDK_Android"} -56 {"url":"https://api.github.com/repos/MrXujiang/h5-Dooring","id":289417971,"name":"MrXujiang/h5-Dooring"} -86 {"url":"https://api.github.com/repos/redsaph/cleartext","id":106453399,"name":"redsaph/cleartext"} -98 {"url":"https://api.github.com/repos/sherlock-project/sherlock","id":162998479,"name":"sherlock-project/sherlock"} -101 {"url":"https://api.github.com/repos/okandavut/react-spotify-nowplaying","id":326215605,"name":"okandavut/react-spotify-nowplaying"} -112 {"url":"https://api.github.com/repos/sentriz/gonic","id":178435468,"name":"sentriz/gonic"} -122 {"url":"https://api.github.com/repos/netlify-labs/react-netlify-identity-widget","id":182606378,"name":"netlify-labs/react-netlify-identity-widget"} -169 {"url":"https://api.github.com/repos/microsoft/BotBuilder-Samples","id":68730444,"name":"microsoft/BotBuilder-Samples"} +27 {"id":147350463,"name":"leonardomso/33-js-concepts","url":"https://api.github.com/repos/leonardomso/33-js-concepts"} +36 {"id":26109545,"name":"odeke-em/drive","url":"https://api.github.com/repos/odeke-em/drive"} +46 {"id":141905736,"name":"GO-LiFE/GoFIT_SDK_Android","url":"https://api.github.com/repos/GO-LiFE/GoFIT_SDK_Android"} +56 {"id":289417971,"name":"MrXujiang/h5-Dooring","url":"https://api.github.com/repos/MrXujiang/h5-Dooring"} +86 {"id":106453399,"name":"redsaph/cleartext","url":"https://api.github.com/repos/redsaph/cleartext"} +98 {"id":162998479,"name":"sherlock-project/sherlock","url":"https://api.github.com/repos/sherlock-project/sherlock"} +101 {"id":326215605,"name":"okandavut/react-spotify-nowplaying","url":"https://api.github.com/repos/okandavut/react-spotify-nowplaying"} +112 {"id":178435468,"name":"sentriz/gonic","url":"https://api.github.com/repos/sentriz/gonic"} +122 {"id":182606378,"name":"netlify-labs/react-netlify-identity-widget","url":"https://api.github.com/repos/netlify-labs/react-netlify-identity-widget"} +169 {"id":68730444,"name":"microsoft/BotBuilder-Samples","url":"https://api.github.com/repos/microsoft/BotBuilder-Samples"} -- !gh_data_13 -- 2051941 1 diff --git a/regression-test/data/variant_p0/with_index/load.out b/regression-test/data/variant_p0/with_index/load.out index 61ffbfbe2e..9d7795e993 100644 --- a/regression-test/data/variant_p0/with_index/load.out +++ b/regression-test/data/variant_p0/with_index/load.out @@ -13,16 +13,16 @@ 0 -- !sql_inv5 -- -1 {"b1":3,"a1":0} hello world +1 {"a1":0,"b1":3} hello world 2 {"a2":123} world 3 {"a3":123} hello world -4 {"b2":3,"b1":0} hello world +4 {"b1":0,"b2":3} hello world 5 {"b2":123} world 6 {"b3":123} hello world -- !sql_inv6 -- 9 {"a3":123} hello world 8 {"a2":123} world -7 {"b1":3,"a1":0} hello world +7 {"a1":0,"b1":3} hello world 6 {"b3":123} hello world diff --git a/regression-test/data/variant_p0/with_index/var_index.out b/regression-test/data/variant_p0/with_index/var_index.out index a1fa5c0444..d8b7417852 100644 --- a/regression-test/data/variant_p0/with_index/var_index.out +++ b/regression-test/data/variant_p0/with_index/var_index.out @@ -1,10 +1,10 @@ -- This file is automatically generated. You should know what you did if you want to edit this -- !sql -- -2 {"c":1181111,"a":18811,"b":"hello world"} -3 {"c":11111,"a":18811,"b":"hello wworld"} -4 {"c":8181111,"a":1234,"b":"hello xxx world"} +2 {"a":18811,"b":"hello world","c":1181111} +3 {"a":18811,"b":"hello wworld","c":11111} +4 {"a":1234,"b":"hello xxx world","c":8181111} -- !sql -- -2 {"c":1181111,"a":18811,"b":"hello world"} -4 {"c":8181111,"a":1234,"b":"hello xxx world"} +2 {"a":18811,"b":"hello world","c":1181111} +4 {"a":1234,"b":"hello xxx world","c":8181111} diff --git a/regression-test/suites/variant_p0/desc.groovy b/regression-test/suites/variant_p0/desc.groovy index 281893dd42..f97d4e8e89 100644 --- a/regression-test/suites/variant_p0/desc.groovy +++ b/regression-test/suites/variant_p0/desc.groovy @@ -45,7 +45,7 @@ suite("regression_test_variant_desc", "nonConcurrent"){ } } - def create_table = { table_name, buckets="auto" -> + def create_table = { table_name, buckets="1" -> sql "DROP TABLE IF EXISTS ${table_name}" sql """ CREATE TABLE IF NOT EXISTS ${table_name} ( @@ -58,7 +58,7 @@ suite("regression_test_variant_desc", "nonConcurrent"){ """ } - def create_table_partition = { table_name, buckets="auto" -> + def create_table_partition = { table_name, buckets="1" -> sql "DROP TABLE IF EXISTS ${table_name}" sql """ CREATE TABLE IF NOT EXISTS ${table_name} (