From a15ae7e3f6cd2f9dc7bbe86258f403ff2bc2f3a4 Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Wed, 17 Aug 2022 14:59:38 +0800 Subject: [PATCH 1/3] docs: add CHANGELOG_en --- docs/CHANGELOG.md | 226 +++++++++++++++++------------------ docs/CHANGELOG_CN.md | 274 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 387 insertions(+), 113 deletions(-) create mode 100644 docs/CHANGELOG_CN.md diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 8e6d8a8..5e737fa 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -1,139 +1,139 @@ -## CeresDB 软件版本定义: +## CeresDB software version definition: -### 版本号格式 +### Format X.Y.Z | name | desc | | --- | --- | -| X | 主版本号(major),一般代表做了不兼容的修改 | -| Y | 此版本号(minor),一般代表做了向下兼容的功能性新增 | -| Z | 修订版本号(patch),一般代表做了向下兼容的问题修正 | +| X | major,Representative made incompatible modifications | +| Y | minor,Representative has added downward compatible functionality | +| Z | patch,Representative made a downward compatibility correction | -再加上下边的标签(modifier): +The label below(modifier): ### Modifier | name | desc | | --- | --- | -| alpha | 内测版本,一般只供内部测试用,bug 可能较多 | -| beta | 公开测试版 | -| RC | Release Candidate,发行候选版本,理论上不再加入新的功能,主要修复 bug | -| Final | 最终版本 | +| alpha | The internal test version is generally only used for internal testing, and there may be many bugs | +| beta | Public beta version | +| RC | Release candidate, release candidate, theoretically no new features will be added, mainly bug fixes | +| Final | Final version | --- -## 1.0.1.RC2 +## 0.0.3.RC2 - Features - - TageValue 追加 withBooleanOrNull 的 nullable API + - TageValue add withBooleanOrNull nullable API - Fixes - - Breaking Changes - -## 1.0.1.RC +## 0.0.3.RC - Features - - FieldValue&TageValue 提供 nullable API + - FieldValue&TageValue provide nullable API - Fixes - - Breaking Changes - -## 1.0.1.beta2 +## 0.0.3.beta2 - Features - - CeresDBxClient builder 提供简化参数版构造方法 + - CeresDBxClient builder provide a simplified method for constructing parametric version - Fixes - - Breaking Changes - -## 1.0.1.beta1 +## 0.0.3.beta1 - Features - - 写入期间关键字检查(不允许写入 `timestamp` 和 `tsid`) + - Keyword check during writing (writing `timestamp` and `tsid` is not allowed) - Fixes - - 修复 Union 类型丢失 timestamp LogicType 的问题 + - Fix Union type missing timestamp LogicType - Breaking Changes - -## 1.0.1.alpha +## 0.0.3.alpha - Features - - 支持 unsigned int64 值的写入(通过 BigInteger) - - `Record` 支持读取 unsigned int64 值 - - 完善版本号规则定义 - - 优化部分文档说明 + - Support writing of unsigned Int64 values (through BigInteger) + - `Record` support read unsigned int64 + - Improve the definition of version number rules + - Optimization part document description - Fixes - - Breaking Changes - - `Record#getUInt64` 返回值由 `Long` 改为 `BigInteger` 以避免溢出 + - The return value of `Record#getUInt64` is changed from `Long` to `BigInteger` to avoid overflow -## 1.0.0.Final (2022-01-17) +## 0.0.2.Final (2022-01-17) - Features - - 新增网络请求/响应 bytes 总量统计 metric - - 基于 SIGUSR2 信号关闭 grpc limiter - - 占用 SIGUSR2 信号可关,默认打开 - - GRPC channel 增加 ID 用于排查问题 + - Add statistics of total network request / response bytes (Metric) + - Close grpc limiter based on sigusr2 signal + - Occupied sigusr2 signal can be turned off and turned on by default + - Add GRPC channel ID for troubleshooting - Fixes - - 移除 SIG_TERM、SIGHUP 信号占用,仅使用 SIGUSR2 信号,避免和某些环境不兼容,同时利用创建一个小文件来实现各种不同的信号处理,详细请参考使用文档 - - 修改 rpc-limiter, maxLimit 调整为 1024(原 4096),initialLimit 调整为 64(原 512) - - 增加 rpc-limiter 单元测试 - - 为 metrics reporter 指定 CeresDBxClient 内的 logger output,避免给用户配置 logger conf 带来负担 - - 修复 Stream API NPE bug + - Remove SIG_TERM、SIGHUP signals,Only SIGUSR2 used to avoid incompatibility with some environments. At the same time, a small file is created to realize various signal processing. Please refer to the user's documentation for details + - Update rpc-limiter, maxLimit change from 4096 to 1024,initialLimit change from 512 to 64 + - Add rpc-limiter unit test + - Specify logger output in CeresDBxClient for metrics reporter to avoid the burden of configuring logger conf for users + - Fix Stream API NPE bug - Breaking Changes - - 增加 OptKeys,汇总所有 system properties 配置,统一命名规则,部分 key 已变化 + - Add OptKeys,summarize all system properties configuration,unify naming rules,and some keys have changed - Query#blockingStreamQuery 返回值修改为 Iterator (原为 Iterator>) -## 1.0.0.RC15 (2022-01-04) +## 0.0.2.RC15 (2022-01-04) - Features - - 修改 RPC 层默认的限流算法,由 Vegas 改为 Gradient Concurrency-limits + - Change default limit algorithm of RPC from Vegas to Gradient Concurrency-limits - Fixes - - SerializingExecutor queue 超过一定大小(默认 1024)时打印一次 warn 日志 - - RouteCache GC 线程避免打印 cache 明细 + - SerializingExecutor queue print warn log once when it exceeds a certain size(1024 by default) + - RouteCache GC threads avoid print cache detail - Breaking Changes - - RpcOptions 中与自适应限流相关的参数均进行了重新定义,不再兼容旧版本 + - The parameters related to adaptive current limiting in RpcOptions have been redefined and are no longer compatible with the old version -## 1.0.0.RC14 (2021-12-28) +## 0.0.2.RC14 (2021-12-28) - Features - - 增加查询限流器,默认并发度为 8 - - 每次 write/query 记录 available permits 到 metric - - 最大在途写入行数从默认 16384 调整为 8192 - - Vegas limiter 调整 initialLimit 为 40(原 20),同时增加 vegasInitialLimit 选项 - - 调优了各种写入参数和配置 - - 精简掉不必要的 metric 采集 + - Add query current limiter. The default concurrency is 8 + - Record available permits metric when write/query + - Default Value of maximum number of in transit write in lines change from 16384 to 8192 + - Vegas limiter initialLimit change from 20 to 40,and add vegasInitialLimit option + - Various write parameters and configurations have been optimized + - remove unnecessary metric collect - Fixes - Breaking Changes - QueryOptions#setRoutedClient 改为 QueryOptions#setRouterClient - QueryOptions#getRoutedClient 改为 QueryOptions#getRouterClient - CeresDBxOptions.Builder.limitedPolicy 改为 CeresDBxOptions.Builder.writeLimitedPolicy -## 1.0.0.RC13 (2021-12-27) +## 0.0.2.RC13 (2021-12-27) - Features - - 写入失败时日志打印这一批失败的表名 - - RouterClient 的 cleaner 和 refresher 采用共享 Pool 以减少资源占用 - - CeresDBxClient 定时 Display 到日志中(30 分钟执行一次) - - 单次写入最大单批从默认 1024 调整为 512,最大在途写入行数从默认 4096 调整为 16384 - - RouteClient 接收 SIGUSR2 信号将 route cache items 输出到文件 - - NamedThreadFactory 增加 Factory ID 来识别重复的 Factory Name + - Prints table names when writing failed + - RouterClient cleaner and refresher use shard pool to reduce resource used + - CeresDBxClient display to the log regularly (once every 30 minutes) + - Default value of maximum single write batch change from 1024 to 512,and maximum in transit write in lines change from 4096 to 16384 + - RouteClient receive SIGUSR2 signal to route cache items to file + - NamedThreadFactory add Factory ID to identify duplicate Factory Name - Fixes - - 升级 Log4j 到 2.17.0 修复安全漏洞 + - Update Log4j to 2.17.0 to fix security hole - Breaking Changes -## 1.0.0.RC12 (2021-12-20) +## 0.0.2.RC12 (2021-12-20) - Features - Fixes - - 修复基于 SPI 加载的 Management 不能重复创建从而导致无法支持多租户的问题 + - Fix the problem that `Management` loaded based on SPI cannot be created repeatedly, resulting in the inability to support multi tenant - Breaking Changes -## 1.0.0.RC11 (2021-12-17) +## 0.0.2.RC11 (2021-12-17) - Features - - 查询结果 Record 增加 Type 和 LogicalType 类型枚举,增加判断是否是 timestamp 类型 API + - Query result `Record` add Type and LogicalType enum,and add an API to determine whether it is a timestamp type - Fixes - Breaking Changes -## 1.0.0.RC10 (2021-12-15) +## 0.0.2.RC10 (2021-12-15) - Features - - 忽略写入的 null 值 + - Ignore null value written - Fixes - Breaking Changes -## 1.0.0.RC9 (2021-12-14) +## 0.0.2.RC9 (2021-12-14) - Features - - TAG 增加更多类型支持,除原有支持 String 外新增如下类型: + - TAG support more type. In addition to the original string support, the following types are added: ``` Int64, Int(Int32), @@ -148,62 +148,62 @@ X.Y.Z Varbinary ``` - Fixes - - 升级 Log4j 到 2.16.0 修复安全漏洞 - - 锁定 OkHttp 依赖项版本避免出现 jar 不兼容 + - Update Log4j to 2.16.0 to fix security hole + - Locking OkHttp to avoid jar dependency conflict - Breaking Changes -## 1.0.0.RC8 (2021-12-07) +## 0.0.2.RC8 (2021-12-07) - Features - - SQL Parser 支持解析 Insert 的 StatementType - - 支持 `EXISTS [TABLE] xxx_table` 语法 - - 在单次请求中,(tenant, token, childTenant) 组合是可以通过请求 Context 覆盖的,针对于单机群却多个租户的用户场景 + - SQL Parser support Insert StatementType + - SQL Parser Support `EXISTS [TABLE] xxx_table` + - In a single request,(tenant, token, childTenant) combination can be covered by change context,which is targeted at the user scenario of a single cluster but multiple tenants - Fixes - - 修复 1.0.0.RC4 依赖 client.version 一直为 1.0.0.RC3 的 bug - - 修复 token 为空时不传租户的问题 + - fix 1.0.0.RC4 reference dependency client.version 1.0.0.RC3 + - fix tenant be ignored when token is null - Breaking Changes - - 移除 SQL Parser 的 whereColumns 解析,目前看没什么用处 + - Remove SQL Parser of whereColumns -## 1.0.0.RC6 (2021-12-04) +## 0.0.2.RC6 (2021-12-04) - Features - Fixes - Breaking Changes - - 权签相关 Headers 的 Key 统一改为小写,将和前面版本的权签不兼容 + - Authentication headers key unified to lowercase. Will be incompatible with the previous version of authentication -## 1.0.0.RC5 (2021-12-02) +## 0.0.2.RC5 (2021-12-02) - Features - - 支持 `SHOW CREATE TABLE` 和 `DROP TABLE` 的 SQL 语句解析 - - ALTER TABLE ADD COLUMN 支持添加多列 + - Support parse SQL `SHOW CREATE TABLE` AND `DROP TABLE` + - ALTER TABLE ADD COLUMN Support adding - Fixes - Breaking Changes - - TagValue#string 重命名为 TagValue#withString,与 FieldValue 风格保持一致 + - TagValue#string rename to TagValue#withString. The naming style is consistent with FieldValue -## 1.0.0.RC4 (2021-11-24) +## 0.0.2.RC4 (2021-11-24) - Features - - ceresdbx-sql-javacc 模块支持解析 inner/left/right join SQL 解析,支持解析多个查询 tables + - ceresdbx-sql-javacc module support inner/left/right join SQL parse,Support to resolve multiple queries tables - Fixes - - 取消查询数据时 avro record 的复用,避免数据被不小心覆盖 + - Cancel the reuse of avro record when querying data to avoid data being accidentally overwritten - Breaking Changes -## 1.0.0.RC3 (2021-11-10) +## 0.0.2.RC3 (2021-11-10) - Features - - 新增基于 javacc 的 SQL parser,主要用于查询的表路由以及 management API 模块的客户端 sql 校验 + - Add new SQL parser based javacc,It is mainly used for table routing of query and client SQL verification of Management API module - Fixes - - 在返回查询结果时将 Utf8 类型转换为 String + - When the query result is returned, the utf8 type is converted to string - Breaking Changes -## 1.0.0.RC2 (2021-11-02) +## 0.0.2.RC2 (2021-11-02) - Features - - 默认关闭 avro schema 的 name validate 以支持 `select count(*) from` 这种不必使用别名查询 - - Management API 模块默认在客户端对 sql 有效性进行检查 + - By default, avro schema's name validate is turned off to support `select count (*) from` queries without using aliases + - Management API module checks the SQL validity on the client by default - Fixes - - 因为 CeresDBx server 端建表语法变更,修改 client 的 parser 以支持最新语法 + - Because the syntax of creating tables on the ceresdbx server is changed, modify the parser of the client to support the latest syntax - Breaking Changes -## 1.0.0.RC1 (2021-11-01) +## 0.0.2.RC1 (2021-11-01) - Features - - 新增 Management API (支持执行 SQL) - - @NotSupport 标记暂不支持的流式 API - - 新增更多类型支持,目前支持的全部类型: + - Add Management API (support execute SQL) + - @NotSupport Tag streaming API not supported at present + - Add more types of support. All types currently supported: ``` Double(Float64), String, @@ -221,54 +221,54 @@ X.Y.Z Varbinary ``` - Fixes - - 修复当域名下的 ip 变更时 gRPC 连接无法刷新 + - Fix: the grpc connection cannot be refreshed when the IP under the domain name is changed - Breaking Changes - - FieldValue 部分 API 变更并且不向前兼容 + - FieldValue some API changes and are not forward compatible ## 0.0.1.RC6 (2021-09.28) - Features - Fixes - - 修改版本号格式 - - 修复发布到 mvn 仓库没有源码的问题新 + - Modify version number format + - Fix the problem that there is no source code in the mvn repository - Breaking Changes ## 0.0.1-RC5 (2021-09-28) - Features - - 默认关闭 grpc 的 keep-alive 相关选项 - - 增加 rpc 自适应限流器在 acquire 时被 block 的时间统计指标 (rpc_limiter_acquire_time_${method_name}) + - The keep alive option of gprc is turned off by default. + - Add time cost metrics for the rpc adaptive limiter is blocked in acquire (rpc_limiter_acquire_time_${method_name}) - Fixes - Breaking Changes - - 触发 clear-route-cache 的信号由 SIGINT 改为 SIGHUP,不再支持 SIGINT 信号(因为 JVM 的正常交互式退出使用的是 SIGINT) + - The signal triggering clear-route-cache is changed from SIGINT to SIGHUP,and SIGINT signal is nno longer supported(because SIGINT is used for normal interactive exit of JVM) ## 0.0.1-RC4 (2021-09-13) - Features - - 在 RPC 层增加了基于 TCP Vegas 拥塞控制算法的自适应通限流器,写、读请求的通行率占比分别为 70% 和 30%,可选择配置快速失败或者阻塞直到超时,默认阻塞 - - 增加 abort-on-blocking-timeout (被阻塞超时后抛出异常) 写入限流策略,并设置 abort-on-blocking-timeout(3s) 为默认策略(在这之前的默认策略为 blocking-timeout(1s) ) - - 增加 abort (直接抛出 LimitedException) 写入限流策略 - - 写入限流策略优化,当一次性写入的数据条数就超过限流器最大许可的情况下,如果此时在途请求为 0,那么将消耗掉限流器的最大许可并对这次请求放行,该策略将避免这种大请求直接失败 + - An adaptive flow restrictor based on TCP Vegas congestion control algorithm is added in the RPC layer. The traffic rates of write and read requests are 70% and 30% respectively. You can choose to configure fast failure or blocking until timeout. Default blocking + - Add abort-on-blocking-timeout (throw exception after being blocked for timeout) write limit strategy. And set abort-on-blocking-timeout(3s) as default policy(the default policy before is blocking-timeout(1s) ) + - Add abort (throw LimitedException directly) write limit strategy + - Optimization of write limit strategy. When the number of data pieces written at one time exceeds the maximum permission of current limiter,if the in transit request is 0 ant this time, the maximum permission of the current limiter will be consumed and the request will be released, this strategy will avoid the direct failure of such large requests - Fixes - Breaking Changes ## 0.0.1-RC3 (2021-09-06) - Features - - 将 client 实例 id 和 client code version 加入到调用上下文并发送到服务端 - - 增加写入限流策略,提供几个默认实现分别为 blocking、discard 和 blocking-timeout,默认为 blocking-timeout(1s) + - Add the client instance id and client code version to the call context and send them to the server + - Add write flow policy and provide several default implementations, blocking、discard and blocking-timeout. The default is blocking-timeout(1s) - Fixes - Breaking Changes ## 0.0.1-RC2 (2021-09-03) - Features - - 增加 `SerializingExecutor` 和 `DirectExecutor` 执行任务耗时统计 - - 攒批执行任务优化,增加 `SerializingExecutor` - - 增加写入限流器,默认限制最大在途请求的数据行数为 4096 行,用户可配置参数 `maxInFlightWriteRows`,小于 0 代表不做限流 - - `RpcOptions.rpcThreadPoolSize` (rpc 最大线程数量)默认值由原来的 64 调整为 0,默认不用线程池避免占用过多资源 - - `RpcOptions.keepAliveTimeoutSeconds` (ping timeout)默认值由原来的 5 秒调整为 3 秒 - - 新增 CHANGELOG.md + - Add `SerializingExecutor` and `DirectExecutor` statistics of task execution time + - Batch function optimization,add `SerializingExecutor` + - Add write flow limiter,the maximum umber of data lines in transit requests is 4096. User configurable parameter `maxInFlightWriteRows`,less than 0 means no current limitation + - `RpcOptions.rpcThreadPoolSize` (rpc max thread number)to avoid occupying too much resource. The default value is adjusted from 64 seconds to 0 second + - `RpcOptions.keepAliveTimeoutSeconds` (ping timeout)the default value is adjusted from 5 seconds to 3 seconds + - Add CHANGELOG.md - Fixes - Breaking Changes ## 0.0.1-RC1 (2021-08-31) - Features - - CeresDB client 的第一个版本,包含基本查询、写入能力 + - The first version of CeresDB client ,contains basic query and write functions - Fixes - Breaking Changes diff --git a/docs/CHANGELOG_CN.md b/docs/CHANGELOG_CN.md new file mode 100644 index 0000000..094ee50 --- /dev/null +++ b/docs/CHANGELOG_CN.md @@ -0,0 +1,274 @@ +## CeresDB 软件版本定义: + +### 版本号格式 +X.Y.Z + +| name | desc | +| --- | --- | +| X | 主版本号(major),一般代表做了不兼容的修改 | +| Y | 此版本号(minor),一般代表做了向下兼容的功能性新增 | +| Z | 修订版本号(patch),一般代表做了向下兼容的问题修正 | + +再加上下边的标签(modifier): +### Modifier +| name | desc | +| --- | --- | +| alpha | 内测版本,一般只供内部测试用,bug 可能较多 | +| beta | 公开测试版 | +| RC | Release Candidate,发行候选版本,理论上不再加入新的功能,主要修复 bug | +| Final | 最终版本 | + +--- +## 0.0.3.RC2 +- Features + - TageValue 追加 withBooleanOrNull 的 nullable API +- Fixes + - +- Breaking Changes + - + +## 0.0.3.RC +- Features + - FieldValue&TageValue 提供 nullable API +- Fixes + - +- Breaking Changes + - + +## 0.0.3.beta2 +- Features + - CeresDBxClient builder 提供简化参数版构造方法 +- Fixes + - +- Breaking Changes + - + +## 0.0.3.beta1 +- Features + - 写入期间关键字检查(不允许写入 `timestamp` 和 `tsid`) +- Fixes + - 修复 Union 类型丢失 timestamp LogicType 的问题 +- Breaking Changes + - + +## 0.0.3.alpha +- Features + - 支持 unsigned int64 值的写入(通过 BigInteger) + - `Record` 支持读取 unsigned int64 值 + - 完善版本号规则定义 + - 优化部分文档说明 +- Fixes + - +- Breaking Changes + - `Record#getUInt64` 返回值由 `Long` 改为 `BigInteger` 以避免溢出 + +## 0.0.2.Final (2022-01-17) +- Features + - 新增网络请求/响应 bytes 总量统计 metric + - 基于 SIGUSR2 信号关闭 grpc limiter + - 占用 SIGUSR2 信号可关,默认打开 + - GRPC channel 增加 ID 用于排查问题 +- Fixes + - 移除 SIG_TERM、SIGHUP 信号占用,仅使用 SIGUSR2 信号,避免和某些环境不兼容,同时利用创建一个小文件来实现各种不同的信号处理,详细请参考使用文档 + - 修改 rpc-limiter, maxLimit 调整为 1024(原 4096),initialLimit 调整为 64(原 512) + - 增加 rpc-limiter 单元测试 + - 为 metrics reporter 指定 CeresDBxClient 内的 logger output,避免给用户配置 logger conf 带来负担 + - 修复 Stream API NPE bug +- Breaking Changes + - 增加 OptKeys,汇总所有 system properties 配置,统一命名规则,部分 key 已变化 + - Query#blockingStreamQuery 返回值修改为 Iterator (原为 Iterator>) + +## 0.0.2.RC15 (2022-01-04) +- Features + - 修改 RPC 层默认的限流算法,由 Vegas 改为 Gradient Concurrency-limits +- Fixes + - SerializingExecutor queue 超过一定大小(默认 1024)时打印一次 warn 日志 + - RouteCache GC 线程避免打印 cache 明细 +- Breaking Changes + - RpcOptions 中与自适应限流相关的参数均进行了重新定义,不再兼容旧版本 + +## 0.0.2.RC14 (2021-12-28) +- Features + - 增加查询限流器,默认并发度为 8 + - 每次 write/query 记录 available permits 到 metric + - 最大在途写入行数从默认 16384 调整为 8192 + - Vegas limiter 调整 initialLimit 为 40(原 20),同时增加 vegasInitialLimit 选项 + - 调优了各种写入参数和配置 + - 精简掉不必要的 metric 采集 +- Fixes +- Breaking Changes + - QueryOptions#setRoutedClient 改为 QueryOptions#setRouterClient + - QueryOptions#getRoutedClient 改为 QueryOptions#getRouterClient + - CeresDBxOptions.Builder.limitedPolicy 改为 CeresDBxOptions.Builder.writeLimitedPolicy + +## 0.0.2.RC13 (2021-12-27) +- Features + - 写入失败时日志打印这一批失败的表名 + - RouterClient 的 cleaner 和 refresher 采用共享 Pool 以减少资源占用 + - CeresDBxClient 定时 Display 到日志中(30 分钟执行一次) + - 单次写入最大单批从默认 1024 调整为 512,最大在途写入行数从默认 4096 调整为 16384 + - RouteClient 接收 SIGUSR2 信号将 route cache items 输出到文件 + - NamedThreadFactory 增加 Factory ID 来识别重复的 Factory Name +- Fixes + - 升级 Log4j 到 2.17.0 修复安全漏洞 +- Breaking Changes + +## 0.0.2.RC12 (2021-12-20) +- Features +- Fixes + - 修复基于 SPI 加载的 `Management` 不能重复创建从而导致无法支持多租户的问题 +- Breaking Changes + +## 0.0.2.RC11 (2021-12-17) +- Features + - 查询结果 `Record` 增加 Type 和 LogicalType 类型枚举,增加判断是否是 `timestamp` 类型 API +- Fixes +- Breaking Changes + +## 0.0.2.RC10 (2021-12-15) +- Features + - 忽略写入的 null 值 +- Fixes +- Breaking Changes + +## 0.0.2.RC9 (2021-12-14) +- Features + - TAG 增加更多类型支持,除原有支持 String 外新增如下类型: + ``` + Int64, + Int(Int32), + Int16, + Int8, + Boolean, + Uint64, + Uint32, + Uint16, + Uint8, + Timestamp, + Varbinary + ``` +- Fixes + - 升级 Log4j 到 2.16.0 修复安全漏洞 + - 锁定 OkHttp 依赖项版本避免出现 jar 不兼容 +- Breaking Changes + +## 0.0.2.RC8 (2021-12-07) +- Features + - SQL Parser 支持解析 Insert 的 StatementType + - 支持 `EXISTS [TABLE] xxx_table` 语法 + - 在单次请求中,(tenant, token, childTenant) 组合是可以通过请求 Context 覆盖的,针对于单集群却多个租户的用户场景 +- Fixes + - 修复 1.0.0.RC4 依赖 client.version 一直为 1.0.0.RC3 的 bug + - 修复 token 为空时不传租户的问题 +- Breaking Changes + - 移除 SQL Parser 的 whereColumns 解析,目前看没什么用处 + +## 0.0.2.RC6 (2021-12-04) +- Features +- Fixes +- Breaking Changes + - 鉴权相关 Headers 的 Key 统一改为小写,将和前面版本的鉴权不兼容 + +## 0.0.2.RC5 (2021-12-02) +- Features + - 支持 `SHOW CREATE TABLE` 和 `DROP TABLE` 的 SQL 语句解析 + - ALTER TABLE ADD COLUMN 支持添加多列 +- Fixes +- Breaking Changes + - TagValue#string 重命名为 TagValue#withString,与 FieldValue 风格保持一致 + +## 0.0.2.RC4 (2021-11-24) +- Features + - ceresdbx-sql-javacc 模块支持解析 inner/left/right join SQL 解析,支持解析多个查询 tables +- Fixes + - 取消查询数据时 avro record 的复用,避免数据被不小心覆盖 +- Breaking Changes + +## 0.0.2.RC3 (2021-11-10) +- Features + - 新增基于 javacc 的 SQL parser,主要用于查询的表路由以及 management API 模块的客户端 sql 校验 +- Fixes + - 在返回查询结果时将 Utf8 类型转换为 String +- Breaking Changes + +## 0.0.2.RC2 (2021-11-02) +- Features + - 默认关闭 avro schema 的 name validate 以支持 `select count(*) from` 这种不必使用别名查询 + - Management API 模块默认在客户端对 sql 有效性进行检查 +- Fixes + - 因为 CeresDBx server 端建表语法变更,修改 client 的 parser 以支持最新语法 +- Breaking Changes + +## 0.0.2.RC1 (2021-11-01) +- Features + - 新增 Management API (支持执行 SQL) + - @NotSupport 标记暂不支持的流式 API + - 新增更多类型支持,目前支持的全部类型: + ``` + Double(Float64), + String, + Int64, + Float(FLoat32), + Int(Int32), + Int16, + Int8, + Boolean, + Uint64, + Uint32, + Uint16, + Uint8, + Timestamp, + Varbinary + ``` +- Fixes + - 修复当域名下的 ip 变更时 gRPC 连接无法刷新 +- Breaking Changes + - FieldValue 部分 API 变更并且不向前兼容 + +## 0.0.1.RC6 (2021-09.28) +- Features +- Fixes + - 修改版本号格式 + - 修复发布到 mvn 仓库没有源码的问题新 +- Breaking Changes + +## 0.0.1-RC5 (2021-09-28) +- Features + - 默认关闭 grpc 的 keep-alive 相关选项 + - 增加 rpc 自适应限流器在 acquire 时被 block 的时间统计指标 (rpc_limiter_acquire_time_${method_name}) +- Fixes +- Breaking Changes + - 触发 clear-route-cache 的信号由 SIGINT 改为 SIGHUP,不再支持 SIGINT 信号(因为 JVM 的正常交互式退出使用的是 SIGINT) + +## 0.0.1-RC4 (2021-09-13) +- Features + - 在 RPC 层增加了基于 TCP Vegas 拥塞控制算法的自适应通限流器,写、读请求的通行率占比分别为 70% 和 30%,可选择配置快速失败或者阻塞直到超时,默认阻塞 + - 增加 abort-on-blocking-timeout (被阻塞超时后抛出异常) 写入限流策略,并设置 abort-on-blocking-timeout(3s) 为默认策略(在这之前的默认策略为 blocking-timeout(1s) ) + - 增加 abort (直接抛出 LimitedException) 写入限流策略 + - 写入限流策略优化,当一次性写入的数据条数就超过限流器最大许可的情况下,如果此时在途请求为 0,那么将消耗掉限流器的最大许可并对这次请求放行,该策略将避免这种大请求直接失败 +- Fixes +- Breaking Changes + +## 0.0.1-RC3 (2021-09-06) +- Features + - 将 client 实例 id 和 client code version 加入到调用上下文并发送到服务端 + - 增加写入限流策略,提供几个默认实现分别为 blocking、discard 和 blocking-timeout,默认为 blocking-timeout(1s) +- Fixes +- Breaking Changes + +## 0.0.1-RC2 (2021-09-03) +- Features + - 增加 `SerializingExecutor` 和 `DirectExecutor` 执行任务耗时统计 + - 攒批执行任务优化,增加 `SerializingExecutor` + - 增加写入限流器,默认限制最大在途请求的数据行数为 4096 行,用户可配置参数 `maxInFlightWriteRows`,小于 0 代表不做限流 + - `RpcOptions.rpcThreadPoolSize` (rpc 最大线程数量)默认值由原来的 64 调整为 0,默认不用线程池避免占用过多资源 + - `RpcOptions.keepAliveTimeoutSeconds` (ping timeout)默认值由原来的 5 秒调整为 3 秒 + - 新增 CHANGELOG.md +- Fixes +- Breaking Changes + +## 0.0.1-RC1 (2021-08-31) +- Features + - CeresDB client 的第一个版本,包含基本查询、写入能力 +- Fixes +- Breaking Changes From 8e14b70e75a594d5b18d21605855eb5b0e45aa31 Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Wed, 17 Aug 2022 15:33:30 +0800 Subject: [PATCH 2/3] docs: fix typo ceresdbx --- docs/CHANGELOG.md | 12 ++++++------ docs/CHANGELOG_CN.md | 10 +++++----- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 5e737fa..f91a34f 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -37,7 +37,7 @@ The label below(modifier): ## 0.0.3.beta2 - Features - - CeresDBxClient builder provide a simplified method for constructing parametric version + - CeresDBClient builder provide a simplified method for constructing parametric version - Fixes - - Breaking Changes @@ -72,7 +72,7 @@ The label below(modifier): - Remove SIG_TERM、SIGHUP signals,Only SIGUSR2 used to avoid incompatibility with some environments. At the same time, a small file is created to realize various signal processing. Please refer to the user's documentation for details - Update rpc-limiter, maxLimit change from 4096 to 1024,initialLimit change from 512 to 64 - Add rpc-limiter unit test - - Specify logger output in CeresDBxClient for metrics reporter to avoid the burden of configuring logger conf for users + - Specify logger output in CeresDBClient for metrics reporter to avoid the burden of configuring logger conf for users - Fix Stream API NPE bug - Breaking Changes - Add OptKeys,summarize all system properties configuration,unify naming rules,and some keys have changed @@ -99,13 +99,13 @@ The label below(modifier): - Breaking Changes - QueryOptions#setRoutedClient 改为 QueryOptions#setRouterClient - QueryOptions#getRoutedClient 改为 QueryOptions#getRouterClient - - CeresDBxOptions.Builder.limitedPolicy 改为 CeresDBxOptions.Builder.writeLimitedPolicy + - CeresDBOptions.Builder.limitedPolicy 改为 CeresDBOptions.Builder.writeLimitedPolicy ## 0.0.2.RC13 (2021-12-27) - Features - Prints table names when writing failed - RouterClient cleaner and refresher use shard pool to reduce resource used - - CeresDBxClient display to the log regularly (once every 30 minutes) + - CeresDBClient display to the log regularly (once every 30 minutes) - Default value of maximum single write batch change from 1024 to 512,and maximum in transit write in lines change from 4096 to 16384 - RouteClient receive SIGUSR2 signal to route cache items to file - NamedThreadFactory add Factory ID to identify duplicate Factory Name @@ -179,7 +179,7 @@ The label below(modifier): ## 0.0.2.RC4 (2021-11-24) - Features - - ceresdbx-sql-javacc module support inner/left/right join SQL parse,Support to resolve multiple queries tables + - ceresdb-sql-javacc module support inner/left/right join SQL parse,Support to resolve multiple queries tables - Fixes - Cancel the reuse of avro record when querying data to avoid data being accidentally overwritten - Breaking Changes @@ -196,7 +196,7 @@ The label below(modifier): - By default, avro schema's name validate is turned off to support `select count (*) from` queries without using aliases - Management API module checks the SQL validity on the client by default - Fixes - - Because the syntax of creating tables on the ceresdbx server is changed, modify the parser of the client to support the latest syntax + - Because the syntax of creating tables on the ceresdb server is changed, modify the parser of the client to support the latest syntax - Breaking Changes ## 0.0.2.RC1 (2021-11-01) diff --git a/docs/CHANGELOG_CN.md b/docs/CHANGELOG_CN.md index 094ee50..609f119 100644 --- a/docs/CHANGELOG_CN.md +++ b/docs/CHANGELOG_CN.md @@ -72,7 +72,7 @@ X.Y.Z - 移除 SIG_TERM、SIGHUP 信号占用,仅使用 SIGUSR2 信号,避免和某些环境不兼容,同时利用创建一个小文件来实现各种不同的信号处理,详细请参考使用文档 - 修改 rpc-limiter, maxLimit 调整为 1024(原 4096),initialLimit 调整为 64(原 512) - 增加 rpc-limiter 单元测试 - - 为 metrics reporter 指定 CeresDBxClient 内的 logger output,避免给用户配置 logger conf 带来负担 + - 为 metrics reporter 指定 CeresDBClient 内的 logger output,避免给用户配置 logger conf 带来负担 - 修复 Stream API NPE bug - Breaking Changes - 增加 OptKeys,汇总所有 system properties 配置,统一命名规则,部分 key 已变化 @@ -99,13 +99,13 @@ X.Y.Z - Breaking Changes - QueryOptions#setRoutedClient 改为 QueryOptions#setRouterClient - QueryOptions#getRoutedClient 改为 QueryOptions#getRouterClient - - CeresDBxOptions.Builder.limitedPolicy 改为 CeresDBxOptions.Builder.writeLimitedPolicy + - CeresDBOptions.Builder.limitedPolicy 改为 CeresDBOptions.Builder.writeLimitedPolicy ## 0.0.2.RC13 (2021-12-27) - Features - 写入失败时日志打印这一批失败的表名 - RouterClient 的 cleaner 和 refresher 采用共享 Pool 以减少资源占用 - - CeresDBxClient 定时 Display 到日志中(30 分钟执行一次) + - CeresDBClient 定时 Display 到日志中(30 分钟执行一次) - 单次写入最大单批从默认 1024 调整为 512,最大在途写入行数从默认 4096 调整为 16384 - RouteClient 接收 SIGUSR2 信号将 route cache items 输出到文件 - NamedThreadFactory 增加 Factory ID 来识别重复的 Factory Name @@ -179,7 +179,7 @@ X.Y.Z ## 0.0.2.RC4 (2021-11-24) - Features - - ceresdbx-sql-javacc 模块支持解析 inner/left/right join SQL 解析,支持解析多个查询 tables + - ceresdb-sql-javacc 模块支持解析 inner/left/right join SQL 解析,支持解析多个查询 tables - Fixes - 取消查询数据时 avro record 的复用,避免数据被不小心覆盖 - Breaking Changes @@ -196,7 +196,7 @@ X.Y.Z - 默认关闭 avro schema 的 name validate 以支持 `select count(*) from` 这种不必使用别名查询 - Management API 模块默认在客户端对 sql 有效性进行检查 - Fixes - - 因为 CeresDBx server 端建表语法变更,修改 client 的 parser 以支持最新语法 + - 因为 CeresDB server 端建表语法变更,修改 client 的 parser 以支持最新语法 - Breaking Changes ## 0.0.2.RC1 (2021-11-01) From a93386e13e4f34e4b21866cfdc110fea6a3a6edd Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Wed, 17 Aug 2022 15:40:16 +0800 Subject: [PATCH 3/3] docs: fix typo ceresdbx --- docs/CHANGELOG_CN.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/CHANGELOG_CN.md b/docs/CHANGELOG_CN.md index 609f119..760e172 100644 --- a/docs/CHANGELOG_CN.md +++ b/docs/CHANGELOG_CN.md @@ -37,7 +37,7 @@ X.Y.Z ## 0.0.3.beta2 - Features - - CeresDBxClient builder 提供简化参数版构造方法 + - CeresDBClient builder 提供简化参数版构造方法 - Fixes - - Breaking Changes