Impact Score: 5/10
DuckDB: 0.2.9 Preview Release "Platyrhynchos"
Source available — automated, not human-reviewed
Component: duckdb · Channel: stable. Automated analysis, not a compatibility certification. How this works.
Analysis updated: 2026-11-01.
⚡ Executive Summary (TL;DR)
DuckDB v0.2.9. Source highlight: This preview release of DuckDB is named "Platyrhynchos" after the very well-known Mallard, πλατυρυγχος meaning "broad-billed".
Who Does This Impact? (Role-Based Analysis)
💻 Software Engineers & Devs
Check the source notes against the package and APIs you use before upgrading.
📊 Product & Engineering Leads
Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.
⚙️ DevOps & Security
Verify the target version, runtime requirements and rollback procedure in the official documentation.
✨ New Features & Capabilities (2)
- #2189: Add support for `SUMMARIZE` of SQL statement/table
- #2115: Improve performance of duckdb_value functions, add support for HUGEINT type and add extra result helper functions
📄 View Raw Release Notes (Original Developer Log)
This preview release of DuckDB is named "Platyrhynchos" after the very well-known [Mallard](https://en.wikipedia.org/wiki/Mallard), πλατυρυγχος meaning "broad-billed".
Binary builds are listed below. Feedback is very welcome.
Note: Again, this release introduces a backwards-incompatible change to the on-disk storage format. We suggest you use the EXPORT DATABASE command with the old version followed by IMPORT DATABASE with the new version to migrate your data. See the [documentation](https://duckdb.org/docs/sql/statements/export) for details.
Major changes (not listing minor bug fixes and small changes):
Storage
- #2099: **Persistent Storage Compression Framework** & RLE compression for numeric columns
- #2157: Multi-Occupancy Blocks in the Storage
SQL
- #2247: Support session and global `SET` statement variable scopes.
- #2230: Full Case Insensitivity in the Binder & Catalog
- #2208: Allow duplicate column names in subqueries/`CREATE TABLE AS`, similar to SQLite
- #2206: Allow unnamed subqueries
- #2189: Add support for `SUMMARIZE` of SQL statement/table
- #2158: `ORDER BY` aggregates
- #2171: Implement `LAST`
- #2146: Support for `RANGE` and `ARRAY_LENGTH` scalar functions
- #2133: Implement `DATESUB` & #2090: Implement `DATEDIFF`
- #2128: Fall back to VARCHAR when the type of a prepared statement parameter is ambiguous
Performance Improvements
- #2226: Issue #1657: Reduce Window copying
- #2221: Prefetch Parquet Meta Data
- #2172: Top-N Rework using new sort code
- #2167: Use new sort code in window functions
- #2098: Reduce unnecessary sorting overhead
- #2077: Fetch Arrow - Streaming
C Client:
- #2173: Don't strdup error msg
- #2115: Improve performance of duckdb_value functions, add support for HUGEINT type and add extra result helper functions
- #2107: CAPI Cleanup & DATE/TIME/TIMESTAMP rework
R Client
- #2250: Support column subsets in dbAppendTable()
- #2134: Implement dbAppendTable()
- #2136: Implement dbBind() according to specification
- #2119: Enable more DBItest tests
ODBC Client
- #2184: Enabling pyodbc & #2124: Enable nanodbc & #2159: Making the R odbc package work with our ODBC driver
- #2169: Supporting SQLPutData, SQLParamData, SQLMoreResults & - #2096: SQLFetchScroll and SQLGetPrivateProfileString
- #2236: Windows x64 Support