yangzhg opened a new issue #5374:
URL: https://github.com/apache/incubator-doris/issues/5374


   Since the release of 0.13, Apache Doris (incubating) contains around 390 new 
features, bug fixes, performance enhancements, documentation improvements, code 
refactors from 60+ contributors. We are ready to release Apache Doris 
(incubating) 0.14.
   
   # New Feature
   
   ### Import and delete
   
   Support to delete multiple pieces of data at one time through the import 
method to avoid performance degradation caused by multiple deletions. For 
tables of the UniqueKey model, support to specify the Sequence column when 
importing. Doris will judge the sequence of the data according to the value of 
the Sequence column to ensure that the data is imported Time order
   
    [#4310] [#4256]
   
   ### Support database backup
   
   The support in the backup stmt specifies the backup content (metadata and 
data).
   Support exclude backup and restore some tables in stmt. When backing up the 
entire database, you can exclude some very large and unimportant tables.
   Supports backing up and restoring the entire database instead of declaring 
each table name in the backup and restore statement.
   
    [#5314]
   
   ### ODBC external table support
   
   Support access to external tables such as MySQL, postgresql, Oracle, etc. 
through ODBC protocol
   
    [#4798] [#4438] [#4559] [#4699]
   
   ### Support SQL level and Partition level result Cache
   
   Support for caching query results to improve the efficiency of repeated 
queries, support SQL-level and Partition-level results Cache [#4330]
   
   ### Built-in functions
   
   - Support bitmap_xor function [#5098]
   - Add replace() function [#4347]
   - Add the time_round function to support time alignment according to 
multiple time granularities [#4640]
   
   ### FE interface and HTTP interface
   
   - The new FE UI interface can be enabled by setting the FE configuration 
item enable_http_server_v2 [#4684]
   
   - BE adds an http interface to show the distribution of all tablets in a 
partition among different disks in a BE [#5096]
   - BE adds an http interface to manually migrate a tablet to other disks on 
the same node [#5101]
   - Support to modify the configuration items of FE and BE through http, and 
persist these modifications [#4704]
   - 
   
   ### Compatibility with MySQL
   
   - Added support for views table in the information_schema database [#4778]
   - Added table_privileges, schema_privileges and user_privileges to the 
information_schema library for compatibility with certain MySQL applications 
[#4899]
   - A new statistic table is added to the information_schema meta-database for 
compatibility with some MySQL tools [#4991]
   
   ### Monitoring
   
   - BE added tablet-level monitoring indicators, including scanned data volume 
and row number, written data volume and row number, to help locate hot tablets 
[#4428]
   
   - BE added metrics to view the usage of various LRU caches [#4688]
   
   ### Table building related
   
   - Added CREATE TABLE LIKE statement to facilitate the creation of a table 
metadata copy [#4705]
   - Support atomic replacement of two tables through replace statement [#4669]
   
   ### Other
   
   - Support adding Optimizer Hints of type SET_VAR in the Select statement to 
set session variables [#4504]
   
   - Support to repair damaged tablets by filling in empty tablets [#4255]
   - Support Bucket Shuffle Join function (when the Join condition column is a 
subset of the table bucket column, the right table will be shuffled to the node 
where the data in the left table is located, which can significantly reduce the 
network overhead caused by Shuffle Join and improve query speed) [# 4677]
   - Support batch cancel import tasks through cancel load statement [#4515]
   - Add a Session variable to set whether to allow the partition column to be 
NULL [#5013]
   - Support TopN aggregation function [#4803]
   - Support a new data balancing logic based on the number of partitions and 
buckets [#5010]
   - Support creating indexes on the value column of unique table [#5305]
   
   # Enhancement
   
   ### Performance improvement
   
   - Implemented a new compaction selection algorithm, providing lower write 
amplification and a more reasonable compaction strategy [#4212]
   - Optimize bit operation efficiency in variable length coding [#4366]
   - Improve the execution efficiency of monery_format function [#4672]
   - Optimize query execution plan: When the bucket column of the table is a 
subset of the GroupBy column in SQL, reduce the data shuffle step [#4482]
   - Improve the efficiency of column name search on BE [#4779]
   - Improve the performance of the BE side LRU Cache [#4781]
   - Optimized the tablet selection strategy of Compaction, reducing the number 
of invalid selections [#4964]
   - Optimized the reading efficiency of Unique Key table [#4958]
   - Optimized the memory usage of LoadJob on the FE side and reduced the 
memory overhead on the FE side [#4993]
   - Reduce the lock granularity in FE metadata from Database level to Table 
level to support more fine-grained concurrent access to metadata [#3775]
   - Avoid unnecessary memory copy when creating hash table [#5301]
   - Remove the path check when BE starts to speed up BE startup speed [#5268]
   - Optimize the import performance of Json data [#5114]
   
   ### Functional improvements
   
   - SQL supports collate utf8_general_ci syntax to improve MySQL syntax 
compatibility [#4365]
   - Improve the function of Batch delete, improve and optimize the related 
compaction process [#4425]
   - Enhance the function of parse_url() function, support lowercase, support 
parsing port [#4429]
   - When SQL execution specifies the execution mode of join (Join Hint), the 
Colocation Join function will be disabled by default [#4497]
   - Dynamic partition support hour level [#4514]
   - HTTP interface on BE side supports gzip compression [#4533]
   - Optimized the use of threads on the BE side [#4440]
   - Optimize the checking process and error message of the rand() function in 
the query analysis stage [#4439]
   - Optimize the compaction triggering and execution logic to better limit the 
resource overhead (mainly memory overhead) of the compaction operation, and 
trigger the compaction operation more reasonably [#4670]
   - Support pushing Limit conditions to ODBC/MySQL external tables [#4707]
   - Increase the limit on the number of tablet versions on the BE side to 
prevent excessive data versions from causing abnormal cluster load [#4687]
   - When an RPC error occurs in a query, it can quickly return specific error 
information to prevent the query from being stuck [#4702]
   - Support automatic mapping of count(distinct if(bool, bitmap, null)) to 
bitmap_union_count function [#4201]
   - Support set sql_mode = concat(@@sql_mode, "STRICT_TRANS_TABLES") statement 
[#4359]
   - Support all stream load features in multiload [#4717]
   - Optimize BE’s strategy for selecting disks when creating tablets, and use 
the "two random choices" algorithm to ensure tablet copies are more even [#4373]
   - When creating a materialized view, the bitmap_union aggregation method 
only supports integer columns, and hll_union does not support decimal columns 
[#4432]
   - Optimize the log level of some FEs to avoid log writing becoming a 
bottleneck [#4766]
   - In the describe table statement, display the definition expression of the 
aggregate column of the materialized view [#4446]
   - Support convert() function [#4364]
       -Support cast (expr as signed/unsigned int) syntax to be compatible with 
MySQL ecology
       -Add more columns to the information_schema.columns table to be 
compatible with the MySQL ecosystem
   - In Spark Load function, use yarn command line instead of yarn-client API 
to kill job or get job status [#4383]
   - Persistence of stale rowset meta-information to ensure that this 
information will not be lost after BE restarts [#4454]
   - Return an error code in the schema change result to more clearly inform 
the user of the specific error [#4388]
   - Optimize the rowset selection logic of some compactions to make the 
selection strategy more accurate [#5152]
   - Optimize the Page Cache on the BE side, divide Page into data cache and 
index cache [#5008]
   - Optimized the accuracy of functions such as variance and standard 
deviation on Decimal type [#4959]
   - Optimized the processing logic of predicates pushed down to ScanNode to 
avoid repeated filtering of predicate conditions at the query layer and improve 
query efficiency [#4999]
   - Optimized the predicate push-down logic of Unique Key table, and supports 
push-down the conditions of non-primary key columns [#5022]
   - Support pushing down "not in" and "!=" to the storage layer to improve 
query efficiency [#5207]
   - Support writing multiple memtables of a tablet in parallel during import. 
Improve import efficiency [#5163]
   - Optimize the creation logic of ZoneMap. When the number of rows on a page 
is too small, ZoneMap will not be created anymore [#5260]
   - Added histogram monitoring indicator class on BE [#5148]
   - When importing Parquet files, if there is a parsing error, the specific 
file name will be displayed in the error message [#4954]
   - Optimize the creation logic of dynamic partitions, the table under 
construction directly triggers the creation of dynamic partitions [#5209]
   - In the result of the SHOW BACKENDS command, display the real start time of 
BE [#4872]
   - Support column names start with @ symbol, mainly used to support mapping 
ES tables [#5006]
   - Optimize the logic of the mapping and conversion relationship of the 
declared columns in the import statement to make the use more clear [#5140]
   - Optimize the execution logic of colocation join to make the query plan 
more evenly executed on multiple BE nodes [#5104]
   - Optimize the predicate pushdown logic, and support pushdown of is null and 
is not null to the storage engine [#5092]
   - Optimize the BE node selection logic in bucket join [#5133]
   - Support UDF in import operation [#4863]
   
   ### Other
   
   - Added support for IN Predicate in delete statement [#4404]
   - Update the Dockerfile of the development image and add some new 
dependencies [#4474]
   - Fix various spelling errors in the code and documentation [#4714] [#4712] 
[#4722] [#4723] [#4724] [#4725] [#4726] [#4727]
   - Added two segment-related indicators in the OlapScanNode of the query 
profile to display the total number of segments and the number of filtered 
segments [#4348]
   - Add batch delete function description document [#4435]
   - Added Spark Load syntax manual [#4463]
   - Added the display of cumulative compaction strategy name and rowset data 
size in BE's /api/compaction/show API [#4466]
   - Redirect the Spark Launcher log in Spark Load to a separate log file for 
easy viewing [#4470]
   - The BE configuration item streaming_load_max_batch_size_mb was renamed 
streaming_load_json_max_mb to make its meaning more clear [#4791]
   - Adjust the default value of the FE configuration item 
thrift_client_timeout_ms to solve the problem of too long access to the 
information_schema library [#4808]
   - CPU or memory sampling of BE process is supported on BE web page to 
facilitate performance debugging [#4632]
   - Extend the data slicing balance class on the FE side, so that it can 
extend more balance logic [#4771]
   - The reorganized OLAP_SCAN_NODE profile information makes the profile 
clearer and easier to read [#4825]
   - Added monitoring indicators on the BE side to monitor cancelled Query 
Fragment [#4862]
   - Reorganized the profile information of HASH_JOIN_NODE, CROSS_JOIN_NODE, 
UNION_NODE, ANALYTIC_EVAL_NODE to make the Profile more clear and easy to read 
[#4878]
   - Modify the default value of 
query_colocate_join_memory_limit_penalty_factor to 1 to ensure that the default 
memory limit of the execution plan fragment is consistent with the user setting 
during the colocation join operation [#4895]
   - Added consideration of tablet scanning frequency in the selection of 
compaction strategy on the BE side [#4837]
   - Optimize the strategy of sending Query Fragments and reduce the number of 
sending public attributes to improve query plan scheduling performance [#4904]
   - Optimized the accuracy of load statistics for unavailable nodes when the 
query scheduler is scheduling query plans [#4914]
   - Add the code version information of the FE node in the result of the SHOW 
FRONTENDS statement [#4943]
   - Support more column type conversion, such as support conversion from CHAR 
to numeric type, etc. [#4938]
   - Import function to identify complex types in Parquet files [#4968]
   - In the BE monitoring indicators, increase the monitoring of used permits 
and waiting permits in the compaction logic [#4893]
   - Optimize the execution time of BE single test [#5131]
   - Added more JVM-related monitoring items on the FE side [#5112]
   - Add a session variable to control the timeout period for the transaction 
to take effect in the insert operation [#5170]
   - Optimize the logic of selecting scan nodes for query execution plans, and 
consider all ScanNode nodes in a query [#4984]
   - Add more system monitoring indicators for FE nodes [#5149]
   - Use of VLOG in unified BE code [#5264]
   
   # BugFix
   
   - Fix the bug that may be caused during playback of Erase Table metadata 
operations [#5221]
   
   - Fix the problem that the BE process crashes due to the orc::TimezoneError 
not being caught when importing ORC format files [#4350]
   
   - Fix the problem that the result of the Except operator is incorrect [#4369]
   
   - Fix the problem that the query always route to the same BE node when 
querying ES data [#4352]
   
   - Fix the problem that the operation is not correctly persisted when setting 
the Global Variable [#4324]
   
   - Fixed the problem that the MemTracker was not constructed correctly in 
PushHandler which caused the BE process to crash [#4345]
   
   - Fix the problem of importing blank lines when importing Json data format 
[#4379]
   
   - Fix the problem that the SQL rewriting rules failed to correctly handle 
count distinct [#4382]
   
   - Fix the problem that the data model type of the materialized view is not 
set correctly when creating the materialized view [#4375]
   
   - Fix the problem of wrong query result of left semi/anti join [#4417]
   
   - Prioritize the join method specified by the user [#4424]
   
   - Fix the problem of incorrect results when Inline view is included in the 
Left join operation [#4279]
   
   - [#4362]
   
     select database() no longer returns the cluster qualified name, and fix 
the problem that select user() does not display the user ip
   
   - Fix the problem that the number of table copies displayed by show create 
table is incorrect for tables that use the dynamic partition function [#4393]
   
   - Fix the inconsistent precision of decimal, char and varchar columns in the 
base table and the materialized view in the materialized view [#4436]
   
   - Fix the problem of wild pointer in PlanFragmentExecutor, fix the problem 
of null pointer when importing in json format [#4448]
   
   - Fixed the problem that some remaining tablet directories on BE were not 
cleared [#4401]
   
   - Fix some issues with Spark Load [#4464]
   
   - Fix the problem that the balance of the colocation table cannot be 
completed [#4471]
   
   - Fix MemIndex::load_segment possible memory copy exception problem [#4458]
   
   - Fix the problem of BE crashing when using Load Error Hub function when 
WITH_MYSQL compilation option is not added [#4486]
   
   - Fix the problem of execution error when using @@sql_mode environment 
variable in SQL [#4484]
   
   - Fix the problem of splitting the same column in Spark Load and Broker 
Load, and the splitting behavior is inconsistent [#4491]
   
   - Fix the problem of BE downtime caused by querying the 
information_schema.columns table [#4511]
   
   - Fix some issues in the persistence of rowset metadata in historical 
versions [#4513]
   
   - Fix the problem of inconsistent behavior of str_do_date() function on FE 
side and BE side [#4495]
   
   - Fixed the issue where BE was down due to some historical data conversion 
when performing linked schema change [#4526]
   
   - Fix the problem that Spark Load stays in the ETL stage after FE restart 
[#4528]
   
   - Fixed an issue that caused unreadable data when the delete condition 
contained "\n" [#4531]
   
   - Fix the problem that Spark Load job in PENDING state cannot be cancelled 
[#4536]
   
   - Fix the problem of inconsistent behavior when splitting columns between 
Spark Load and other import methods [#4536]
   
   - Fix the problem that net.sourceforge.czt.dev cannot be found when 
compiling the FE module [#4636]
   
   - Fix the problem that the statement parsing fails when the cast function 
exists in the case when statement [#4646]
   
   - Fix the problem that all queries will fail when there is a problem with 
the RPC of a certain BE [#4651]
   
   - Fixed the issue that related import transactions were not cleaned up after 
the BE node went down [#4661]
   
   - Fix the problem that the column types of the columns table of 
information_schema are not compatible with MySQL [#4648]
   
   - Fix the problem of SQL Cache access out of bounds [#4641]
   
   - Fix the problem that import throws a null pointer exception when there is 
no partition in the table [#4658]
   
   - Fix an error when tools/show_segment_status access external tables [#4671]
   
   - Fix the issue that delete on clause may not take effect in Routine Load 
[#4676]
   
   - Fix the problem that the columns of information_schema do not display 
comments [#4683]
   
   - Fix the problem that hidden columns (delete flag column, etc.) may be lost 
after schema change [#4686]
   
   - Fix the problem that the window function lag()/lead() reports an error 
when matching the decimal type [#4666]
   
   - Fix the problem that the client is stuck in high concurrency scenarios 
when using MySQL NIO Server [#4680]
   
   - Fix the problem of always reporting out of date in tablet report [#4695]
   
   - Fix the problem of duplicate columns in case when statement after query 
planning [#4693]
   
   - Fix the problem that the rand() function generates the same random value 
every time [#4709]
   
   - Fix the problem of query error caused by incorrect column cardinality 
statistics [#4678]
   
   - Fix the problem of BE downtime caused by function error of split_part 
function [#4721]
   
   - Fix the problem of query execution error when SQL statement contains 
constant subquery [#4719]
   
   - Fix the problem of join query error when the table contains the delete tag 
column [#4734]
   
   - Fix the problem of syntax parsing errors when the CTE statement contains 
nested subqueries [#4731]
   
   - Fix the problem of lead/lag type matching error in window function [#4732]
   
   - Fix the problem that tablet cannot be selected correctly when selecting 
tablet for compaction [#4593]
   
   - Fix the problem that limit conditions are incorrectly pushed down to the 
odbc external table and Es external table [#4764] [#4768]
   
   - Fix the problem that the compaction thread stops working [#4750]
   
   - Fix the problem that the timeout idle connection is not automatically 
killed in some cases [#4774]
   
   - Fix the problem of error when querying tables with delete flag column when 
SQL contains join [#4770]
   
   - Fix the calculation results of some time functions in FE to keep the 
results consistent with BE calculations [#4786]
   
   - Fix the issue that BE crashes when displaying tablet information on BE web 
page [#4775]
   
   - Fix the type conversion problem of the time type filter condition, so that 
it can be correctly converted to the corresponding event type [#4806]
   
   - Fixed the problem of repeatedly creating hidden columns when creating 
Rollup [#4816]
   
   - Fix the problem of hidden sequence column not displaying [#4818]
   
   - Fix the problem of incorrect query results of some union statements [#4807]
   
   - Fixed an issue where offline node tasks could not be completed in some 
cases [#4804]
   
   - Intelligently identify illegal date constants during SQL parsing to avoid 
query scanning all partitions [#4756]
   
   - Fix the problem that BE crashes when the BE side selects the tablet for 
compaction without locking [#4829]
   
   - Fix some front-end display issues and back-end cookie processing logic 
issues in the new version of the UI [#4830]
   
   - Fixed the problem that the tablet could not be found when querying errors 
when UNION and Colocation Join are included in SQL [#4842]
   
   - When submitting import tasks, the submission failed due to the full task 
queue, but the failure exception was not captured correctly [#4796]
   
   - Fix the problem of Broker Load job scheduling. Avoid the problem that some 
jobs cannot be scheduled after submission [#4869]
   
   - Just before Master FE is started, avoid forwarding commands to Master FE 
[#4844]
   
   - Ignore Parquet and ORC format empty files when importing to avoid reading 
errors [#4810]
   
   - Fix the problem that the materialized view name conflict is not checked 
when renaming the OLAP table [#4870]
   
   - Fix the problem that the creation fails when using complex SQL to create a 
logical view [#4840]
   
   - Fixed an issue where Routine Load could not end the task correctly due to 
reading empty messages when consuming Kafka data [#4861]
   
   - Fix the problem that some column names are not recognized when using CTE 
syntax [#4887]
   
   - Fix the problem that the content of the columns table of the 
Information_schema library is incorrect [#4858]
   
   - Fix the problem that BitmapValue serialization fails when only 32-bit 
integers are included in the implementation of BitmapValue on the FE side 
[#4884]
   
   - Fix that when calculating BE disk usage, all disk space not used by Doris 
in the node is incorrectly included. This will cause calculation errors during 
the Decommission operation [#4889]
   
   - Fix the problem that an additional column may be added incorrectly when 
only constant expressions are included in the SELECT list [#4901]
   
   - Fix the problem that the Thrift Server type on the FE side and the BE side 
are inconsistent and cause communication failure [#4908]
   
   - When partition cutting, ignore the filter conditions on non-columns [#4921]
   
   - Fix the problem that the log directory is created incorrectly in the 
start_fe.sh startup script [#4929]
   
   - Fix the problem that some NULL values are not displayed when using CTE 
syntax [#4932]
   
   - Fix the problem that Colocation Group is always in unstable state when 
some BE nodes are down [#4936]
   
   - It is forbidden to create a table in Segment V1 format [#4913]
   
   - Fix the problem that Bool type condition processing error when Doris 
queries ES data [#4990]
   
   - Fix a problem of Tablet Shard lock on BE side [#5000]
   
   - Fix the problem of ConcurrentModificationException that may appear on the 
FE side when deleting a table that is being imported [#5003]
   
   - Fix the problem of incorrect return type of str_to_date function [#5004]
   
   - Fix the problem that the precision of some floating point types is lost 
when importing Json format data [#4983]
   
   - Fix the problem of incomplete query results when using Union to connect 
multiple external tables to query [#5067]
   
   - Fix the problem that the query result is incorrect when the SQL contains 
multiple in conditions [#5072]
   
   - Fix a problem that the order of Profile destruction caused BE downtime 
[#5078]
   
   - Fix the problem of memory leakage when importing Json format data [#5073]
   
   - Fix the problem that Colocation balance logic occupies 100% CPU when there 
is no BE node [#5079]
   
   - Fix the issue that creating a new tablet may cause BE downtime [#5089]
   
   - Fixed the problem that the shared pointer circular reference caused the 
tablet to be unable to be cleared and occupied disk space [#5100]
   
   - Fix the issue that the BE will crash when the is null condition is 
included in the delete condition [#5109]
   
   - Fix a problem with Partition Cache hit strategy [#5060]
   
   - Optimize the strategy of Spark Load to read Hive tables to avoid full 
scanning of Hive tables [#5047]
   
   - Added support for Ninjia build system to speed up the compilation speed of 
BE [#5076]
   
   - Optimize the efficiency of importing data in Json format [#5055]
   
   - Support FE to directly use thrift protocol to transmit heartbeat 
information to avoid heartbeat blocking failure that may be caused by http 
communication model [#5027]
   
   - Simplify the opening logic of the dynamic partition function, and prohibit 
hourly partitioning for date type columns [#5043]
   
   - Support to view Broker Load Profile through FE Web page [#5052]
   
   - When viewing Resource information, clear text password is no longer 
displayed [#5088]
   
   - The BE side adds trace information for tablet creation to help locate the 
problem of slow tablet creation [#5091]
   
   - Fix the issue that may cause data loss when Routine Load consumes Kafka 
data in some cases [#5093]
   
   - Fix the problem that desc statement to view all materialized views may 
return Malformed packet [#5115]
   
   - Fix the issue that may cause BE to crash when BE starts loading the data 
directory [#5113]
   
   - Fix the problem that non-Master FE repeatedly sends non-query requests to 
Master FE [#5160]
   
   - Fix the problem of partition cache hit logic error [#5065]
   
   - Fixed an error when bucket join was executed on an empty table [#5145]
   
   - Fix the problem that the percentile_approx function returns the wrong 
result [#5172]
   
   - Fix the problem of the calling sequence of Olap Scanner thread ending 
[5111]
   
   - Fixed an error when creating the colocation attribute for an empty 
partitioned table [#5139]
   
   - Fixed an error when querying materialized views in CTE statement [#5165]
   
   - Fix the problem that the min max function does not handle the null value 
of string type column correctly [#5189]
   
   - Modify the string encoding in Spark-Doris-Connector to utf8 [#5202]
   
   - Fix the problem that delete column may be added repeatedly in routine load 
[#5222]
   
   - Fix bucket shuffle join bug [#5228]
   
   - Fix the issue that the ALTER ROUTINE LOAD operation is invalid for some 
parameters [#5257]
   
   - Fixed an issue where metadata signatures of different tables may be the 
same during backup and recovery operations [#5254]
   
   - Fix the problem that Colocate Join and Buckets shuffle join may cause data 
to be scanned repeatedly [#5256]
   
   - Fix the issue of metadata errors caused by unchecked log id when FE pushes 
metadata [#5219]
   
   - Fix the problem of error in aggregate query processing -0.0 [#5226]
   
   - Fix outer join query error [#5285]
   
   
   
   # Other
   
   - Add some non-Apache protocol code protocol declarations to the NOTICE file 
[#4831]
   
   - Reformatted the code of BE using clang-format [#4965]
   
   - Added clang-format checking and formatting scripts to unify the C++ code 
style of BE before submission [#4934]
   
   - The third-party library adds the AWS S3 SDK, which can be used to directly 
read the data in the object storage through the SDK [#5234]
   
   - Fixed some issues related to License: [#4371]
   
       1. The dependencies of the two third-party libraries, MySQL client and 
LZO, will no longer be enabled in the default compilation options. If users 
need MySQL external table function, they need to turn it on
   
       2. Removed the js and css code in the code library and introduced it in 
the form of a third-party library dependency
   
   - Updated the Docker development environment image build-env-1.2
   
   - Updated the compilation method of the UnixODBC tripartite library, so that 
the BE process no longer depends on the libltdl.so dynamic library of the 
system when it is running
   
   - Added third-party UDF to support more efficient set calculation of 
orthogonal bitmap data [#4198]
   
   - Added UnixODBC third-party library dependency to support ODBC external 
table function [#4377]
   
   # API Change
   
   - Prohibit the creation of segment v1 tables [#4913]
   - Rename the configuration item `streaming_load_max_batch_size_mb` to 
`streaming_load_json_max_mb` [\#4791]
   - Support column reference passing in column definition of load statement 
[#5140]
   - Support creating indexes on the value column of unique table [#5305]
   - Support atomic replacement of two tables through replace statement [#4669]
   - Support CREATE TABLE LIKE statement
   
   # Credits
   
   [924060929](https://github.com/924060929)
   [acelyc111](https://github.com/acelyc111)
   [Astralidea](https://github.com/Astralidea)
   [benbiti](https://github.com/benbiti)
   [blueChild](https://github.com/blueChild)
   [caiconghui](https://github.com/caiconghui)
   [caoyang10](https://github.com/caoyang10)
   [ccoffline](https://github.com/ccoffline)
   [coalchan](https://github.com/coalchan)
   [Dam1029](https://github.com/Dam1029)
   [e0c9](https://github.com/e0c9)
   [EmmyMiao87](https://github.com/EmmyMiao87)
   [gengjun-git](https://github.com/gengjun-git)
   [HangyuanLiu](https://github.com/HangyuanLiu)
   [HappenLee](https://github.com/HappenLee)
   [hffariel](https://github.com/hffariel)
   [jollykingCN](https://github.com/jollykingCN)
   [kangkaisen](https://github.com/kangkaisen)
   [killxdcj](https://github.com/killxdcj)
   [lihuigang](https://github.com/lihuigang)
   [liutang123](https://github.com/liutang123)
   [luozenglin](https://github.com/luozenglin)
   [marising](https://github.com/marising)
   [mengqinghuan](https://github.com/mengqinghuan)
   [morningman](https://github.com/morningman)
   [nimuyuhan](https://github.com/nimuyuhan)
   [Nivane](https://github.com/Nivane)
   [pengxiangyu](https://github.com/pengxiangyu)
   [px-l](https://github.com/px-l)
   [qidaye](https://github.com/qidaye)
   [sduzh](https://github.com/sduzh)
   [Skysheepwang](https://github.com/Skysheepwang)
   [songchuangyuan](https://github.com/songchuangyuan)
   [stalary](https://github.com/stalary)
   [stdpain](https://github.com/stdpain)
   [Sunt-ing](https://github.com/Sunt-ing)
   [vagetablechicken](https://github.com/vagetablechicken)
   [vergilchiu](https://github.com/vergilchiu)
   [wangbo](https://github.com/wangbo)
   [wangxiaobaidu11](https://github.com/wangxiaobaidu11)
   [weizuo93](https://github.com/weizuo93)
   [WingsGo](https://github.com/WingsGo)
   [wutiangan](https://github.com/wutiangan)
   [wuyunfeng](https://github.com/wuyunfeng)
   [xinghuayu007](https://github.com/xinghuayu007)
   [xinyiZzz](https://github.com/xinyiZzz)
   [Xpray](https://github.com/Xpray)
   [xy720](https://github.com/xy720)
   [yangzhg](https://github.com/yangzhg)
   [Youngwb](https://github.com/Youngwb)
   [yxqweasd](https://github.com/yxqweasd)
   [zh0122](https://github.com/zh0122)
   [ZhangYu0123](https://github.com/ZhangYu0123)
   [zhaojintaozhao](.https://github.com/zhaojintaozhao)


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to