Deephaven Community Core version 0.39.0 is now available! We've made some changes to the API, fixed some bugs, and added some new features. Here are the highlights:
New features
This release still includes some new features despite being smaller and more focused on paving the way for future development.
Iceberg Resolver
Deephaven's new Iceberg resolver gives greater control over the mapping between Deephaven columns and Iceberg fields. You can use this object to ensure correct results when consuming from Iceberg, even when the Iceberg schema evolves over time. Additionally, Deephaven now supports arbitrarily nested fields contained in Iceberg structs.
Deephaven no longer fails by default when an Iceberg field type is unsupported. Rather, the default behavior is to ignore unsupported fields, with the ability to explicitly fail if desired.
This is a major development that paves the way for both new features and improvements to our Iceberg API in the future. Stay tuned for more updates!
Additional features
- Rollup tables now support the
update_view
operation. - Internal tools have been added to display Iceberg metadata as tables.
- Improvements have been made to the handling of data indices on partitioning columns.
- Autocomplete tips can now be stylized with markdown.
Breaking changes
All breaking changes in this release are Iceberg-related.
Iceberg
Previously, two fields were set when constructing an IcebergReadInstructions
object: the table definition and any column renames. Those fields are now set when loading the table.
- In Python, Iceberg instructions have been moved to methods on tables themselves.
Bug fixes
- Fixed a bug that caused an exception in rolling formula
update_by
operations when a constant formula was used. - A series of C++ client bug fixes to improve quality of life and performance.
- All Deephaven vector types now expose null-safe iterators.
Reach out
Our Slack community continues to grow! Join us for updates and help with your queries.