C++
1.30.22.1
新增功能
-
MultithreadedTableWriter
新增支持断开后自动重连。 -
新增支持创建 Void Vector 型数据。
-
新增支持 select NULL 语句。
-
新增支持数据类型 DECIMAL128。
-
DBConnection
类的run
,upload
接口中新增锁以防止并发调用时宕机。 -
MultithreadedTableWriter
的insert
方法新增支持插入char[] 型数据 ,且可将其转换为字符串。 -
CmakeLists.txt 文件中新增编译选项 USE_OPENSSL,可选择是否链接 OpenSSL 库。
Table
类新增clear()
方法,可用来清除表中数据。- 新增在上传 symbol/string 型数据时先检验数据长度,若不小于 256K 则会抛出异常。
功能优化
-
优化了
MultithreadedTableWriter
的insert
方法的报错信息。 -
取消下载包含 string/symbol 型 vector 数据时的最大长度限制。
故障修复
-
修复高可用中偶现的重复提交写入任务的问题。
-
修复流订阅中客户端偶现解析消息失败的问题。
-
修复流订阅跨进程共享内存表时偶现的使用已失效指针的问题。
- 修复使用高版本 OpenSSL 时因使用不建议的函数而出现的编译警告。
1.30.21.1
新增功能
-
MultithreadedTableWriter
新增回调接口。 -
新增工具类
DdbVector
,用于创建 DolphinDB 常用的各种类型的 Vector。 -
新增工具类
Executor
,用于创建 DolphinDB 的匿名线程。 -
新增工具类
ResultSet
,用于对表进行按行遍历。 -
新增工具类
enumVectorData
,用于快速遍历 Vector 的元素。 -
支持 DECIMAL 类型的 array vector 的上传、下载、压缩和解压缩。
-
支持流订阅通过 API 发起的连接接收数据。
功能优化
-
优化了取消订阅高可用流数据表的步骤,不再必须传入 Leader 节点的地址和端口,可以使用订阅传入的 Follower 节点的地址和端口。
-
优化高可用流数据表取消订阅的步骤,可以使用 Leader 节点或发起订阅的 Follower 节点的地址和端口。
故障修复
-
修复错误:在使用 Visual Studio 编译 API 时,_USRDLL 发生冲突。已修改为_DDBAPIDLL。
-
修复错误:使用
PartitionedTableAppender
接口频繁读写表数据,发生内存泄漏。 -
修复错误:取消流订阅时,未及时释放占用的端口。
1.30.19.1
新增功能
-
API 端支持打印
DBConnection.run
的 中间结果信息。 -
(1) 新增
tableUpsert
对象,(2)MultithreadedTableWriter
新增参数 mode 和 modeOption,均可实现对索引内存表、键值内存表,或者 DFS 表通过upsert
方式进行更新。 -
支持上传或读取 INT128, UUID, IP 类型的数组向量。
-
DBConnection.connect
支持 reconnect 参数,实现非高可用场景下,自动重连节点。 -
新增
StreamDeserializer
类,实现对异构流数据表的解析,同时,subscribe
函数新增 streamDeserializer 参数,接收经StreamDeserializer
解析后的数据。 -
tableAppender
支持写入 array vector 类型数据。 -
支持线程通过
setAffinity
方法绑定到指定 CPU 核。 -
时间类型的 array vector 支持自动转换类型。
-
流订阅
subscribe
函数新增参数 userName 和 password,支持输入登录用户名密码。 -
新增
setColumnCompressTypes
方法,实现表的各列数据按照指定的压缩方式压缩后上传。 -
新增
IPCInMemoryStreamClient
支持订阅跨进程共享内存表。该功能仅 Linux 系统支持。 -
支持通过 DDB_VERSION 宏定义指定 API 编译版本号(130或200)。
功能优化
-
MultithreadedTableWriter
对象写入内存表时,参数 dbPath 和 tableName 的设置发生改变:dbPath 需设置为空,tableName 需为内存表表名。 -
通过 API 连接集群服务器时,实现请求的负载均衡。
-
调整 array vector 创建方法。
故障修复
-
解决 DBConnection 关闭后,端口没有及时释放的问题。
-
解决了流订阅无法取消、线程卡死、Crash 等问题。
1.30.17.1
新增功能
-
新增支持数组向量(array vector)。
-
增加 MultithreadedTableWriter 类,支持对分布式表、内存表、维度表的多线程写入。且实现了加密通信、压缩传输和写入高可用等功能。
-
DBConnection 对象增加 compress 参数,支持数据的压缩上传与下载。
故障修复
-
修复 API 高可用模式下,当数据节点安全关机后,C++ API 无法切换到正常节点继续写入的问题。
1.30.12
新增功能
-
新增
batchTableWriter
。