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
from ba918b40e2 [chore](macOS) Fix compilation errors caused by the deprecated function (#13890) add 6f3db8b4b4 [enhancement](Nereids) add eliminate unnecessary project rule (#13886) add f2a0adf34e [fix](fe) Inconsistent behavior for string comparison in FE and BE (#13604) add 699ffbca0e [enhancement](Nereids) generate correct distribution spec after project (#13725) add 1bafb26217 [fix](Nereids) throw NPE when call getOutputExprIds in LogicalProperties (#13898) add a871fef815 [Improve](Nereids): refactor eliminate outer join (#13402) add 6eea855e78 [feature](Nereids) Support lots of scalar function and fix some bug (#13764) add b26d8f284c [fix](rpc) The proxy removed when rpc exception occurs is not an abnormal proxy (#13836) add 374303186c [Vectorized](function) support topn_array function (#13869) add 53814e466b [Enhancement](Nereids)optimize merge group in memo #13900 add 62f765b7f5 [improvement](scan) speed up inserting strings into ColumnString (#13397) add fbc8b7311f [Opt](function) opt the function of ndv (#13887) add 0ea7f85986 [fix](keyword) add BIN as keyword (#13907) add b83744d2f6 [feature](function)add regexp functions: regexp_replace_one, regexp_extract_all (#13766) add e021705053 [feature](nereids) support common table expression (#12742) add 228e5afad8 [Load](Sink) remove validate the column data when data is NULL (#13919) add 7b4c2cabb4 [feature](new-scan) support transactional insert in new scan framework (#13858) add 636bdffe62 [fix](doc) fix 404 link (#13908) add cc37ef0f2b [regression-test](query) Add the regression case of the query under the large wide table. #13897 add 28a4a8dc17 [fix](storage) evaluate_and of ComparisonPredicateBase has logical error (#13895) add 1ee6518e00 [fix](unique-key-merge-on-write) Types don't match when calling IndexedColumnIterator::seek_at_or_after (#13885) add 37e4a1769d [fix](sequence) fix that update table core dump with sequence column (#13847) add b3c6af0059 [Bugfix](MV) Fixed load negative values into bitmap type materialized views successfully under non-vectorization (#13719) add 32a029d9dc [enhancement](memtracker) Refactor load channel + memtable mem tracker (#13795) add 5a700223fe [fix](function) fix coredump cause by return type mismatch of vectorized repeat function (#13868) add a4a991207b [fix](agg)fix group by constant value bug (#13827) add 31d8fdd9e4 [fix](Nereids) finalize local aggregate should not turn on stream pre agg (#13922) add 57ee5c4a65 [feature](nereids) Support authentication (#13434) add bfba058ecf [Feature](join) Support null aware left anti join (#13871) add 29e01db7ce [Fix](Nereids) add comments to CostAndEnforcerJob and fix view test case (#13046) add 5fe3342aa3 [Vectorized](function) support bitmap_to_array function (#13926) add 6ff306b1ea [docs](round) complement round function documentation (#13838) add b1816d49e7 [fix](typo) check catalog enable exception message spelling mistake (#13925) add ee934483eb [Enhancement](function) optimize the `upper` and `lower` functions using the simd instruction. (#13326) add c1438cbad6 [revert](Nereids): revert GroupExpression Children ImmutableList. (#13918) add 8043418db4 [optimization](array-type) update the exception message when create table with array column (#13731) add d183199319 [Bug](array-type) Fix array product calculate decimal type return wrong result (#13794) add ff935ca1a0 [enhancement](chore) remove debug log which is really too frequent #13909 add 1b36843664 [doc](jsonb type)add documents for JSONB datatype (#13792) add 5d7b51dcc2 [BugFix](Concat) output of string concat function exceeds UINT makes crash (#13916) add 0a228a68d6 [Improvement](javaudf) support different date argument for date/datetime type (#13920) add 9869915279 [refactor](crossjoin) refactor cross join (#13896) add 5d56fe6d32 [fix](meta)(recover) fix recover info persist bug (#13948) new d28010428c [fix](memtracker) Fix DCHECK(!std::count(_consumer_tracker_stack.begin(), _consumer_tracker_stack.end(), tracker)) #13960 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: be/src/common/config.h | 12 +- be/src/exec/blocking_join_node.cpp | 2 +- be/src/exec/broker_scan_node.cpp | 2 +- be/src/exec/es_http_scan_node.cpp | 2 +- be/src/exec/except_node.cpp | 2 +- be/src/exec/exec_node.cpp | 6 +- be/src/exec/exec_node.h | 3 +- be/src/exec/hash_join_node.cpp | 2 +- be/src/exec/intersect_node.cpp | 2 +- be/src/exec/olap_scan_node.cpp | 9 +- be/src/exec/olap_scan_node.h | 2 +- be/src/exec/olap_scanner.cpp | 8 +- be/src/exec/olap_scanner.h | 5 +- be/src/exprs/bitmap_function.cpp | 2 +- be/src/olap/comparison_predicate.h | 2 +- be/src/olap/delta_writer.cpp | 53 +- be/src/olap/delta_writer.h | 24 +- be/src/olap/memtable.cpp | 38 +- be/src/olap/memtable.h | 25 +- be/src/olap/rowset/segment_v2/binary_plain_page.h | 14 +- .../olap/rowset/segment_v2/indexed_column_reader.h | 5 + be/src/olap/tablet_manager.cpp | 6 - be/src/runtime/fragment_mgr.cpp | 40 +- be/src/runtime/load_channel.cpp | 12 +- be/src/runtime/load_channel.h | 29 +- be/src/runtime/load_channel_mgr.cpp | 21 +- be/src/runtime/load_channel_mgr.h | 32 +- be/src/runtime/memory/mem_tracker.h | 1 + be/src/runtime/memory/mem_tracker_limiter.h | 1 + be/src/runtime/memory/mem_tracker_task_pool.cpp | 2 +- be/src/runtime/memory/thread_mem_tracker_mgr.h | 1 - be/src/runtime/runtime_filter_mgr.cpp | 4 +- be/src/runtime/runtime_filter_mgr.h | 2 +- be/src/runtime/tablets_channel.cpp | 26 +- be/src/runtime/tablets_channel.h | 11 +- be/src/runtime/thread_context.cpp | 16 +- be/src/runtime/thread_context.h | 8 + be/src/service/doris_main.cpp | 4 +- be/src/util/bitmap_value.h | 21 +- be/src/vec/CMakeLists.txt | 3 +- .../aggregate_function_approx_count_distinct.h | 17 +- .../aggregate_function_product.h | 27 + .../aggregate_function_topn.cpp | 61 + .../aggregate_functions/aggregate_function_topn.h | 133 ++- be/src/vec/columns/column.h | 12 +- be/src/vec/columns/column_complex.h | 11 + be/src/vec/columns/column_decimal.h | 4 - be/src/vec/columns/column_dictionary.h | 17 +- be/src/vec/columns/column_jsonb.h | 26 + be/src/vec/columns/column_nullable.h | 9 + be/src/vec/columns/column_string.h | 101 +- be/src/vec/columns/columns_number.h | 18 + be/src/vec/columns/predicate_column.h | 30 +- be/src/vec/exec/format/csv/csv_reader.cpp | 8 +- be/src/vec/exec/format/csv/csv_reader.h | 1 + be/src/vec/exec/join/vhash_join_node.cpp | 102 +- be/src/vec/exec/join/vhash_join_node.h | 18 +- be/src/vec/exec/scan/new_olap_scanner.cpp | 37 +- be/src/vec/exec/scan/new_olap_scanner.h | 2 +- be/src/vec/exec/scan/vfile_scanner.cpp | 3 +- be/src/vec/exec/vblocking_join_node.cpp | 154 --- be/src/vec/exec/vblocking_join_node.h | 131 --- be/src/vec/exec/vbroker_scan_node.cpp | 2 +- be/src/vec/exec/vcross_join_node.h | 85 -- be/src/vec/exec/ves_http_scan_node.cpp | 2 +- ...ss_join_node.cpp => vnested_loop_join_node.cpp} | 142 ++- be/src/vec/exec/vnested_loop_join_node.h | 117 ++ be/src/vec/exec/volap_scan_node.cpp | 2 +- be/src/vec/exec/volap_scanner.cpp | 37 +- be/src/vec/exec/volap_scanner.h | 2 +- be/src/vec/exec/vschema_scan_node.cpp | 2 +- be/src/vec/exprs/vcast_expr.cpp | 1 - be/src/vec/exprs/vectorized_fn_call.cpp | 9 + be/src/vec/functions/function_bitmap.cpp | 54 +- be/src/vec/functions/function_java_udf.cpp | 27 +- be/src/vec/functions/function_regexp.cpp | 263 +++-- be/src/vec/functions/function_string.cpp | 25 +- be/src/vec/functions/function_string.h | 12 +- be/src/vec/functions/simple_function_factory.h | 2 +- be/src/vec/olap/block_reader.cpp | 9 +- be/src/vec/sink/vtablet_sink.cpp | 11 +- be/test/olap/delta_writer_test.cpp | 6 +- be/test/vec/aggregate_functions/agg_test.cpp | 2 +- .../aggregate_functions/vec_window_funnel_test.cpp | 7 +- be/test/vec/function/function_like_test.cpp | 61 + .../aggregate-functions/topn_array.md | 61 + .../bitmap-functions/bitmap_to_array.md | 70 ++ .../sql-functions/json-functions/jsonb_extract.md | 86 ++ .../sql-functions/json-functions/jsonb_parse.md | 84 ++ .../sql-functions/json-functions/jsonb_tutorial.md | 801 +++++++++++++ .../sql-functions/math-functions/round.md | 16 +- .../string-functions/regexp/regexp_extract.md | 2 +- .../string-functions/regexp/regexp_extract_all.md | 61 + .../regexp/regexp_replace_one.md} | 53 +- .../round.md => sql-reference/Data-Types/JSONB.md} | 47 +- docs/sidebars.json | 10 +- .../maint-monitor/tablet-repair-and-balance.md | 2 +- .../aggregate-functions/topn_array.md | 60 + .../bitmap-functions/bitmap_to_array.md | 70 ++ .../sql-functions/json-functions/jsonb_extract.md | 83 ++ .../sql-functions/json-functions/jsonb_parse.md | 81 ++ .../sql-functions/json-functions/jsonb_tutorial.md | 798 +++++++++++++ .../sql-functions/math-functions/round.md | 16 +- .../string-functions/regexp/regexp_extract_all.md | 59 + .../regexp/regexp_replace_one.md} | 53 +- .../round.md => sql-reference/Data-Types/JSONB.md} | 47 +- .../antlr4/org/apache/doris/nereids/DorisParser.g4 | 16 +- fe/fe-core/src/main/cup/sql_parser.cup | 2 + .../org/apache/doris/analysis/ArrayLiteral.java | 13 +- .../org/apache/doris/analysis/BoolLiteral.java | 5 + .../java/org/apache/doris/analysis/CastExpr.java | 6 + .../apache/doris/analysis/CreateFunctionStmt.java | 12 +- .../doris/analysis/CreateMaterializedViewStmt.java | 40 +- .../org/apache/doris/analysis/CreateTableStmt.java | 2 +- .../org/apache/doris/analysis/DateLiteral.java | 5 + .../org/apache/doris/analysis/DecimalLiteral.java | 5 + .../main/java/org/apache/doris/analysis/Expr.java | 29 +- .../org/apache/doris/analysis/FloatLiteral.java | 5 + .../apache/doris/analysis/FunctionCallExpr.java | 66 +- .../java/org/apache/doris/analysis/IntLiteral.java | 5 + .../org/apache/doris/analysis/JoinOperator.java | 3 +- .../org/apache/doris/analysis/JsonLiteral.java | 10 + .../org/apache/doris/analysis/LargeIntLiteral.java | 5 + .../org/apache/doris/analysis/LiteralExpr.java | 8 +- .../java/org/apache/doris/analysis/MaxLiteral.java | 10 + .../org/apache/doris/analysis/NullLiteral.java | 7 + .../java/org/apache/doris/analysis/SelectStmt.java | 7 +- .../org/apache/doris/analysis/StmtRewriter.java | 8 +- .../org/apache/doris/analysis/StringLiteral.java | 9 +- .../java/org/apache/doris/analysis/TableRef.java | 2 + ...nctions.java => BuiltinAggregateFunctions.java} | 19 +- .../doris/catalog/BuiltinScalarFunctions.java | 511 +++++++++ .../java/org/apache/doris/catalog/FuncSig.java | 76 -- .../org/apache/doris/catalog/FunctionRegistry.java | 4 +- .../java/org/apache/doris/catalog/FunctionSet.java | 7 + .../apache/doris/catalog/FunctionSignature.java | 115 ++ .../org/apache/doris/catalog/PrimitiveType.java | 1 + .../main/java/org/apache/doris/catalog/Type.java | 19 +- .../java/org/apache/doris/common/util/Util.java | 2 +- .../org/apache/doris/nereids/CascadesContext.java | 1 - .../org/apache/doris/nereids/StatementContext.java | 16 + .../doris/nereids/analyzer/NereidsAnalyzer.java | 5 +- .../doris/nereids/analyzer/UnboundAlias.java | 27 +- .../doris/nereids/annotation/Developing.java | 6 +- .../glue/translator/ExpressionTranslator.java | 85 +- .../glue/translator/PhysicalPlanTranslator.java | 5 +- .../doris/nereids/jobs/batch/AnalyzeRulesJob.java | 6 + .../jobs/batch/NereidsRewriteJobExecutor.java | 4 + .../nereids/jobs/cascades/CostAndEnforcerJob.java | 123 +- .../jobs/cascades/OptimizeGroupExpressionJob.java | 3 +- .../java/org/apache/doris/nereids/memo/Group.java | 6 +- .../apache/doris/nereids/memo/GroupExpression.java | 16 +- .../java/org/apache/doris/nereids/memo/Memo.java | 17 +- .../doris/nereids/parser/LogicalPlanBuilder.java | 37 +- .../nereids/processor/pre/PlanPreprocessors.java | 2 +- .../properties/ChildOutputPropertyDeriver.java | 40 +- .../properties/ChildrenPropertiesRegulator.java | 6 +- .../nereids/properties/DistributionSpecHash.java | 42 +- .../properties/EnforceMissingPropertiesHelper.java | 20 +- .../nereids/properties/LogicalProperties.java | 2 +- .../apache/doris/nereids/properties/OrderSpec.java | 1 + .../nereids/properties/RequestPropertyDeriver.java | 3 + .../org/apache/doris/nereids/rules/RuleSet.java | 4 +- .../org/apache/doris/nereids/rules/RuleType.java | 8 +- .../doris/nereids/rules/analysis/BindFunction.java | 5 +- .../doris/nereids/rules/analysis/BindRelation.java | 13 +- .../nereids/rules/analysis/BindSlotReference.java | 8 +- .../doris/nereids/rules/analysis/CTEContext.java | 64 ++ .../doris/nereids/rules/analysis/RegisterCTE.java | 169 +++ .../nereids/rules/analysis/UserAuthentication.java | 52 + .../expression/rewrite/rules/TypeCoercion.java | 76 +- .../LogicalAggToPhysicalHashAgg.java | 3 +- .../rules/rewrite/AggregateDisassemble.java | 53 +- .../rules/rewrite/logical/EliminateOuter.java | 91 -- .../rules/rewrite/logical/EliminateOuterJoin.java | 98 ++ .../logical/EliminateUnnecessaryProject.java | 51 + .../org/apache/doris/nereids/trees/TreeNode.java | 53 + .../nereids/trees/expressions/Expression.java | 13 +- .../nereids/trees/expressions/SlotReference.java | 6 +- .../trees/expressions/functions/BoundFunction.java | 11 +- .../expressions/functions/ComputeNullable.java | 3 +- .../expressions/functions/ComputeSignature.java | 83 ++ .../functions/DateTimeWithPrecision.java | 57 + .../functions/DecimalSamePrecision.java | 12 +- .../functions/DecimalStddevPrecision.java | 13 +- .../functions/DecimalWiderPrecision.java | 12 +- .../functions/ExplicitlyCastableSignature.java | 49 + ...PropagateNullable.java => ExpressionTrait.java} | 29 +- .../trees/expressions/functions/FunctionTrait.java | 15 +- .../expressions/functions/IdenticalSignature.java | 42 + .../functions/ImplicitlyCastableSignature.java | 47 + .../expressions/functions/Nondeterministic.java | 18 +- .../functions/NullOrIdenticalSignature.java | 46 + .../expressions/functions/PropagateNullable.java | 2 +- .../expressions/functions/SearchSignature.java | 119 ++ .../expressions/functions/SignatureSupplier.java | 128 --- .../functions/agg/AggregateFunction.java | 54 +- .../expressions/functions/agg/AggregateParam.java | 96 ++ .../trees/expressions/functions/agg/Avg.java | 27 +- .../trees/expressions/functions/agg/Count.java | 35 +- .../trees/expressions/functions/agg/Max.java | 19 +- .../trees/expressions/functions/agg/Min.java | 19 +- .../trees/expressions/functions/agg/Sum.java | 19 +- .../trees/expressions/functions/scalar/Abs.java | 83 ++ .../expressions/functions/scalar/Acos.java} | 45 +- .../expressions/functions/scalar/AesDecrypt.java | 89 ++ .../expressions/functions/scalar/AesEncrypt.java | 89 ++ .../scalar/AppendTrailingCharIfAbsent.java | 71 ++ .../scalar/{WeekOfYear.java => Ascii.java} | 50 +- .../expressions/functions/scalar/Asin.java} | 45 +- .../expressions/functions/scalar/Atan.java} | 45 +- .../expressions/functions/scalar/Bin.java} | 46 +- .../scalar/{WeekOfYear.java => BitLength.java} | 50 +- .../scalar/{WeekOfYear.java => BitmapAnd.java} | 54 +- .../functions/scalar/BitmapAndCount.java | 70 ++ .../scalar/{WeekOfYear.java => BitmapAndNot.java} | 53 +- .../{WeekOfYear.java => BitmapAndNotCount.java} | 54 +- .../{WeekOfYear.java => BitmapContains.java} | 55 +- .../scalar/{WeekOfYear.java => BitmapCount.java} | 52 +- .../expressions/functions/scalar/BitmapEmpty.java | 57 + .../{WeekOfYear.java => BitmapFromString.java} | 54 +- .../scalar/{WeekOfYear.java => BitmapHasAll.java} | 54 +- .../scalar/{WeekOfYear.java => BitmapHasAny.java} | 54 +- .../scalar/{WeekOfYear.java => BitmapHash.java} | 54 +- .../scalar/{WeekOfYear.java => BitmapHash64.java} | 54 +- .../scalar/{WeekOfYear.java => BitmapMax.java} | 52 +- .../scalar/{WeekOfYear.java => BitmapMin.java} | 52 +- .../scalar/{WeekOfYear.java => BitmapNot.java} | 53 +- .../scalar/{WeekOfYear.java => BitmapOr.java} | 54 +- .../scalar/{WeekOfYear.java => BitmapOrCount.java} | 55 +- .../functions/scalar/BitmapSubsetInRange.java | 70 ++ .../functions/scalar/BitmapSubsetLimit.java | 70 ++ .../{WeekOfYear.java => BitmapToString.java} | 50 +- .../scalar/{WeekOfYear.java => BitmapXor.java} | 54 +- .../functions/scalar/BitmapXorCount.java | 70 ++ .../expressions/functions/scalar/Cbrt.java} | 45 +- .../expressions/functions/scalar/Ceil.java} | 46 +- .../scalar/{WeekOfYear.java => Ceiling.java} | 50 +- .../scalar/{WeekOfYear.java => CharLength.java} | 50 +- .../{WeekOfYear.java => CharacterLength.java} | 50 +- .../expressions/functions/scalar/Coalesce.java | 111 ++ .../scalar/{WeekOfYear.java => Concat.java} | 56 +- .../expressions/functions/scalar/ConcatWs.java | 79 ++ .../trees/expressions/functions/scalar/Conv.java | 76 ++ .../expressions/functions/scalar/ConvertTz.java | 76 ++ .../expressions/functions/scalar/Cos.java} | 45 +- .../expressions/functions/scalar/CurrentDate.java | 58 + .../expressions/functions/scalar/CurrentTime.java | 58 + .../functions/scalar/CurrentTimestamp.java | 84 ++ .../expressions/functions/scalar/Curtime.java | 58 + .../scalar/{WeekOfYear.java => Date.java} | 53 +- .../expressions/functions/scalar/DateDiff.java | 77 ++ .../expressions/functions/scalar/DateFormat.java | 75 ++ .../expressions/functions/scalar/DateTrunc.java | 71 ++ .../scalar/{WeekOfYear.java => DateV2.java} | 52 +- .../functions/scalar/{WeekOfYear.java => Day.java} | 52 +- .../expressions/functions/scalar/DayCeil.java | 106 ++ .../expressions/functions/scalar/DayFloor.java | 106 ++ .../scalar/{WeekOfYear.java => DayName.java} | 54 +- .../scalar/{WeekOfYear.java => DayOfMonth.java} | 52 +- .../scalar/{WeekOfYear.java => DayOfWeek.java} | 52 +- .../scalar/{WeekOfYear.java => DayOfYear.java} | 52 +- .../expressions/functions/scalar/DaysDiff.java | 79 ++ .../expressions/functions/scalar/Dceil.java} | 46 +- .../expressions/functions/scalar/Degrees.java} | 45 +- .../expressions/functions/scalar/Dexp.java} | 45 +- .../expressions/functions/scalar/Dfloor.java} | 46 +- .../expressions/functions/scalar/Dlog1.java} | 47 +- .../expressions/functions/scalar/Dlog10.java} | 47 +- .../scalar/{WeekOfYear.java => Dpow.java} | 53 +- .../trees/expressions/functions/scalar/Dround.java | 82 ++ .../expressions/functions/scalar/Dsqrt.java} | 45 +- .../functions/{agg/Max.java => scalar/E.java} | 54 +- .../functions/scalar/{WeekOfYear.java => Elt.java} | 55 +- .../expressions/functions/scalar/EndsWith.java | 71 ++ .../scalar/{WeekOfYear.java => EsQuery.java} | 54 +- .../expressions/functions/scalar/Exp.java} | 45 +- .../{WeekOfYear.java => ExtractUrlParameter.java} | 54 +- .../scalar/{WeekOfYear.java => FindInSet.java} | 54 +- .../expressions/functions/scalar/Floor.java} | 46 +- .../trees/expressions/functions/scalar/Fmod.java | 70 ++ .../scalar/{WeekOfYear.java => Fpow.java} | 53 +- .../scalar/{WeekOfYear.java => FromBase64.java} | 53 +- .../scalar/{WeekOfYear.java => FromDays.java} | 50 +- .../expressions/functions/scalar/FromUnixtime.java | 83 ++ .../functions/scalar/GetJsonDouble.java | 71 ++ .../expressions/functions/scalar/GetJsonInt.java | 71 ++ .../functions/scalar/GetJsonString.java | 71 ++ .../expressions/functions/scalar/Greatest.java | 91 ++ .../functions/scalar/{WeekOfYear.java => Hex.java} | 53 +- .../{WeekOfYear.java => HllCardinality.java} | 52 +- .../expressions/functions/scalar/HllEmpty.java | 57 + .../scalar/{WeekOfYear.java => HllHash.java} | 54 +- .../scalar/{WeekOfYear.java => Hour.java} | 52 +- .../expressions/functions/scalar/HourCeil.java | 106 ++ .../expressions/functions/scalar/HourFloor.java | 106 ++ .../expressions/functions/scalar/HoursDiff.java | 79 ++ .../trees/expressions/functions/scalar/If.java | 146 +++ .../expressions/functions/scalar/Initcap.java} | 45 +- .../scalar/{WeekOfYear.java => Instr.java} | 54 +- .../scalar/{WeekOfYear.java => JsonArray.java} | 54 +- .../scalar/{WeekOfYear.java => JsonObject.java} | 54 +- .../expressions/functions/scalar/JsonQuote.java} | 45 +- .../functions/scalar/JsonbExistsPath.java | 72 ++ .../expressions/functions/scalar/JsonbExtract.java | 71 ++ .../functions/scalar/JsonbExtractBigint.java | 72 ++ .../functions/scalar/JsonbExtractBool.java | 72 ++ .../functions/scalar/JsonbExtractDouble.java | 72 ++ .../functions/scalar/JsonbExtractInt.java | 72 ++ .../functions/scalar/JsonbExtractIsnull.java | 72 ++ .../functions/scalar/JsonbExtractString.java | 71 ++ .../scalar/{WeekOfYear.java => JsonbParse.java} | 50 +- ...ekOfYear.java => JsonbParseErrorToInvalid.java} | 50 +- ...{WeekOfYear.java => JsonbParseErrorToNull.java} | 52 +- ...WeekOfYear.java => JsonbParseErrorToValue.java} | 54 +- .../{WeekOfYear.java => JsonbParseNotnull.java} | 50 +- ...r.java => JsonbParseNotnullErrorToInvalid.java} | 50 +- .../scalar/JsonbParseNotnullErrorToValue.java | 69 ++ .../{WeekOfYear.java => JsonbParseNullable.java} | 52 +- ....java => JsonbParseNullableErrorToInvalid.java} | 52 +- ...ear.java => JsonbParseNullableErrorToNull.java} | 52 +- .../scalar/JsonbParseNullableErrorToValue.java | 69 ++ .../expressions/functions/scalar/JsonbType.java | 69 ++ .../trees/expressions/functions/scalar/Least.java | 89 ++ .../trees/expressions/functions/scalar/Left.java | 71 ++ .../scalar/{WeekOfYear.java => Length.java} | 50 +- .../expressions/functions/scalar/Ln.java} | 47 +- .../expressions/functions/scalar/LocalTime.java | 84 ++ .../functions/scalar/LocalTimestamp.java | 84 ++ .../trees/expressions/functions/scalar/Locate.java | 86 ++ .../trees/expressions/functions/scalar/Log.java | 68 ++ .../expressions/functions/scalar/Log10.java} | 47 +- .../expressions/functions/scalar/Log2.java} | 47 +- .../scalar/{WeekOfYear.java => Lower.java} | 51 +- .../trees/expressions/functions/scalar/Lpad.java | 73 ++ .../scalar/{WeekOfYear.java => Ltrim.java} | 51 +- .../expressions/functions/scalar/MakeDate.java | 69 ++ .../functions/scalar/{WeekOfYear.java => Md5.java} | 51 +- .../scalar/{WeekOfYear.java => Md5Sum.java} | 56 +- .../scalar/{WeekOfYear.java => Minute.java} | 52 +- .../expressions/functions/scalar/MinuteCeil.java | 106 ++ .../expressions/functions/scalar/MinuteFloor.java | 106 ++ .../expressions/functions/scalar/MinutesDiff.java | 79 ++ .../scalar/{WeekOfYear.java => MoneyFormat.java} | 56 +- .../scalar/{WeekOfYear.java => Month.java} | 52 +- .../expressions/functions/scalar/MonthCeil.java | 106 ++ .../expressions/functions/scalar/MonthFloor.java | 106 ++ .../scalar/{WeekOfYear.java => MonthName.java} | 54 +- .../expressions/functions/scalar/MonthsDiff.java | 79 ++ .../scalar/{WeekOfYear.java => MurmurHash332.java} | 55 +- .../functions/scalar/MurmurHash364.java | 72 ++ .../scalar/{WeekOfYear.java => Negative.java} | 54 +- .../{WeekOfYear.java => NotNullOrEmpty.java} | 54 +- .../trees/expressions/functions/scalar/Now.java | 84 ++ .../trees/expressions/functions/scalar/NullIf.java | 97 ++ .../scalar/{WeekOfYear.java => NullOrEmpty.java} | 54 +- .../trees/expressions/functions/scalar/Nvl.java | 109 ++ .../expressions/functions/scalar/ParseUrl.java | 86 ++ .../functions/{agg/Max.java => scalar/Pi.java} | 54 +- .../trees/expressions/functions/scalar/Pmod.java | 70 ++ .../scalar/{WeekOfYear.java => Positive.java} | 54 +- .../functions/scalar/{WeekOfYear.java => Pow.java} | 53 +- .../scalar/{WeekOfYear.java => Power.java} | 53 +- .../{WeekOfYear.java => QuantilePercent.java} | 55 +- .../scalar/{WeekOfYear.java => Quarter.java} | 52 +- .../expressions/functions/scalar/Radians.java} | 45 +- .../trees/expressions/functions/scalar/Random.java | 92 ++ .../functions/scalar/RegexpExtract.java | 73 ++ .../functions/scalar/RegexpReplace.java | 72 ++ .../trees/expressions/functions/scalar/Repeat.java | 71 ++ .../expressions/functions/scalar/Replace.java | 72 ++ .../scalar/{WeekOfYear.java => Reverse.java} | 51 +- .../trees/expressions/functions/scalar/Right.java | 71 ++ .../trees/expressions/functions/scalar/Round.java | 82 ++ .../trees/expressions/functions/scalar/Rpad.java | 73 ++ .../scalar/{WeekOfYear.java => Rtrim.java} | 51 +- .../functions/scalar/ScalarFunction.java | 185 ++- .../scalar/{WeekOfYear.java => Second.java} | 52 +- .../expressions/functions/scalar/SecondCeil.java | 106 ++ .../expressions/functions/scalar/SecondFloor.java | 106 ++ .../expressions/functions/scalar/SecondsDiff.java | 79 ++ .../expressions/functions/scalar/Sign.java} | 46 +- .../expressions/functions/scalar/Sin.java} | 45 +- .../scalar/{WeekOfYear.java => Sleep.java} | 48 +- .../functions/scalar/{WeekOfYear.java => Sm3.java} | 51 +- .../scalar/{WeekOfYear.java => Sm3sum.java} | 56 +- .../expressions/functions/scalar/Sm4Decrypt.java | 89 ++ .../expressions/functions/scalar/Sm4Encrypt.java | 89 ++ .../scalar/{WeekOfYear.java => Space.java} | 48 +- .../expressions/functions/scalar/SplitPart.java | 73 ++ .../expressions/functions/scalar/Sqrt.java} | 45 +- .../scalar/{WeekOfYear.java => StAstext.java} | 53 +- .../scalar/{WeekOfYear.java => StAswkt.java} | 53 +- .../expressions/functions/scalar/StCircle.java | 70 ++ .../expressions/functions/scalar/StContains.java | 69 ++ .../functions/scalar/StDistanceSphere.java | 68 ++ .../{WeekOfYear.java => StGeometryfromtext.java} | 53 +- .../{WeekOfYear.java => StGeomfromtext.java} | 53 +- .../{WeekOfYear.java => StLinefromtext.java} | 53 +- .../{WeekOfYear.java => StLinestringfromtext.java} | 53 +- .../expressions/functions/scalar/StPoint.java | 69 ++ .../{WeekOfYear.java => StPolyfromtext.java} | 53 +- .../scalar/{WeekOfYear.java => StPolygon.java} | 53 +- .../{WeekOfYear.java => StPolygonfromtext.java} | 53 +- .../functions/scalar/{WeekOfYear.java => StX.java} | 54 +- .../functions/scalar/{WeekOfYear.java => StY.java} | 54 +- .../expressions/functions/scalar/StartsWith.java | 71 ++ .../expressions/functions/scalar/StrLeft.java | 71 ++ .../expressions/functions/scalar/StrRight.java | 71 ++ .../expressions/functions/scalar/StrToDate.java | 116 ++ .../expressions/functions/scalar/SubBitmap.java | 70 ++ .../expressions/functions/scalar/Substring.java | 70 +- .../expressions/functions/scalar/Tan.java} | 45 +- .../expressions/functions/scalar/TimeDiff.java | 78 ++ .../scalar/{WeekOfYear.java => Timestamp.java} | 51 +- .../expressions/functions/scalar/ToBase64.java} | 47 +- .../scalar/{WeekOfYear.java => ToBitmap.java} | 54 +- .../{WeekOfYear.java => ToBitmapWithCheck.java} | 54 +- .../scalar/{WeekOfYear.java => ToDate.java} | 53 +- .../scalar/{WeekOfYear.java => ToDateV2.java} | 52 +- .../scalar/{WeekOfYear.java => ToDays.java} | 52 +- .../{WeekOfYear.java => ToQuantileState.java} | 55 +- .../scalar/{WeekOfYear.java => Trim.java} | 51 +- .../scalar/{WeekOfYear.java => Truncate.java} | 52 +- .../scalar/{WeekOfYear.java => Unhex.java} | 53 +- .../functions/scalar/UnixTimestamp.java | 108 ++ .../scalar/{WeekOfYear.java => Upper.java} | 51 +- .../expressions/functions/scalar/UtcTimestamp.java | 58 + .../expressions/functions/scalar/Version.java | 57 + .../trees/expressions/functions/scalar/Week.java | 87 ++ .../expressions/functions/scalar/WeekCeil.java | 106 ++ .../expressions/functions/scalar/WeekFloor.java | 106 ++ .../expressions/functions/scalar/WeekOfYear.java | 46 +- .../scalar/{WeekOfYear.java => Weekday.java} | 52 +- .../expressions/functions/scalar/WeeksDiff.java | 79 ++ .../trees/expressions/functions/scalar/Year.java | 48 +- .../expressions/functions/scalar/YearCeil.java | 106 ++ .../expressions/functions/scalar/YearFloor.java | 106 ++ .../expressions/functions/scalar/YearWeek.java | 87 ++ .../expressions/functions/scalar/YearsDiff.java | 79 ++ .../trees/expressions/literal/BigIntLiteral.java | 7 +- .../trees/expressions/literal/CharLiteral.java | 12 +- .../trees/expressions/literal/DateLiteral.java | 3 +- .../expressions/literal/IntegerLikeLiteral.java} | 31 +- .../trees/expressions/literal/IntegerLiteral.java | 7 +- .../trees/expressions/literal/LargeIntLiteral.java | 7 +- .../nereids/trees/expressions/literal/Literal.java | 14 +- .../trees/expressions/literal/SmallIntLiteral.java | 7 +- .../expressions/literal/StringLikeLiteral.java | 22 +- .../trees/expressions/literal/StringLiteral.java | 4 +- .../trees/expressions/literal/TinyIntLiteral.java | 12 +- .../trees/expressions/literal/VarcharLiteral.java | 17 +- .../visitor/AggregateFunctionVisitor.java} | 60 +- .../expressions/visitor/ExpressionVisitor.java | 70 +- .../expressions/visitor/ScalarFunctionVisitor.java | 1206 ++++++++++++++++++++ .../apache/doris/nereids/trees/plans/JoinType.java | 13 +- .../apache/doris/nereids/trees/plans/PlanType.java | 1 + .../trees/plans/logical/LogicalAggregate.java | 7 +- .../{LogicalSubQueryAlias.java => LogicalCTE.java} | 65 +- .../nereids/trees/plans/logical/LogicalJoin.java | 10 +- .../trees/plans/logical/LogicalSubQueryAlias.java | 31 +- .../nereids/trees/plans/visitor/PlanVisitor.java | 5 + .../org/apache/doris/nereids/types/ArrayType.java | 26 +- .../org/apache/doris/nereids/types/BigIntType.java | 3 +- .../org/apache/doris/nereids/types/BitmapType.java | 3 +- .../org/apache/doris/nereids/types/CharType.java | 6 +- .../org/apache/doris/nereids/types/DataType.java | 210 +++- .../apache/doris/nereids/types/DateTimeV2Type.java | 25 +- .../org/apache/doris/nereids/types/DateV2Type.java | 2 +- .../apache/doris/nereids/types/DecimalType.java | 3 +- .../apache/doris/nereids/types/DecimalV2Type.java | 61 +- .../{DecimalV2Type.java => DecimalV3Type.java} | 108 +- .../org/apache/doris/nereids/types/DoubleType.java | 3 +- .../org/apache/doris/nereids/types/FloatType.java | 3 +- .../org/apache/doris/nereids/types/HllType.java | 5 +- .../apache/doris/nereids/types/IntegerType.java | 3 +- .../{QuantileStateType.java => JsonType.java} | 21 +- .../apache/doris/nereids/types/LargeIntType.java | 3 +- .../types/{QuantileStateType.java => MapType.java} | 25 +- .../doris/nereids/types/QuantileStateType.java | 3 +- .../apache/doris/nereids/types/SmallIntType.java | 3 +- .../org/apache/doris/nereids/types/StringType.java | 3 +- .../{QuantileStateType.java => StructType.java} | 25 +- .../org/apache/doris/nereids/types/TextType.java | 9 +- .../org/apache/doris/nereids/types/TimeV2Type.java | 2 +- .../apache/doris/nereids/types/TinyIntType.java | 3 +- .../apache/doris/nereids/types/VarcharType.java | 6 +- .../nereids/types/coercion/AbstractDataType.java | 11 +- .../doris/nereids/types/coercion/AnyDataType.java | 9 +- .../nereids/types/coercion/CharacterType.java | 2 +- .../nereids/types/coercion/FractionalType.java | 2 +- .../doris/nereids/types/coercion/IntegralType.java | 2 +- .../doris/nereids/types/coercion/NumericType.java | 2 +- .../nereids/types/coercion/TypeCollection.java | 9 +- .../apache/doris/nereids/util/ExpressionUtils.java | 14 + .../doris/nereids/util/ResponsibilityChain.java | 97 ++ .../java/org/apache/doris/persist/RecoverInfo.java | 10 +- .../doris/planner/DistributedPlanColocateRule.java | 2 + .../apache/doris/planner/DistributedPlanner.java | 30 +- .../doris/planner/RuntimeFilterGenerator.java | 3 +- .../main/java/org/apache/doris/qe/Coordinator.java | 50 +- .../apache/doris/qe/InsertStreamTxnExecutor.java | 13 +- .../java/org/apache/doris/qe/StmtExecutor.java | 24 +- .../org/apache/doris/rewrite/ExprRewriter.java | 4 +- .../org/apache/doris/rewrite/InferFiltersRule.java | 6 +- .../org/apache/doris/rpc/BackendServiceProxy.java | 2 +- .../apache/doris/analysis/ArrayLiteralTest.java | 65 ++ .../apache/doris/analysis/InsertArrayStmtTest.java | 46 +- .../doris/nereids/parser/HavingClauseTest.java | 30 +- .../doris/nereids/parser/NereidsParserTest.java | 26 + .../properties/DistributionSpecHashTest.java | 44 + .../rules/analysis/FunctionRegistryTest.java | 10 + .../rules/analysis/GenerateScalarFunction.java | 975 ++++++++++++++-- .../rules/expression/rewrite/TypeCoercionTest.java | 4 +- .../rewrite/logical/AggregateDisassembleTest.java | 30 +- .../rules/rewrite/logical/EliminateOuterTest.java | 20 +- .../logical/EliminateUnnecessaryProjectTest.java | 85 ++ .../nereids/stats/ExpressionEstimationTest.java | 4 +- .../trees/expressions/ExpressionEqualsTest.java | 9 +- .../nereids/trees/plans/PlanToStringTest.java | 2 +- .../nereids/util/AnalyzeWhereSubqueryTest.java | 53 +- .../apache/doris/nereids/util/RegisterCTETest.java | 336 ++++++ ...opInfoTest.java => DropAndRecoverInfoTest.java} | 36 +- .../java/org/apache/doris/udf/JdbcExecutor.java | 4 +- .../java/org/apache/doris/udf/UdafExecutor.java | 49 +- .../java/org/apache/doris/udf/UdfExecutor.java | 133 +-- .../main/java/org/apache/doris/udf/UdfUtils.java | 318 +++++- gensrc/script/doris_builtins_functions.py | 9 + regression-test/conf/regression-conf.groovy | 5 +- .../test_keywords.out} | 29 +- .../test_null_aware_left_anti_join.out} | 30 +- .../test_select_stddev_variance_window.out | 132 +-- .../unique/test_unique_table_sequence.out | 22 + .../data/data_model_p0/unique/unique_key_data1.csv | 3 + .../data/data_model_p0/unique/unique_key_data2.csv | 3 + regression-test/data/insert_p0/txn_insert.out | 29 + .../data/javaudf_p0/test_javaudf_date.out | 276 +++++ regression-test/data/nereids_syntax_p0/cte.out | 69 ++ regression-test/data/nereids_syntax_p0/view.out | 2 +- .../query/large_wide_table/large_wide_table.out | 103 ++ regression-test/data/query_p0/sort/sort.out | 3 + .../aggregate_functions/test_aggregate_collect.out | 12 + .../test_array_functions_by_literal.out | 18 + .../bitmap_functions/test_bitmap_function.out | 22 +- .../test_string_function_regexp.out | 15 + .../test_select_stddev_variance_window.out | 132 +-- .../sql/group_by/runConstantGroupBy_order.out | 24 - .../apache/doris/regression/RegressionTest.groovy | 8 +- .../main/java/org/apache/doris/udf/DateTest1.java} | 16 +- .../main/java/org/apache/doris/udf/DateTest2.java} | 16 +- .../main/java/org/apache/doris/udf/DateTest3.java} | 14 +- .../java/org/apache/doris/udf/DateTimeTest1.java} | 16 +- .../java/org/apache/doris/udf/DateTimeTest2.java} | 16 +- .../java/org/apache/doris/udf/DateTimeTest3.java} | 16 +- .../java/org/apache/doris/udf/DoubleTest.java} | 14 +- .../account_p0/test_nereids_authentication.groovy | 83 ++ .../suites/correctness_p0/test_keywords.groovy | 52 +- .../test_null_aware_left_anti_join.groovy | 66 ++ .../test_select_stddev_variance_window.groovy | 12 +- .../unique/test_unique_table_sequence.groovy | 111 ++ .../datatype_p0/string/test_string_basic.groovy | 2 +- regression-test/suites/insert_p0/txn_insert.groovy | 75 ++ .../suites/javaudf_p0/test_javaudf_date.groovy | 195 ++++ .../suites/nereids_syntax_p0/cte.groovy | 250 ++++ .../nereids_syntax_p0/one_row_relation.groovy | 11 +- .../suites/nereids_syntax_p0/view.groovy | 6 +- .../suites/query/large_wide_table/ddl/create.sql | 194 ++++ .../suites/query/large_wide_table/ddl/insert.sql | 1 + .../large_wide_table/large_wide_table.groovy} | 15 +- regression-test/suites/query_p0/sort/sort.groovy | 1 + .../test_aggregate_collect.groovy | 24 + .../test_array_functions_by_literal.groovy | 6 + .../bitmap_functions/test_bitmap_function.groovy | 4 +- .../test_string_function_regexp.groovy | 6 + .../test_select_stddev_variance_window.groovy | 12 +- ...test_string_concat_extremely_long_string.groovy | 44 + .../tpch_sf1_p1/tpch_sf1/explain/test_q16.groovy | 4 +- 577 files changed, 24053 insertions(+), 6305 deletions(-) delete mode 100644 be/src/vec/exec/vblocking_join_node.cpp delete mode 100644 be/src/vec/exec/vblocking_join_node.h delete mode 100644 be/src/vec/exec/vcross_join_node.h rename be/src/vec/exec/{vcross_join_node.cpp => vnested_loop_join_node.cpp} (52%) create mode 100644 be/src/vec/exec/vnested_loop_join_node.h create mode 100644 docs/en/docs/sql-manual/sql-functions/aggregate-functions/topn_array.md create mode 100644 docs/en/docs/sql-manual/sql-functions/bitmap-functions/bitmap_to_array.md create mode 100644 docs/en/docs/sql-manual/sql-functions/json-functions/jsonb_extract.md create mode 100644 docs/en/docs/sql-manual/sql-functions/json-functions/jsonb_parse.md create mode 100644 docs/en/docs/sql-manual/sql-functions/json-functions/jsonb_tutorial.md create mode 100644 docs/en/docs/sql-manual/sql-functions/string-functions/regexp/regexp_extract_all.md copy docs/en/docs/sql-manual/sql-functions/{math-functions/round.md => string-functions/regexp/regexp_replace_one.md} (51%) copy docs/en/docs/sql-manual/{sql-functions/math-functions/round.md => sql-reference/Data-Types/JSONB.md} (60%) create mode 100644 docs/zh-CN/docs/sql-manual/sql-functions/aggregate-functions/topn_array.md create mode 100644 docs/zh-CN/docs/sql-manual/sql-functions/bitmap-functions/bitmap_to_array.md create mode 100644 docs/zh-CN/docs/sql-manual/sql-functions/json-functions/jsonb_extract.md create mode 100644 docs/zh-CN/docs/sql-manual/sql-functions/json-functions/jsonb_parse.md create mode 100644 docs/zh-CN/docs/sql-manual/sql-functions/json-functions/jsonb_tutorial.md create mode 100644 docs/zh-CN/docs/sql-manual/sql-functions/string-functions/regexp/regexp_extract_all.md copy docs/zh-CN/docs/sql-manual/sql-functions/{math-functions/round.md => string-functions/regexp/regexp_replace_one.md} (51%) copy docs/zh-CN/docs/sql-manual/{sql-functions/math-functions/round.md => sql-reference/Data-Types/JSONB.md} (57%) copy fe/fe-core/src/main/java/org/apache/doris/catalog/{BuiltinFunctions.java => BuiltinAggregateFunctions.java} (71%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/catalog/BuiltinScalarFunctions.java delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/catalog/FuncSig.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/catalog/FunctionSignature.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/CTEContext.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/RegisterCTE.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/UserAuthentication.java delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/EliminateOuter.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/EliminateOuterJoin.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/EliminateUnnecessaryProject.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/ComputeSignature.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/DateTimeWithPrecision.java copy regression-test/suites/nereids_syntax_p0/one_row_relation.groovy => fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/DecimalSamePrecision.java (68%) copy regression-test/suites/nereids_syntax_p0/one_row_relation.groovy => fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/DecimalStddevPrecision.java (68%) copy regression-test/suites/nereids_syntax_p0/one_row_relation.groovy => fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/DecimalWiderPrecision.java (68%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/ExplicitlyCastableSignature.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/{PropagateNullable.java => ExpressionTrait.java} (60%) copy regression-test/suites/nereids_syntax_p0/one_row_relation.groovy => fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/FunctionTrait.java (68%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/IdenticalSignature.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/ImplicitlyCastableSignature.java copy regression-test/suites/nereids_syntax_p0/one_row_relation.groovy => fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/Nondeterministic.java (68%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/NullOrIdenticalSignature.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/SearchSignature.java delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/SignatureSupplier.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/AggregateParam.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Abs.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Acos.java} (56%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesDecrypt.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesEncrypt.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AppendTrailingCharIfAbsent.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Ascii.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Asin.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Atan.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Bin.java} (55%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitLength.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapAnd.java} (50%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/BitmapAndCount.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapAndNot.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapAndNotCount.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapContains.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapCount.java} (52%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/BitmapEmpty.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapFromString.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapHasAll.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapHasAny.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapHash.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapHash64.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapMax.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapMin.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapNot.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapOr.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapOrCount.java} (50%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/BitmapSubsetInRange.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/BitmapSubsetLimit.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapToString.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => BitmapXor.java} (50%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/BitmapXorCount.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Cbrt.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Ceil.java} (55%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Ceiling.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => CharLength.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => CharacterLength.java} (56%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Coalesce.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Concat.java} (50%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ConcatWs.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Conv.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ConvertTz.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Cos.java} (56%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/CurrentDate.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/CurrentTime.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/CurrentTimestamp.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Curtime.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Date.java} (54%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/DateDiff.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/DateFormat.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/DateTrunc.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => DateV2.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Day.java} (55%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/DayCeil.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/DayFloor.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => DayName.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => DayOfMonth.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => DayOfWeek.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => DayOfYear.java} (54%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/DaysDiff.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Dceil.java} (55%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Degrees.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Dexp.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Dfloor.java} (55%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Dlog1.java} (53%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Dlog10.java} (53%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Dpow.java} (50%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Dround.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Dsqrt.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/{agg/Max.java => scalar/E.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Elt.java} (50%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/EndsWith.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => EsQuery.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Exp.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => ExtractUrlParameter.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => FindInSet.java} (51%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Floor.java} (55%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Fmod.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Fpow.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => FromBase64.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => FromDays.java} (53%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/FromUnixtime.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/GetJsonDouble.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/GetJsonInt.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/GetJsonString.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Greatest.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Hex.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => HllCardinality.java} (52%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/HllEmpty.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => HllHash.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Hour.java} (55%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/HourCeil.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/HourFloor.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/HoursDiff.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/If.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Initcap.java} (55%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Instr.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => JsonArray.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => JsonObject.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/JsonQuote.java} (55%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/JsonbExistsPath.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/JsonbExtract.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/JsonbExtractBigint.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/JsonbExtractBool.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/JsonbExtractDouble.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/JsonbExtractInt.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/JsonbExtractIsnull.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/JsonbExtractString.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => JsonbParse.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => JsonbParseErrorToInvalid.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => JsonbParseErrorToNull.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => JsonbParseErrorToValue.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => JsonbParseNotnull.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => JsonbParseNotnullErrorToInvalid.java} (54%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/JsonbParseNotnullErrorToValue.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => JsonbParseNullable.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => JsonbParseNullableErrorToInvalid.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => JsonbParseNullableErrorToNull.java} (52%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/JsonbParseNullableErrorToValue.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/JsonbType.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Least.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Left.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Length.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Ln.java} (53%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/LocalTime.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/LocalTimestamp.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Locate.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Log.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Log10.java} (53%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Log2.java} (53%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Lower.java} (54%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Lpad.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Ltrim.java} (54%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MakeDate.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Md5.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Md5Sum.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Minute.java} (55%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MinuteCeil.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MinuteFloor.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MinutesDiff.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => MoneyFormat.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Month.java} (55%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MonthCeil.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MonthFloor.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => MonthName.java} (52%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MonthsDiff.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => MurmurHash332.java} (50%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MurmurHash364.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Negative.java} (53%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => NotNullOrEmpty.java} (52%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Now.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/NullIf.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => NullOrEmpty.java} (52%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Nvl.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ParseUrl.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/{agg/Max.java => scalar/Pi.java} (50%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Pmod.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Positive.java} (53%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Pow.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Power.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => QuantilePercent.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Quarter.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Radians.java} (56%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Random.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/RegexpExtract.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/RegexpReplace.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Repeat.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Replace.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Reverse.java} (54%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Right.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Round.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Rpad.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Rtrim.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Second.java} (55%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/SecondCeil.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/SecondFloor.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/SecondsDiff.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Sign.java} (55%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Sin.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Sleep.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Sm3.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Sm3sum.java} (50%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Decrypt.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Encrypt.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Space.java} (56%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/SplitPart.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Sqrt.java} (56%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => StAstext.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => StAswkt.java} (52%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/StCircle.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/StContains.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/StDistanceSphere.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => StGeometryfromtext.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => StGeomfromtext.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => StLinefromtext.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => StLinestringfromtext.java} (52%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/StPoint.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => StPolyfromtext.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => StPolygon.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => StPolygonfromtext.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => StX.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => StY.java} (52%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/StartsWith.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/StrLeft.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/StrRight.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/StrToDate.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/SubBitmap.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/Tan.java} (56%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/TimeDiff.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Timestamp.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/{analyzer/UnboundAlias.java => trees/expressions/functions/scalar/ToBase64.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => ToBitmap.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => ToBitmapWithCheck.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => ToDate.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => ToDateV2.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => ToDays.java} (53%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => ToQuantileState.java} (50%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Trim.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Truncate.java} (52%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Unhex.java} (52%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/UnixTimestamp.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Upper.java} (54%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/UtcTimestamp.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Version.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Week.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/WeekCeil.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/WeekFloor.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{WeekOfYear.java => Weekday.java} (54%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/WeeksDiff.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/YearCeil.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/YearFloor.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/YearWeek.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/YearsDiff.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/{types/coercion/AnyDataType.java => trees/expressions/literal/IntegerLikeLiteral.java} (63%) copy regression-test/suites/nereids_syntax_p0/one_row_relation.groovy => fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/literal/StringLikeLiteral.java (66%) rename fe/fe-core/src/main/java/org/apache/doris/{catalog/BuiltinFunctions.java => nereids/trees/expressions/visitor/AggregateFunctionVisitor.java} (50%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/visitor/ScalarFunctionVisitor.java copy fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/{LogicalSubQueryAlias.java => LogicalCTE.java} (54%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/types/{DecimalV2Type.java => DecimalV3Type.java} (53%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/types/{QuantileStateType.java => JsonType.java} (74%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/types/{QuantileStateType.java => MapType.java} (71%) copy fe/fe-core/src/main/java/org/apache/doris/nereids/types/{QuantileStateType.java => StructType.java} (70%) create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/util/ResponsibilityChain.java create mode 100644 fe/fe-core/src/test/java/org/apache/doris/analysis/ArrayLiteralTest.java create mode 100644 fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/EliminateUnnecessaryProjectTest.java create mode 100644 fe/fe-core/src/test/java/org/apache/doris/nereids/util/RegisterCTETest.java rename fe/fe-core/src/test/java/org/apache/doris/persist/{DropInfoTest.java => DropAndRecoverInfoTest.java} (67%) copy regression-test/data/{trino_p0/sql/group_by/runConstantGroupBy_order.out => correctness_p0/test_keywords.out} (53%) copy regression-test/data/{trino_p0/sql/group_by/runConstantGroupBy_order.out => correctness_p0/test_null_aware_left_anti_join.out} (56%) create mode 100644 regression-test/data/data_model_p0/unique/test_unique_table_sequence.out create mode 100644 regression-test/data/data_model_p0/unique/unique_key_data1.csv create mode 100644 regression-test/data/data_model_p0/unique/unique_key_data2.csv create mode 100644 regression-test/data/insert_p0/txn_insert.out create mode 100644 regression-test/data/javaudf_p0/test_javaudf_date.out create mode 100644 regression-test/data/nereids_syntax_p0/cte.out create mode 100644 regression-test/data/query/large_wide_table/large_wide_table.out copy regression-test/{suites/nereids_syntax_p0/one_row_relation.groovy => java-udf-src/src/main/java/org/apache/doris/udf/DateTest1.java} (68%) copy regression-test/{suites/nereids_syntax_p0/one_row_relation.groovy => java-udf-src/src/main/java/org/apache/doris/udf/DateTest2.java} (68%) copy regression-test/{suites/nereids_syntax_p0/one_row_relation.groovy => java-udf-src/src/main/java/org/apache/doris/udf/DateTest3.java} (68%) copy regression-test/{suites/nereids_syntax_p0/one_row_relation.groovy => java-udf-src/src/main/java/org/apache/doris/udf/DateTimeTest1.java} (68%) copy regression-test/{suites/nereids_syntax_p0/one_row_relation.groovy => java-udf-src/src/main/java/org/apache/doris/udf/DateTimeTest2.java} (68%) copy regression-test/{suites/nereids_syntax_p0/one_row_relation.groovy => java-udf-src/src/main/java/org/apache/doris/udf/DateTimeTest3.java} (68%) copy regression-test/{suites/nereids_syntax_p0/one_row_relation.groovy => java-udf-src/src/main/java/org/apache/doris/udf/DoubleTest.java} (68%) create mode 100644 regression-test/suites/account_p0/test_nereids_authentication.groovy copy fe/fe-core/src/main/java/org/apache/doris/nereids/types/DateV2Type.java => regression-test/suites/correctness_p0/test_keywords.groovy (56%) create mode 100644 regression-test/suites/correctness_p0/test_null_aware_left_anti_join.groovy create mode 100644 regression-test/suites/data_model_p0/unique/test_unique_table_sequence.groovy create mode 100644 regression-test/suites/insert_p0/txn_insert.groovy create mode 100644 regression-test/suites/javaudf_p0/test_javaudf_date.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/cte.groovy create mode 100644 regression-test/suites/query/large_wide_table/ddl/create.sql create mode 100644 regression-test/suites/query/large_wide_table/ddl/insert.sql copy regression-test/suites/{nereids_syntax_p0/one_row_relation.groovy => query/large_wide_table/large_wide_table.groovy} (68%) create mode 100644 regression-test/suites/tpcds_sf1_p1/functions_test/test_string_concat_extremely_long_string.groovy --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org