This is an automated email from the ASF dual-hosted git repository.

morningman pushed a change to branch branch-1.2-unstable
in repository https://gitbox.apache.org/repos/asf/doris.git


 discard 6ac4dd861b [temp](statistics) disable statistic tables
     add da0b09caea [fix](Nereids) DateTimeType migrate to DateType is wrong 
when hour, minute and second all zero (#14327)
     add 2b6f85ab96 [chore](macOS) Fix BE UT (#14307)
     add 9e25aa8d3e [feature](Nereids): Add subgraph enumerator #14291
     add 7952bce03f [compatibility](Nereids) process escape in string literal 
(#14294)
     add 1f326fc0d6 [enhancement](be)limit mem cost to 16m when pre serialize 
keys in agg node (#14321)
     add a1d02f36ac [feature](table-valued-function) support `hdfs()` tvf 
(#14213)
     add 2c4236fd24 [improvement](ctas) use string type for varchar/char/string 
(#14382)
     add 734525de86 [Bug](runtime filter) fix minmax filter not copy rightly on 
shared hash join (#14367)
     add bd5882d08a [fix](datax)doris writer write error (#14276)
     add eab0af7afe [optimization](array-type) optimize the export precision of 
floating point numbers (#14261)
     add 68da6bccb7 [fix](type) fix DECIMAL scale when cast function on fe 
(#12877)
     add 21416f9947 [enhancement](memory) Support Jemalloc metrics and default 
allocator changed to Jemalloc  (#14384)
     add a82896f420 [fix](broker-load) fix that broker load don not set be exec 
version and limit node channel memory (#14399)
     add c4bade71c8 [refactor](nereids) remove ColumnStatistics.UNKNOWN from 
StatsDerive (#14343)
     add 63a2344e68 [Enhancement](Nereids) Refactor AggregateFunction and 
support explain plan (#14380)
     add eb76160b48 [chore](third-party) Use GNU official mirror to boost the 
download speed (#14358)
     add 02372ca2ea [test](jdbc external table) add new jdbc mysql external 
table (#14323)
     add b4aef889f2 [feature-array](array-function) add array constructor 
function `array()` (#14250)
     add 512b787559 [fix](parquet-reader) fix stack-use-after-return error 
(#14411)
     add 1b6e872a8a [improvement](common) table name length exceeds limit error 
message (#14368)
     add f5f2e84e31 [refactor](planner) remove the limit return rows of order 
by (#12478)
     add 1f2c06dd6e [enhancement](rewrite) Remove unused wide common factors to 
improve scan performance in ExtractCommonFactorsRule (#14381)
     add 1482ab32b6 [tools](tpch)fix invalid download url (#14329)
     add 2c42f0a905 [refactor](decimalv3) Refine code for DecimalV3 (#14394)
     add 5dfe5ef965 [test](hive catalog)add hive catalog test case (#14217)
     add 3e1e8db173 [fix](exec) fix thread token shutdown (#14418)
     add 3489f4826c [fix](test) sync conf used in pipeline and in repository 
(#14414)
     add 2ccb5209a0 (improvement)[doc] add document version tag instruction 
(#14406)
     add 71e80e8957 [typo](docs)Performance test documentation update (#14147)
     add c29975d347 [Docs](function) Add some function do not in sidebars 
(#14426)
     add 98cea90950 [typo](docs)benchmark doc fix number (#14427)
     add 3f29e3bff6 [bug](test) fix regression test of jdbc postgresql table 
core (#14417)
     new 1192864e6f [temp](statistics) disable statistic tables

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (6ac4dd861b)
            \
             N -- N -- N   refs/heads/branch-1.2-unstable (1192864e6f)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .licenserc.yaml                                    |   2 +
 be/src/common/config.h                             |   2 -
 be/src/exec/csv_scan_node.cpp                      |   2 +-
 be/src/exec/olap_common.h                          |   8 +-
 be/src/exec/table_connector.cpp                    |   2 +-
 be/src/exec/tablet_sink.cpp                        |   6 +
 be/src/exprs/anyval_util.cpp                       |   6 +-
 be/src/exprs/anyval_util.h                         |   2 +-
 be/src/exprs/binary_predicate.cpp                  |  14 +-
 be/src/exprs/cast_functions.cpp                    | 249 -------
 be/src/exprs/cast_functions.h                      |  22 -
 be/src/exprs/create_predicate_function.h           |   4 +-
 be/src/exprs/encryption_functions.h                |   4 +-
 be/src/exprs/expr.cpp                              |   2 +-
 be/src/exprs/expr.h                                |   4 +-
 be/src/exprs/expr_context.cpp                      |   2 +-
 be/src/exprs/literal.cpp                           |   4 +-
 be/src/exprs/runtime_filter.cpp                    |  52 +-
 be/src/exprs/scalar_fn_call.cpp                    |   2 +-
 be/src/exprs/slot_ref.cpp                          |   2 +-
 be/src/http/default_path_handlers.cpp              |  16 +-
 be/src/olap/aggregate_func.cpp                     |  15 +-
 be/src/olap/column_vector.cpp                      |   8 +-
 be/src/olap/delete_handler.cpp                     |   2 +-
 be/src/olap/field.h                                |   4 +-
 be/src/olap/in_list_predicate.h                    |   2 +-
 be/src/olap/key_coder.cpp                          |   2 +-
 be/src/olap/olap_common.h                          |   2 +-
 be/src/olap/predicate_creator.h                    |   6 +-
 be/src/olap/row_block2.cpp                         |  10 +-
 .../olap/rowset/segment_v2/bitmap_index_writer.cpp |   4 +-
 be/src/olap/rowset/segment_v2/encoding_info.cpp    |   6 +-
 be/src/olap/rowset/segment_v2/zone_map_index.cpp   |   2 +-
 be/src/olap/schema.cpp                             |   4 +-
 be/src/olap/tablet_schema.cpp                      |  10 +-
 be/src/olap/types.cpp                              |   4 +-
 be/src/olap/types.h                                |   6 +-
 be/src/runtime/define_primitive_type.h             |   2 +-
 be/src/runtime/fragment_mgr.cpp                    |  11 +-
 be/src/runtime/mem_pool.cpp                        |   5 +-
 be/src/runtime/mem_pool.h                          |  15 +-
 be/src/runtime/mysql_result_writer.cpp             |   2 +-
 be/src/runtime/plan_fragment_executor.cpp          |   4 +-
 be/src/runtime/primitive_type.cpp                  |  22 +-
 be/src/runtime/primitive_type.h                    |   6 +-
 be/src/runtime/raw_value.cpp                       |  22 +-
 be/src/runtime/raw_value.h                         |  12 +-
 be/src/runtime/types.cpp                           |  10 +-
 be/src/runtime/types.h                             |   6 +-
 be/src/service/doris_main.cpp                      |   1 -
 be/src/udf/udf.h                                   |   2 +-
 be/src/util/debug/leakcheck_disabler.h             |   2 +-
 be/src/util/mem_info.cpp                           |  45 +-
 be/src/util/mem_info.h                             |  57 +-
 be/src/util/string_parser.hpp                      |  33 +-
 be/src/util/string_util.h                          |   2 +-
 be/src/util/symbols_util.cpp                       |   2 +-
 be/src/util/system_metrics.cpp                     |  81 +++
 be/src/vec/CMakeLists.txt                          |   1 +
 .../aggregate_functions/aggregate_function_avg.cpp |   4 +-
 .../aggregate_functions/aggregate_function_avg.h   |  45 +-
 .../aggregate_function_avg_weighted.cpp            |   5 +-
 .../aggregate_function_avg_weighted.h              |   4 +-
 .../aggregate_function_collect.cpp                 |   2 +
 .../aggregate_function_collect.h                   |   6 +-
 .../aggregate_function_min_max.cpp                 |   4 +
 .../aggregate_function_min_max.h                   |  40 +-
 .../aggregate_function_min_max_by.cpp              |  10 +-
 .../aggregate_function_product.h                   |   4 +-
 .../aggregate_function_stddev.cpp                  |   5 +
 .../aggregate_functions/aggregate_function_sum.cpp |   4 +-
 .../aggregate_function_uniq.cpp                    |   3 +
 be/src/vec/aggregate_functions/helpers.h           |   6 +
 be/src/vec/columns/column_decimal.cpp              |  76 ++-
 be/src/vec/columns/column_decimal.h                |  64 +-
 be/src/vec/columns/columns_number.h                |   1 +
 be/src/vec/common/columns_hashing.h                |  22 +-
 be/src/vec/common/field_visitors.h                 |  24 +-
 be/src/vec/common/hash_table/hash.h                |   7 +
 be/src/vec/core/block.cpp                          |   2 +-
 be/src/vec/core/call_on_type_index.h               |   9 +
 be/src/vec/core/decimal_comparison.h               |  60 +-
 be/src/vec/core/field.cpp                          |  70 +-
 be/src/vec/core/field.h                            |  58 +-
 be/src/vec/core/sort_block.h                       |  14 +-
 be/src/vec/core/types.h                            | 113 ++-
 be/src/vec/data_types/data_type.cpp                |   2 +
 be/src/vec/data_types/data_type.h                  |   8 +-
 be/src/vec/data_types/data_type_decimal.cpp        |  54 +-
 be/src/vec/data_types/data_type_decimal.h          | 181 +++--
 be/src/vec/data_types/data_type_factory.cpp        |  12 +-
 be/src/vec/data_types/data_type_factory.hpp        |   2 +
 be/src/vec/data_types/data_type_number_base.cpp    |   9 +-
 be/src/vec/data_types/get_least_supertype.cpp      |   9 +-
 be/src/vec/exec/format/format_common.h             |   3 +-
 be/src/vec/exec/format/orc/vorc_reader.cpp         |   3 +
 be/src/vec/exec/format/parquet/parquet_common.cpp  |  13 +
 be/src/vec/exec/format/parquet/parquet_pred_cmp.h  |  32 +-
 be/src/vec/exec/format/parquet/vparquet_reader.cpp |   4 +
 be/src/vec/exec/join/vhash_join_node.cpp           |   2 +-
 be/src/vec/exec/join/vnested_loop_join_node.cpp    |  11 +
 be/src/vec/exec/join/vnested_loop_join_node.h      |   2 +
 be/src/vec/exec/scan/vscan_node.cpp                |   4 +-
 be/src/vec/exec/vaggregation_node.cpp              |  41 +-
 be/src/vec/exec/vaggregation_node.h                |  29 +-
 be/src/vec/exec/vjdbc_connector.cpp                |  30 +
 be/src/vec/exec/vschema_scan_node.cpp              |   2 +-
 be/src/vec/exec/vset_operation_node.cpp            |   2 +-
 be/src/vec/exprs/vliteral.cpp                      |  12 +-
 .../functions/array/function_array_aggregation.cpp |  18 +-
 .../functions/array/function_array_constructor.cpp |  90 +++
 .../functions/array/function_array_register.cpp    |   2 +
 be/src/vec/functions/function_binary_arithmetic.h  |  58 +-
 be/src/vec/functions/function_case.h               |  11 +-
 be/src/vec/functions/function_cast.h               |  21 +-
 be/src/vec/functions/function_coalesce.cpp         |   9 +-
 be/src/vec/functions/function_variadic_arguments.h |   4 +-
 be/src/vec/functions/functions_comparison.h        |   7 +
 be/src/vec/io/io_helper.h                          |  54 +-
 be/src/vec/olap/olap_data_convertor.cpp            |   4 +-
 be/src/vec/runtime/vfile_result_writer.cpp         |   2 +-
 be/src/vec/runtime/vorc_writer.cpp                 |  38 +-
 be/src/vec/runtime/vparquet_writer.cpp             |   4 +-
 be/src/vec/sink/vmysql_result_writer.cpp           |  38 +-
 be/src/vec/sink/vmysql_table_writer.cpp            |   2 +-
 be/src/vec/utils/template_helpers.hpp              |   9 +-
 be/test/CMakeLists.txt                             |   5 +-
 be/test/env/env_posix_test.cpp                     |   4 +
 .../test_data/parquet_scanner/dict-decoder.txt     |  24 +-
 .../test_data/parquet_scanner/group-reader.txt     |  20 +-
 .../test_data/parquet_scanner/type-decoder.txt     |  20 +-
 be/test/runtime/memory_scratch_sink_test.cpp       |   2 +-
 be/test/testutil/any_type.h                        |  86 +++
 be/test/testutil/test_util.cpp                     |  10 +
 be/test/util/arrow/arrow_work_flow_test.cpp        |   2 +-
 be/test/util/path_util_test.cpp                    |   4 +
 be/test/util/threadpool_test.cpp                   |   6 +
 be/test/vec/core/block_test.cpp                    |   6 +-
 be/test/vec/exec/vjson_scanner_test.cpp            |   4 +-
 be/test/vec/function/function_test_util.cpp        |  60 +-
 be/test/vec/function/function_test_util.h          |  21 +-
 build.sh                                           |   2 +-
 .../docker-compose/hive/scripts/create.hql         | 148 ++++
 .../hive/scripts/csv_format_test/all_types.csv     | 120 ++++
 .../scripts/csv_format_test}/array_malformat.csv   |   0
 .../hive/scripts/csv_format_test}/array_normal.csv |   0
 .../hive/scripts/csv_format_test/student.csv       |  10 +
 .../scripts/csv_format_test/student_with_names.csv |  11 +
 .../student_with_names_and_types.csv               |  12 +
 .../hive/scripts/data_case/account_fund/data_file  |   2 +
 .../hive/scripts/data_case/hive01/data_file        |   2 +
 .../hive/scripts/data_case/lineorder/data_file     |   4 +
 .../hive/scripts/data_case/sale_table/data_file    |   2 +
 .../hive/scripts/data_case/string_table/data_file  |   3 +
 .../hive/scripts/data_case/student/data_file       |   2 +
 .../hive/scripts/data_case/t_hive/data_file        |   2 +
 .../hive/scripts/data_case/test1/data_file         |   4 +
 .../hive/scripts/data_case/test2/data_file         |   3 +
 .../scripts/data_case/test_hive_doris/data_file    |   4 +
 .../docker-compose/hive/scripts/hive-metastore.sh  |   6 +-
 .../scripts/json_format_test/one_array_json.json   |  52 ++
 .../json_format_test/simple_object_json.json       |   4 +-
 .../docker-compose/mysql/init/03-create-table.sql  |  58 +-
 .../docker-compose/mysql/init/04-insert.sql        |  30 +-
 .../community/how-to-contribute/contribute-doc.md  | 121 +++-
 docs/en/docs/advanced/variables.md                 |   6 +-
 docs/en/docs/benchmark/ssb.md                      | 390 ++++++++---
 docs/en/docs/benchmark/tpch.md                     | 752 ++++++++++++++++++--
 .../sql-functions/array-functions/array.md         |  84 +++
 .../Create/CREATE-TABLE-AS-SELECT.md               |   1 +
 docs/images/image-20220614114351241.png            | Bin 92508 -> 0 bytes
 docs/images/ssb.png                                | Bin 0 -> 84078 bytes
 docs/images/ssb_flat.png                           | Bin 0 -> 83556 bytes
 docs/images/ssb_v11_v015_compare.png               | Bin 86762 -> 0 bytes
 docs/images/tpch.png                               | Bin 0 -> 81771 bytes
 docs/sidebars.json                                 |  22 +-
 .../community/how-to-contribute/contribute-doc.md  | 121 +++-
 docs/zh-CN/docs/advanced/variables.md              |   4 +
 docs/zh-CN/docs/benchmark/ssb.md                   | 409 ++++++++---
 docs/zh-CN/docs/benchmark/tpch.md                  | 759 +++++++++++++++++++--
 .../sql-functions/array-functions/array.md         |  84 +++
 .../Create/CREATE-TABLE-AS-SELECT.md               |   1 +
 extension/DataX/doriswriter/doc/doriswriter.md     |   3 +-
 .../doriswriter/DorisStreamLoadObserver.java       |  11 +-
 .../antlr4/org/apache/doris/nereids/DorisLexer.g4  |   6 +
 .../antlr4/org/apache/doris/nereids/DorisParser.g4 |  23 +-
 .../java/org/apache/doris/analysis/CastExpr.java   |   7 +-
 .../org/apache/doris/analysis/DecimalLiteral.java  |  14 +
 .../org/apache/doris/analysis/ExplainOptions.java  |  21 +-
 .../apache/doris/analysis/FunctionCallExpr.java    |  18 +-
 .../java/org/apache/doris/analysis/SlotRef.java    |  13 +
 .../java/org/apache/doris/backup/S3Storage.java    |   4 +-
 .../apache/doris/catalog/AggregateFunction.java    |  24 +
 .../apache/doris/catalog/FunctionSignature.java    |  27 +-
 .../org/apache/doris/catalog/PrimitiveType.java    |   4 +-
 .../org/apache/doris/catalog/ScalarFunction.java   |   7 +
 .../main/java/org/apache/doris/catalog/Type.java   |   2 +-
 .../java/org/apache/doris/common/ErrorCode.java    |   4 +-
 .../java/org/apache/doris/common/FeNameFormat.java |   7 +-
 .../apache/doris/datasource/InternalCatalog.java   |   4 +-
 .../org/apache/doris/nereids/NereidsPlanner.java   |  93 ++-
 .../org/apache/doris/nereids/StatementContext.java |   2 +
 .../glue/translator/ExpressionTranslator.java      | 111 ++-
 .../glue/translator/PhysicalPlanTranslator.java    |   6 +-
 .../doris/nereids/parser/LogicalPlanBuilder.java   |  95 ++-
 .../apache/doris/nereids/parser/NereidsParser.java |  17 +-
 .../doris/nereids/rules/analysis/BindFunction.java |   4 +-
 .../rewrite/rules/SimplifyComparisonPredicate.java |   2 +-
 .../nereids/rules/joinreorder/hypergraph/Edge.java |  15 +-
 .../joinreorder/hypergraph/GraphSimplifier.java    |  12 +-
 .../rules/joinreorder/hypergraph/HyperGraph.java   |  22 +-
 .../nereids/rules/joinreorder/hypergraph/Node.java |  41 +-
 .../joinreorder/hypergraph/SubgraphEnumerator.java | 194 ++++++
 .../joinreorder/hypergraph/bitmap/Bitmap.java}     |  36 +-
 .../hypergraph/bitmap/SubsetIterator.java          |  84 +++
 .../hypergraph/receiver/AbstractReceiver.java}     |  19 +-
 .../{Receiver.java => receiver/Counter.java}       |  50 +-
 .../{Receiver.java => receiver/PlanTable.java}     |  39 +-
 .../rules/rewrite/AggregateDisassemble.java        |  10 +-
 .../doris/nereids/stats/ExpressionEstimation.java  |  14 +-
 .../doris/nereids/stats/FilterEstimation.java      |   6 +-
 .../doris/nereids/stats/StatsCalculator.java       |   2 +-
 .../doris/nereids/stats/StatsCalculatorV2.java     |   3 -
 .../doris/nereids/trees/expressions/Cast.java      |   4 +-
 .../nereids/trees/expressions/TVFProperties.java   |   2 +-
 .../trees/expressions/functions/BoundFunction.java | 168 ++++-
 .../expressions/functions/ComputeSignature.java    |   6 +-
 .../{ExpressionTrait.java => CustomSignature.java} |  36 +-
 .../functions/DateTimeWithPrecision.java           |   8 +-
 .../functions/ExplicitlyCastableSignature.java     |   9 +-
 .../expressions/functions/ExpressionTrait.java     |   4 +
 .../trees/expressions/functions/FunctionTrait.java |  18 +
 .../expressions/functions/IdenticalSignature.java  |   9 +-
 .../functions/ImplicitlyCastableSignature.java     |   9 +-
 .../functions/NullOrIdenticalSignature.java        |   9 +-
 .../functions/agg/AggregateFunction.java           |  81 ++-
 .../expressions/functions/agg/AggregateParam.java  |  57 +-
 .../trees/expressions/functions/agg/Avg.java       |  68 +-
 .../expressions/functions/agg/BitmapIntersect.java |  33 +-
 .../expressions/functions/agg/BitmapUnion.java     |  33 +-
 .../functions/agg/BitmapUnionCount.java            |  33 +-
 .../expressions/functions/agg/BitmapUnionInt.java  |  44 +-
 .../trees/expressions/functions/agg/Count.java     |  13 +-
 .../expressions/functions/agg/GroupBitmapXor.java  |  37 +-
 .../trees/expressions/functions/agg/HllUnion.java  |  39 +-
 .../expressions/functions/agg/HllUnionAgg.java     |  33 +-
 .../trees/expressions/functions/agg/Max.java       |  19 +-
 .../trees/expressions/functions/agg/Min.java       |  18 +-
 .../trees/expressions/functions/agg/Sum.java       |  57 +-
 .../trees/expressions/functions/scalar/If.java     |   9 +-
 .../functions/scalar/ScalarFunction.java           | 170 -----
 .../expressions/functions/scalar/StrToDate.java    |   6 +-
 .../expressions/functions/scalar/Substring.java    |   5 +-
 .../trees/expressions/functions/table/Numbers.java |  15 +-
 .../functions/table/TableValuedFunction.java       |   7 +-
 .../trees/plans/commands/ExplainCommand.java       |  18 +-
 .../trees/plans/physical/PhysicalTVFRelation.java  |   2 +-
 .../apache/doris/nereids/types/PartialAggType.java |  99 +++
 .../apache/doris/planner/SingleNodePlanner.java    |   7 +-
 .../doris/planner/external/QueryScanProvider.java  |  17 +-
 .../doris/planner/external/TVFScanProvider.java    |   4 +
 .../main/java/org/apache/doris/qe/Coordinator.java |   6 +-
 .../java/org/apache/doris/qe/SessionVariable.java  |   7 +
 .../doris/rewrite/ExtractCommonFactorsRule.java    |  12 +-
 .../apache/doris/statistics/ColumnStatistic.java   |  10 +-
 .../doris/statistics/ColumnStatisticBuilder.java   |   2 +-
 .../apache/doris/statistics/StatisticsCache.java   |   6 +-
 .../doris/statistics/StatisticsRepository.java     |   2 +-
 .../ExternalFileTableValuedFunction.java           |  72 +-
 .../tablefunction/HdfsTableValuedFunction.java     | 116 ++++
 .../doris/tablefunction/S3TableValuedFunction.java |  58 +-
 .../doris/tablefunction/TableValuedFunctionIf.java |   2 +
 .../analysis/CreateTableAsSelectStmtTest.java      |  48 +-
 .../org/apache/doris/common/FeNameFormatTest.java  |   3 +
 .../rules/analysis/FunctionRegistryTest.java       |  24 +-
 .../nereids/rules/analysis/RegisterCTETest.java    |   5 +-
 .../expression/rewrite/ExpressionRewriteTest.java  |  13 +
 .../rules/expression/rewrite/TypeCoercionTest.java |  14 +-
 .../rules/joinreorder/hypergraph/BitSetTest.java   |  43 ++
 .../hypergraph/SubgraphEnumeratorTest.java         | 104 +++
 .../rewrite/logical/AggregateDisassembleTest.java  |   3 +-
 .../PushdownExpressionsInHashConditionTest.java    |  22 +-
 .../doris/nereids/util/HyperGraphBuilder.java      |  26 +-
 .../ExtractCommonFactorsRuleFunctionTest.java      |   8 +
 .../org/apache/doris/statistics/CacheTest.java     |   6 +-
 gensrc/proto/internal_service.proto                |   2 +-
 gensrc/proto/types.proto                           |   1 +
 gensrc/script/doris_builtins_functions.py          |  22 +-
 gensrc/thrift/Types.thrift                         |   2 +-
 .../table_valued_function/test_hdfs_tvf.out        | 289 ++++++++
 .../data/correctness_p0/test_select_decimal.out    |  13 +
 .../tpch_sf1_p1/tpch_sf1/nereids/q1.out            |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q10.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q11.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q12.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q13.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q14.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q15.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q16.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q17.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q18.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q19.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q2.out            |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q20.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q21.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q22.out           |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q3.out            |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q4.out            |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q5.out            |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q6.out            |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q7.out            |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q8.out            |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q9.out            |   0
 regression-test/data/ddl_p0/test_ctas.out          |   4 +-
 .../data/hive_catalog_p0/hive_catalog_case.out     |  65 ++
 .../data/jdbc_p0/test_jdbc_query_mysql.out         |  47 ++
 .../data/jdbc_p0/test_jdbc_query_pg.out            |  12 +-
 .../data/load_p0/broker_load/simple_array.csv      |   4 +-
 .../data/load_p0/broker_load/test_array_load.out   |  16 +-
 .../load_p0/stream_load/test_hdfs_json_load.out    |  28 +-
 .../array_functions/test_array_functions.out       |  33 +
 .../test_array_functions_by_literal.out            |   9 +
 .../test_array_functions_with_where.out            |  15 +
 .../multi_catalog_query_parquet/hive_catalog.out   |   2 +
 regression-test/pipeline/p0/conf/fe.conf           |   8 +-
 regression-test/pipeline/p1/conf/fe.conf           |   8 +-
 .../table_valued_function/test_hdfs_tvf.groovy     | 199 ++++++
 .../correctness_p0/test_select_decimal.groovy      |  14 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q01.sql         |   2 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q06.sql         |   2 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q21.sql         |   4 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q32.sql         |   2 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q39_2.sql       |   2 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q40.sql         |   2 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q53.sql         |   2 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q58.sql         |  12 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q63.sql         |   2 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q65.sql         |   2 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q75.sql         |   8 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q81.sql         |   2 +-
 .../suites/datev2/tpcds_sf1_p1/sql/q92.sql         |   2 +-
 .../tpch_sf1_p1/tpch_sf1/nereids/q1.groovy         |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q10.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q11.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q12.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q13.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q14.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q15.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q16.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q17.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q18.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q19.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q2.groovy         |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q20.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q21.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q22.groovy        |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q3.groovy         |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q4.groovy         |   0
 .../datev2/tpch_sf1_p1/tpch_sf1/nereids/q5.groovy  |  87 +++
 .../tpch_sf1_p1/tpch_sf1/nereids/q6.groovy         |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q7.groovy         |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q8.groovy         |   0
 .../tpch_sf1_p1/tpch_sf1/nereids/q9.groovy         |   0
 .../hive_catalog_p0/hive_catalog_case.groovy       |  80 +++
 .../suites/jdbc_p0/test_jdbc_query_mysql.groovy    | 245 +++++++
 .../suites/jdbc_p0/test_jdbc_query_pg.groovy       |   6 +-
 .../suites/nereids_syntax_p0/explain.groovy        |  15 +
 .../array_functions/test_array_functions.groovy    |   3 +
 .../test_array_functions_by_literal.groovy         |   4 +-
 .../test_array_functions_with_where.groovy         |   3 +
 regression-test/suites/tpcds_sf1000_p2/sql/q01.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q06.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q11.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q13.sql |   6 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q21.sql |   4 +-
 .../suites/tpcds_sf1000_p2/sql/q23_1.sql           |   2 +-
 .../suites/tpcds_sf1000_p2/sql/q23_2.sql           |   2 +-
 .../suites/tpcds_sf1000_p2/sql/q24_1.sql           |   2 +-
 .../suites/tpcds_sf1000_p2/sql/q24_2.sql           |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q30.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q32.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q34.sql |   2 +-
 .../suites/tpcds_sf1000_p2/sql/q39_2.sql           |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q40.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q44.sql |   4 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q47.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q48.sql |   6 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q53.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q57.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q58.sql |  12 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q63.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q65.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q75.sql |   8 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q81.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q83.sql |   8 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q85.sql |   6 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q89.sql |   2 +-
 regression-test/suites/tpcds_sf1000_p2/sql/q92.sql |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q01.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q06.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q11.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q13.sql    |   6 +-
 regression-test/suites/tpcds_sf1_p1/sql/q21.sql    |   4 +-
 regression-test/suites/tpcds_sf1_p1/sql/q23_1.sql  |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q23_2.sql  |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q24_1.sql  |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q24_2.sql  |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q32.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q34.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q39_2.sql  |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q40.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q44.sql    |   4 +-
 regression-test/suites/tpcds_sf1_p1/sql/q47.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q48.sql    |   6 +-
 regression-test/suites/tpcds_sf1_p1/sql/q53.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q57.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q58.sql    |  12 +-
 regression-test/suites/tpcds_sf1_p1/sql/q63.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q65.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q75.sql    |   8 +-
 regression-test/suites/tpcds_sf1_p1/sql/q81.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q83.sql    |   8 +-
 regression-test/suites/tpcds_sf1_p1/sql/q85.sql    |   6 +-
 regression-test/suites/tpcds_sf1_p1/sql/q89.sql    |   2 +-
 regression-test/suites/tpcds_sf1_p1/sql/q92.sql    |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q01.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q06.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q11.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q13.sql         |   6 +-
 .../suites/tpcds_sf1_unique_p1/sql/q21.sql         |   4 +-
 .../suites/tpcds_sf1_unique_p1/sql/q23_1.sql       |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q23_2.sql       |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q24_1.sql       |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q24_2.sql       |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q30.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q32.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q34.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q39_2.sql       |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q40.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q44.sql         |   4 +-
 .../suites/tpcds_sf1_unique_p1/sql/q47.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q48.sql         |   6 +-
 .../suites/tpcds_sf1_unique_p1/sql/q53.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q57.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q58.sql         |  12 +-
 .../suites/tpcds_sf1_unique_p1/sql/q63.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q65.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q75.sql         |   8 +-
 .../suites/tpcds_sf1_unique_p1/sql/q81.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q83.sql         |   8 +-
 .../suites/tpcds_sf1_unique_p1/sql/q85.sql         |   6 +-
 .../suites/tpcds_sf1_unique_p1/sql/q89.sql         |   2 +-
 .../suites/tpcds_sf1_unique_p1/sql/q92.sql         |   2 +-
 .../tpch_sf1_p1/tpch_sf1/explain/test_q12.groovy   |   4 +-
 thirdparty/build-thirdparty.sh                     |   3 +
 thirdparty/vars.sh                                 |   8 +-
 tools/tpch-tools/bin/build-tpch-dbgen.sh           |   2 +-
 457 files changed, 8011 insertions(+), 2306 deletions(-)
 create mode 100644 be/src/vec/functions/array/function_array_constructor.cpp
 create mode 100644 be/test/testutil/any_type.h
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/csv_format_test/all_types.csv
 copy {regression-test/data/load_p0/stream_load => 
docker/thirdparties/docker-compose/hive/scripts/csv_format_test}/array_malformat.csv
 (100%)
 copy {regression-test/data/load_p0/stream_load => 
docker/thirdparties/docker-compose/hive/scripts/csv_format_test}/array_normal.csv
 (100%)
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/csv_format_test/student.csv
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/csv_format_test/student_with_names.csv
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/csv_format_test/student_with_names_and_types.csv
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/data_case/account_fund/data_file
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/data_case/hive01/data_file
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/data_case/lineorder/data_file
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/data_case/sale_table/data_file
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/data_case/string_table/data_file
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/data_case/student/data_file
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/data_case/t_hive/data_file
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/data_case/test1/data_file
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/data_case/test2/data_file
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/data_case/test_hive_doris/data_file
 create mode 100644 
docker/thirdparties/docker-compose/hive/scripts/json_format_test/one_array_json.json
 create mode 100644 
docs/en/docs/sql-manual/sql-functions/array-functions/array.md
 delete mode 100644 docs/images/image-20220614114351241.png
 create mode 100644 docs/images/ssb.png
 create mode 100644 docs/images/ssb_flat.png
 delete mode 100644 docs/images/ssb_v11_v015_compare.png
 create mode 100644 docs/images/tpch.png
 create mode 100644 
docs/zh-CN/docs/sql-manual/sql-functions/array-functions/array.md
 create mode 100644 
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/joinreorder/hypergraph/SubgraphEnumerator.java
 copy fe/fe-core/src/main/java/org/apache/doris/{analysis/ExplainOptions.java 
=> nereids/rules/joinreorder/hypergraph/bitmap/Bitmap.java} (52%)
 create mode 100644 
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/joinreorder/hypergraph/bitmap/SubsetIterator.java
 copy 
fe/fe-core/src/main/java/org/apache/doris/nereids/{trees/expressions/functions/FunctionTrait.java
 => rules/joinreorder/hypergraph/receiver/AbstractReceiver.java} (62%)
 copy 
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/joinreorder/hypergraph/{Receiver.java
 => receiver/Counter.java} (61%)
 rename 
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/joinreorder/hypergraph/{Receiver.java
 => receiver/PlanTable.java} (59%)
 copy 
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/{ExpressionTrait.java
 => CustomSignature.java} (53%)
 create mode 100644 
fe/fe-core/src/main/java/org/apache/doris/nereids/types/PartialAggType.java
 create mode 100644 
fe/fe-core/src/main/java/org/apache/doris/tablefunction/HdfsTableValuedFunction.java
 create mode 100644 
fe/fe-core/src/test/java/org/apache/doris/nereids/rules/joinreorder/hypergraph/BitSetTest.java
 create mode 100644 
fe/fe-core/src/test/java/org/apache/doris/nereids/rules/joinreorder/hypergraph/SubgraphEnumeratorTest.java
 create mode 100644 
regression-test/data/correctness_p0/table_valued_function/test_hdfs_tvf.out
 create mode 100644 regression-test/data/correctness_p0/test_select_decimal.out
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q1.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q10.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q11.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q12.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q13.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q14.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q15.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q16.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q17.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q18.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q19.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q2.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q20.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q21.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q22.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q3.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q4.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q5.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q6.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q7.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q8.out 
(100%)
 copy regression-test/data/{ => datev2}/tpch_sf1_p1/tpch_sf1/nereids/q9.out 
(100%)
 create mode 100644 regression-test/data/hive_catalog_p0/hive_catalog_case.out
 create mode 100644 
regression-test/suites/correctness_p0/table_valued_function/test_hdfs_tvf.groovy
 copy 
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/FunctionTrait.java
 => regression-test/suites/correctness_p0/test_select_decimal.groovy (74%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q1.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q10.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q11.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q12.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q13.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q14.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q15.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q16.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q17.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q18.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q19.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q2.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q20.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q21.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q22.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q3.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q4.groovy (100%)
 create mode 100644 
regression-test/suites/datev2/tpch_sf1_p1/tpch_sf1/nereids/q5.groovy
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q6.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q7.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q8.groovy (100%)
 copy regression-test/suites/{ => 
datev2}/tpch_sf1_p1/tpch_sf1/nereids/q9.groovy (100%)
 create mode 100644 
regression-test/suites/hive_catalog_p0/hive_catalog_case.groovy


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org


Reply via email to