We have introduced many exciting new features and improvements, including support for system variables, enhanced HTTP compression, more GIS functions, and optimizations for tenant management. Additionally, we have made a series of performance optimizations and issue fixes to ensure the system is more stable and efficient. The specific updates are as follows:
New Features
-
- Implemented the framework for adding system variables and added @@server_version [#1673]
- Supported data nodes to be aware of meta node state changes [#1705]
- Supported Dump DDL [#1710]
- Routed both write requests and SQL requests to the query server [#1759]
- Added ToDDLSql interface [#1749]
- Added HTTP compression [#1684]
- Added delayed delete parameter for tenants [#1652]
- Added several GIS functions [#1765]
- Implemented DDL Raft Write [#1802]
- Refactored TSM file format [#1827]
Feature Optimization
- Added default-run=cnosdb in crate main's Cargo.toml [#1647]
- Refactored write logic [#1653]
- Refactored and optimized ResourceManager [#1656]
- Optimized the size of gRPC transmission content [#1717]
- Refactored meta data to receive ctrl-c signal [#1723]
- Replaced TagName with TagId [#1697]
- Refactored get_series_key module [#1737]
- Added checks for event_time_column parameter in stream tables [#1744]
- Refactored GIS function implementations [#1727]
- Standardized information returned in information_schema.queries and show queries [#1731]
- Supported port selection via configuration [#1685]
- Improved write process in Raft mode [#1726]
- Prohibited creating stream tables with the same name as a column [#1733]
- Unified drop_after name and added unset drop after [#1784]
- Added descriptions for client chunks [#1785]
- Refactored kvcore [#1796]
- Added a configuration item for reserving space [#1798]
- Refactored unit tests for higher efficiency [#1806]
- Refactored configuration files [#1812]
- Added service.grpc_enable_gzip configuration [#1823]
- Removed cold_data_server configuration in the community edition [#1852]
- Refactored and optimized Raft WAL in Raft mode [#1832]
Bug Fixes
- Fixed get_sys_mem unit error [#1644]
- Fixed CLI write line protocol not showing error messages [#1651]
- Fixed TSKV filesystem not using append flag; call WalWriter::close() when the writer rolls to an old version [#1637]
- Fixed issue where tenant members were not deleted when deleting a user [#1694]
- Fixed issue where “Tenant not found” returned HTTP status code 500 [#1704]
- Fixed error message when altering stream table [#1724]
- Fixed WAL read failure and data loss issue during abnormal restart [#1719]
- Fixed issue where stream job lost database information on restart [#1734]
- Fixed issue where logs showed user passwords [#1770]
- Fixed issue where plans could not be generated for interpolated functions with aliases [#1777]
- Improved deletion of role information [#1772]
- Fixed issue where WAL was never cleaned [#1771]
- Fixed error when running test_kvcore_interface::test_kvcore_recover [#1791]
- Fixed issue where CNOSDB program would crash on restart [#1650]
- Fixed incorrect cluster initialization order [#1800]
- Fixed some errors in the compression module [#1807]
- Added thread pool for HTTP content codec [#1808]
- Fixed issue where dedup_by_front dropped incorrect elements [#1816]
- Fixed /api/v1/write failing without tags [#1830]
- Fixed error when writing invalid line protocol [#1817]
Related Links:
Quick Start Guide: [http://docs.cnosdb.com](http://docs.cnosdb.com)
GitHub Repository: [https://github.com/cnosdb/cnosdb](https://github.com/cnosdb/cnosdb)
GitHub Release Notes: [https://github.com/cnosdb/cnosdb/releases/tag/v2.4.1](ht