1.30.22
1.30.22.6
New Features
The DolphinDB Python API now supports Python 3.11.
The PROTOCOL_DDB protocol now supports the Decimal128 data type.
Enhancements
The
drop
method now behaves differently when the input is a string or single-element list.To avoid potential issues, strings exceeding 64KB cannot be uploaded.
Bug Fixes
Fixed an issue related to uploading dictionaries that contained data types such as UUID, IPADDR, and INT128.
Fixed improper destruction of members in the MultithreadedTableWriter class.
Fixed the MultithreadedTableWriter aborting on invalid data inserts in some cases.
Fixed a segmentation fault when uploading DataFrames, particularly when the first value in a Decimal32/64/128 column was NULL.
Fixed an issue which could led to errors or data inconsistencies when uploading DataFrames with a datetime64[us] column.
1.30.22.5
Bug Fixes
Fixed an issue where NumPy ndarrays configured with an unexpected memory order became disordered after upload.
Fixed compatibility issues with TableAppender, TableUpserter, and PartitionedTableAppender when appending data to tables in a lower DolphinDB server version.
Fixed an issue where, under specific circumstances, null values in array vectors were missing after upload.
1.30.22.4
New Features
The PROTOCOL_ARROW serialization protocol is now supported on all operating systems for the DolphinDB Python API.
Added support for uploading Pandas 2.0 DataFrames that use PyArrow as the storage backend.
Explicit type conversions to Decimal32 and Decimal64 now support specifying scale.
1.30.22.3
New Features
- The data transmission protocol PROTOCOL_DDB now supports uploading and downloading array vectors of Decimal32 and Decimal64 data types.
1.30.22.2
New Features
- The
run()
method forSession
andDBConnection
classes has new parameters for specifying task parallelism and priority. Session
objects now implement locks to ensure thread safety.
Improvements
- The Table
where
method now generates SQL queries without adding parentheses around the passed condition when only a single condition is provided. - Constructing a Table object with the dbPath and data parameters now loads the table using the same logic as the Session
loadTable
method. - The DolphinDB Python API now supports NumPy 1.24.4. The previous version was compatible with NumPy 1.18 - 1.23.4.
Bug Fixes
Fixed SQL query generation when combining multiple filtering conditions with the
Table.where
method to match the intended logic.Fixed an issue that previously caused the
Table.drop
method to not execute as expected under certain conditions.The
Table.showSQL
method now generates the correct SQL statement after applying thewhere
method to TableUpdate and TableDelete objects (which are returned byupdate
anddelete
).Fixed an issue where non-Table objects were incorrectly compressed when being uploaded using the
Session.upload
method.Fixed an issue where the SQL statements generated from Table methods were incorrectly concatenated.
Fixed internal parameter handling issues that previously caused the
Table.showSQL
method to generate SQL statements with incorrect logic.
1.30.22.1
New Features
The MultithreadedTableWriter now supports automatic reconnection when writing to stream tables.
A
__DolphinDB_Type__
attribute can now be specified when uploading DataFrames to explicitly cast columns into particular DolphinDB data types.The Session and DBConnectionPool classes now support a new show_output parameter to specify whether to print the output of script executions in the Python terminal.
Support for uploading and downloading NumPy data in C order.
Classes TableAppender (previously known as: tableAppender), TableUpserter (previously known as: tableUpsert), and PartitionedTableAppender now support auto data type conversion based on the table schema.
Improvements
The old README file for the DolphinDB Python API is deprecated and no longer maintained. Please use the new DolphinDB Python API manual going forward for up-to-date documentation on the latest version.
Enhanced message texts.
The class "session" has been renamed to "Session". The old class name is still supported for backwards compatibility.
The class previously named "tableAppender" has been renamed to "TableAppender". The old class name is still supported for backwards compatibility.
The class previously named "tableUpsert" has been renamed to "TableUpserter". The old class name is still supported for backwards compatibility.
An error message will be reported if something goes wrong with the handler during stream data subscription.
The logic for handling garbled or corrupted string data has been improved.
The message that was previously printed when a Table object is destructed has been removed.
Optimized the performance of
TableUpserter
.
Bug Fixes
Fixed an issue where a TableAppender (previously known as: tableAppender), TableUpserter (previously known as: tableUpsert), or PartitionedTableAppender failed to obtain a reference to a Session or a DBConnectionPool as the object had already been destructed.
Fixed an issue where DBConnectionPool was destructed without calling
shutDown()
, causing the process to get stuck.Fixed occasional message parsing failures when subscribing to data streams.
Removed unnecessary warning messages when uploading array vectors of BLOB, INT128, UUID, or IPADDR type using a TableAppender (previously known as: tableAppender), TableUpserter (previously known as: tableUpsert), or PartitionedTableAppender.
Fixed an issue with the order of execution for queries containing multiple "where" conditions.