Announcing DuckDB 1.5.6
TL;DR: Today we are releasing DuckDB 1.5.6 with bugfixes and performance improvements.
In this blog post, we highlight a few important fixes in DuckDB v1.5.6, the seventh patch release in DuckDB's 1.5 (Variegata) line. The release ships bugfixes, performance improvements and security patches. You can find the full release notes on GitHub.
To install the new version, please visit the installation page.
Here are the most important fixes from the DuckDB v1.5.6 release, organized by category:
Correctness
#24240– FixLIMITpushdown through a volatile projection with anOFFSET#24239– Don't push filters on volatile groups through aggregates#24119– FixUNNESTpushdown#24399– PreserveNULLs in Top-N window elimination when theORDER BYexpression has no column references#24551– Fix Top-N window elimination for nullable ordering expressions#25831– Fix wrong results from common subplan elimination withUNION ALLarms sharing a join subtree#25714– Fix silent truncation of very long integer literals intoHUGEINT#25766– Fixmaxon Hive partition column after file pruning#24438– Fix ICUstrptimeleaking time zone state between rows#24845– FixGEOMETRYrow group pruning withNULLs and empty geometries#25728– Fix reading and writingTIME_NSvalues in Parquet#26027– Fix Parquet v2 value count mismatch forNULLs in a list that fills a page#26162– Fix ParquetVARIANTshredding forREQUIREDfields and element groups
Crashes and Internal Errors
#25103– Fix crash in Top-N withLIMIT 0#24427– Fix segfault inurl_decodewithTRY()on dictionary-encoded columns#24447– Fix failed checkpoint marker recovery#25490– Close the main WAL handle before renaming over it during WAL recovery
Generic Bugfixes
#24065– Automatically roll back failed implicitly-wrapped multi-statements on all paths#25693– Fix dead node counting in ART indexes#25573– Report the real storage version when opening a DuckDB v2.0+ database file#25808– Reject invalid UTF-8 produced byprintf's%cconversion
Miscellaneous
#26102– Addenable_optimistic_writesetting#25283– Harden temporary file reads#24362– Unify C API symbol versioning for clients and extensions, stabilize all v1 APIs#25214– Always quote identifiers in error messages#24127– Remove the Julia client from the main repository in favor ofduckdb/DuckDB.jl
Conclusion
This post was a short summary of the changes in v1.5.6. As usual, you can find the full release notes on GitHub. We would like to thank our contributors for providing detailed issue reports and patches. Stay tuned for future DuckDB releases, including v2.0.0 in October!