Release Notes
Welcome to our release notes, weβre excited to hear about your experience π
π If you have any issues please reach out directly to Slack support channel or support@motherduck.com.
October 17, 2024β
- MotherDuck now supports DuckDB 1.1.2 clients, a bugfix release. More info on the changelog here.
October 14, 2024β
- Shares now support auto-updating. Automatically updated shares no longer require running explicit UPDATE SHARE commands. Instead changes on the underlying database are automatically published to the share within at most 5 minutes, after writes have completed. However, the option for manually updating shares remains available and continues to be the default setting. This allows users who prefer finer control over their update lifecycle to maintain their usual workflow. The auto-updating property is defined at share creation time, and share owners can force an explicit update any time on both types of shares by running
UPDATE SHARE
.
October 9, 2024β
We are excited to introduce a new SQL prompt function, currently in preview, that enables text generation directly within SQL queries. This feature leverages LLMs to process and generate text based on provided prompts.
Features:
- Generate SQL: Use the prompt function in your SQL queries to request text generation, for example,
SELECT prompt('Write a poem about ducks');
. - Model Selection: Specify the LLM model type with the model parameter. Available models include
gpt-4o-mini
(default) andgpt-4o-2024-08-06
. - Structured Outputs: Opt for structured responses using the struct or json_schema parameters to tailor the output format to your needs.
Checkout more snippets here.
October 2, 2024β
- MotherDuck now supports monitoring and interrupting server-side queries.
- Various stability and usability improvements.
September 25, 2024β
- MotherDuck now supports DuckDB 1.1.1, a bugfix release. More info on the changelog here.
- In the MotherDuck Web UI, users can easily view and copy the contents of a cell from their query results.
September 16, 2024β
MotherDuck now supports DuckDB version 1.1.0. π This releases includes a number of new features and a lot of performance improvements.
Here are some non-exhaustive key updates:
New features
Performance improvements
Read more on DuckDB's 1.1.0 blog.
September 5, 2024β
- New MotherDuck users are optionally guided through running and analyzing a query upon first logging in to the Web UI.
August 21,2024β
- MotherDuck now supports Full Text Search - FTS extension. You can now create a text search index on tables in your MD databases and search them. (Note: Currently, the creation of the FTS index is not supported from MotherDuck-WASM client and app.motherduck.com, but all other clients do.)
August 14, 2024β
-
MotherDuck now has an embedding() function to compute
FLOAT[512]
text embeddings based on OpenAI's text-embedding-3-small model. Read more about it in our announcement blog post! -
MotherDuck now supports sequences, with one small limitation: Table column definitions that refer to a sequence by a fully qualified catalog name are rejected. Note that cross-catalog references are already disallowed by DuckDB.
August 7, 2024β
- MotherDuck now supports foreign keys. Foreign keys define a column, or set of columns, that refer to a primary key or unique constraint from another table. The constraint enforces that the key exists in the other table.
July 24, 2024β
- In the MotherDuck Web UI, users can now drop, rename, and comment on tables/views and columns from the Object Explorer
- Users can now see the logical size of their MotherDuck databases using
FROM pragma_database_size()
July 10, 2024β
-
Access Tokens: Users can now create multiple access tokens and revoke them as needed. Tokens can also be configured to expire after a set number of days. Learn more.
-
Organization domain invites: Organizations can be configured such that that anyone with the organization's email domain automatically receives an invitation upon signing up.
-
CREATE SHARE with conflict mode: Database shares can be created with a conflict mode so if a share with the same name already exists, IF NOT EXISTS will not throw an error and OR REPLACE will replace it with a new share.
June 26, 2024β
- Delta Lake support: You can now query Delta Lake tables in MotherDuck. Learn more.
- In the MotherDuck Web UI, the Object Explorer interface (that catalogs shares and databases on the left side of the UI) has been revamped.
- ACH has been added as a billing method, in addition to credit card billing.
- Resolved an issue affecting large SQL queries in both the MotherDuck UI and the Wasm SDK.
June 20, 2024β
- New MotherDuck users are now treated to a "Welcome to MotherDuck!" notebook upon first logging on to the Web UI.
- In the MotherDuck Web UI, the legacy notebook called "My Notebook" can now be renamed and/or deleted, and notebooks can now be closed.
- In the MotherDuck Web UI, helpful links and drop-down menus have been improved.
- MotherDuck now supports DuckDB's Spatial Extension. This extension is pre-installed in MotherDuck, and users are not required to install this extension. Currently, the
GEOMETRY
type has a limitation in that it does not currently render in the MotherDuck Web UI. More details to come.
June 13, 2024β
- Free Plan compute usage limits are now being enforced. Queries for users on the Free Plan may be throttled. Learn more
June 11, 2024β
- MotherDuck is now Generally Available!
June 6, 2024β
- MotherDuck now supports organization-scoped and discoverable shares.
- MotherDuck now supports storing Hugging Face type secrets.
June 3, 2024β
- MotherDuck now supports DuckDB version 1.0.0. If you have upgraded to 0.10.2+, you can connect with clients that are either of version 0.10.2, 0.10.3, or 1.0.0.
May 30, 2024β
- MotherDuck now supports DuckDB version 0.10.3. If you have upgraded to 0.10.2+, you can connect with clients that are either of version 0.10.2 or 0.10.3.
- Added support to read datasets directly from HuggingFace. Learn more about this new feature here.
- Added support for ARRAY Type in MotherDuck UI.
- MotherDuck UI now supports multiple notebooks.
- Fixed a bug in which running the
UPDATE SHARE
command would kill ongoing queries.
May 15, 2024β
- MotherDuck now supports DuckDB 0.10.2. All new MotherDuck users default to DuckDB version 0.10.2, and all existing users can now permanently migrate to DuckDB version 0.10.2. DuckDB version 0.10.2 features a large number of stability and performance improvements, and all users are encourage to migrate. Please read Upgrading to DuckDB 0.10.2+ for further details.
- Starting with DuckDB 0.10.2, MotherDuck now supports multiple versions of DuckDB at once. For example, you could use DuckDB version 0.10.3 in the CLI and DuckDB version 1.0 in Python. Learn more.
- MotherDuck now supports Multi-Statement Transactions. You must be on DuckDB version 0.10.2 or above.
- MotherDuck now supports Indexes for the purpose of constraints of types
UNIQUE
orPRIMARY KEY
. For example, you can leverageINSERT ON CONFLICT
to dedupe or upsert your data. Learn more. Indexes are not yet being utilized in MotherDuck for query acceleration. - MotherDuck now supports Secrets syntax consistent with DuckDB 0.10 and above. Learn more.
- FixIt is now 2-3x faster.
- Improved reliability of the service during releases. Moving forward, MotherDuck releases should not disrupt ongoing queries and workloads for users.
May 8, 2024β
- You can now preview DuckDB version 0.10.2 in MotherDuck. Please read Upgrading to DuckDB 0.10.2+ for further details.
- You can now choose your organization's pricing plan using the Plans page in the Settings section of the MotherDuck Web UI.
- You can now configure your organization's payment method in the Billing page in the Settings section of the MotherDuck Web UI. Free Plan customers are not required to configure a payment method.
May 1, 2024β
- Fixed a bug, in which MotherDuck releases would kill running queries. Releases no longer disrupt ongoing queries and workloads.
- A number of under the hood stability improvements.
April 25, 2024β
- Improved reliability of
ATTACH
operations. - Various reliability and polish improvements.
April 24, 2024β
- The MotherDuck Wasm SDK is now available for app developers. Read more about the SDK in the blog annoucement.
April 17, 2024β
- Billing Portal is now available in the MotherDuck Web UI. You can use the Billing Portal to view your organization's incurred usage and current and past invoices.
- You can now invite your teammates to Organizations. Currently, Organizations are useful to group users together to monitor incurred usage in the Billing Portal, and additional capabilities will land in coming weeks.
- Fixed an issue, in which MotherDuck releases would cancel running queries.
April 10, 2024β
- Catalog changes in one MotherDuck client will now automatically propagate to other clients.
- MotherDuck now supports indexes on temporary tables.
March 20, 2024β
- Fixed an issue, in which usersβ runtimes can become unresponsive.
- In the MotherDuck UI, improved how row counts and query times are calculated.
- A variety of additional bug fixes and infrastructure-level improvements.
March 7, 2024β
- Operations on all databases that create shares (using
CREATE SHARE
), create databases (usingCREATE DATABASE
), or update shares (usingUPDATE SHARE
) are now metadata-only and copy no data.
February 29, 2024β
- A variety of fixes and improvements across the product.
February 22, 2024β
- Numerous bug fixes and stability improvements across the entire product.
February 14, 2024β
- In the MotherDuck web UI, you can now visualize your tables and query results with the Column Explorer.
- For any database created starting today, operations on these databases that create shares (using
CREATE SHARE
), create databases (usingCREATE DATABASE
), and update shares (usingUPDATE SHARE
) are metadata-only and copy no data.
February 13, 2024β
- You are no longer required to provide a share name when creating shares. In this case, the created share will be named the same as the source database. For example, executing
CREATE SHARE FROM mydb
would create a share namedmydb
; if your current share isdb
, thenCREATE SHARE
would create a share nameddb
. SeeCREATE SHARE
syntax. - In CLI or Python, MotherDuck no longer displays the authentication token by default. You can retrieve the authentication token by running
PRAGMA PRINT_MD_TOKEN
. - Support for DuckDB version 0.9.1 has ended.
January 04, 2024β
New Features:
- MotherDuck now supports DuckDB macros.
- MotherDuck now supports DuckDB ENUM data types.
- Fully qualified column names in SELECT clauses are now supported. For example:
SELECT schema.table.column FROM schema.table
Updates and Fixes:
- Fixed a bug, in which prepared statements for INSERT operations did not work.
- In the MotherDuck web UI, data exports are now faster.
- Rolled out major infrastructure improvements in hybrid query execution, resulting in faster and more reliable hybrid queries.
January 03, 2024β
- FixIt is now available in the MotherDuck web UI. FixIt helps you resolve common SQL errors by suggesting AI-generated fixes line-by-line.
November 30, 2023β
- In the MotherDuck web UI, you can now copy query results to the clipboard or export query results as CSV, TSV, Parquet, or JSON files.
- In the MotherDuck web UI, query error messages are now easier to read.
November 15, 2023β
- MotherDuck has been upgraded to DuckDB 0.9.2. You can use either DuckDB 0.9.1 or DuckDB 0.9.2, but not both, until December 6th.
November 3rd, 2023β
- You can now query Iceberg tables on object storage.
- Improved stability of share attaches.
- In the MotherDuck web UI, a new database selector now enables you to use a specific database for each notebook cell.
October 25, 2023β
- In the MotherDuck web UI, you can now move and reorder individual notebook cells.
- In the MotherDuck web UI, the MotherDuck-specific SQL syntax is now highlighted.
- In the MotherDuck web UI, column histograms are now opt-in on a per-result basis, rather than a global opt-out via Settings.
- Improved how the MotherDuck web UI displays datetime data types, matching formatting in the CLI.
- In the MotherDuck web UI, you can now easily copy-paste a rectangular selection of query results into Google Sheets or Excel.
October 16, 2023β
MotherDuck has been upgraded to DuckDB 0.9.1 π Please see the migrations guide for more info!
- You can now query Azure object storage. See documentation for more info.
- You can now easily load AWS credentials used locally into MotherDuck. Please see syntax for
CREATE SECRET
for more info. - Better performance and reliability with lower memory usage.
- More intelligent parsing of CSV files.
September 21, 2023β
- The MotherDuck web UI supports Attaching and Detaching databases and shows detached databases.
- The MotherDuck web UI now loads significantly faster. This is an additional improvement over August 30, 2023.
- When a user updates a shared database, all consumers automatically receive the update within 1 minute.
- Support
CREATE OR REPLACE DATABASE
andCREATE IF NOT EXISTS DATABASE
. - Fixed a bug in which queries with long commit times would result in the dreaded "
Invalid Error: RPC 'SETUP_PLAN_FRAGMENTS' failed: Deadline Exceeded (DEADLINE_EXCEEDED)
" error. - Performance and stability of uploads has been improved.
- The MotherDuck web UI now displays decimals correctly.
August 30, 2023β
- The MotherDuck web UI now loads significantly faster.
- The MotherDuck web UI now supports autocomplete. As you write SQL in the UI, on every keystroke autocomplete brings up query syntax suggestions. You can turn off autocomplete in Web UI settings, found under the gear icon in top right.
- In the MotherDuck web UI, you can now execute multiple SQL statements in the same SQL cell.
August 23, 2023β
- Fixed a bug, in which large uploads and downloads would fail.
- Improved performance of uploading data into MotherDuck from all supported sources.
- Added SHOW ALL DATABASES DDL command. This command enables you to list all database types, including MotherDuck databases, DuckDB databases, and databases that were created from shares.
- In the MotherDuck web UI, you can now cancel queries.
- In the MotherDuck web UI, you can now add files of type JSON and files with arbitrary postfixes.
- In the MotherDuck web UI, under the βHelpβ menu, you can now find the service specific Terms of Service.
August 17, 2023β
- Numerous stability and performance improvements across the entire product.
- Added more descriptive error messages in a number of areas.
- Better timestamp support in the MotherDuck UI.
August 01, 2023β
- You can now copy a MotherDuck database through CREATE DATABASE using
CREATE DATABASE cloud_db FROM another_cloud_db
. - Fixed a https certificate error that was appearing on Windows machine when downloading/loading the MotherDuck extension through the CLI.
- Fixed a bug where DESCRIBE SHARE was not returning the actual database name.
July 26, 2023β
- You can now use MotherDuck in CLI or Python with the Windows operating system.
- LIST and DESCRIBE SHARES SQL commands now return the database name instead of the snapshot name.
- Improved resilience of large uploads.
- Added more descriptive error messages for DDL queries.
July 21, 2023β
- Added DDL for
DESCRIBE SHARE
andUPDATE SHARE
. - Added DDL for
CREATE [OR REPLACE] SECRET
andDROP SECRET
. - Added
RESTRICT
andCASDADE
options toDROP DATABASE
DDL. See documentation. - The current database, set with USE DATABASE, is now persisted across sessions in the web UI.
- Data uploads and downloads have been accelerated by roughly 3x by compressing data over the wire.
- Numerous stability and performance improvements across the entire product.
- Added more descriptive error messages in a number of areas.
June 29, 2023β
- You can now use AI to help you write SQL with the
prompt_sql
function, answer questions about your data with theprompt_query
pragma, describe your data with theprompt_schema
pragma, and fix your SQL with theprompt_fixup
function. See documentation.
June 27, 2023β
- Added support for
DROP SHARE [IF EXISTS]
,LIST SHARES
, andLIST SECRETS
operations. Previously these operations were supported via table functions. The MotherDuck web UI now supports creating, deleting, and listing S3 secrets. - Numerous improvements to the MotherDuck web UI.
- Fixed a bug, in which the share URL was not returning after running the
CREATE SHARE
command in the CLI. - Referencing database objects is now case insensitive. For example, if a database
DuCkS
exists, you can now reference it asducks
orDUCKS
. When listing databases, you will seeDuCkS
.
June 23, 2023β
- Numerous fixes to improve the stability and reliability of our authentication process and token expiry.
- In the MotherDuck web UI there is now a new drop-down menu on User Profile (upper right) with options to access settings, send an invite, and log out.
- Added support for
IF EXISTS
option to theDROP DATABASE
SQL command. See documentation. - Added support for allowing the
motherduck_token
parameter in the connection string. - Added md_list_secrets() table function. Because MotherDuck currently only supports a single secret, this function returns either
TRUE
orFALSE
depending on whether a secret exists. See documentation. - Fixed a bug in the MotherDuck web UI where tables were rendered incorrectly.
June 21, 2023β
- In the MotherDuck web UI, the interactive query results panel now supports all DuckDB data types.
- Easier signup flow for new users.
- Performance of loading data into MotherDuck has been improved.
- Added support for
CREATE [OR REPLACE | IF NOT EXISTS] DATABASE
andCREATE DATABASE FROM CURRENT_DATABASE()
. - A concurrency issue on dropping and recreating shares has been resolved.
- Timeout handling for hybrid queries has been improved.
- The MotherDuck connection parameter
deny_local_access
has been renamed tosaas_mode
and now sets bothenable_external_access=false
andlock_configuration=true
DuckDB properties. In practice, this means that when connecting to MotherDuck with thedeny_local_access=true
parameter, users will not be able to read/write local files, read/write local DuckDB databases, install/load any extensions or update any configuration. See documentation. - Numerous other improvements.
June 15, 2023β
- MotherDuck now supports DuckDB 0.8.1. Currently, MotherDuck only supports a single version of DuckDB at a time so you must upgrade your DuckDB instances to 0.8.1.
- Performance of loading data into MotherDuck has been drastically improved.
- Database name in SQL command
CREATE DATABASE
is now a literal. You need to leave the database name unquoted. For example:- Supported:
CREATE DATABASE ducks;
- Supported:
CREATE DATABASE βducksβ;
- No longer supported:
CREATE DATABASE βducksβ;
- Supported:
- You can now create a share using the
CREATE SHARE
statement, in addition to previously supported table functionmd_create_database_share()
:- Supported:
CREATE SHARE myshare FROM ducks;
- Supported:
CALL md_create_database_share( βmyshareβ , βducksβ);
- Supported:
- You can now write data to s3 using the
COPY TO
command. - In the web UI entering and exiting full screen mode has been simplified. You can also choose to only display the query editor or the query results using the overflow menu.
- In the web UI you can now work with compound data types from json in interactive query results.
- You can now use both lowercase and uppercase versions of the environment variable
motherduck_token
(e.g.MOTHERDUCK_TOKEN
).
June 7, 2023β
- Views are now supported.
- Query results in the web UI are now interactive. Powered by Tad and DuckDB in WASM, you can now quickly sort, filter and pivot results of a SQL query. Click on column headers to sort, or the pivot icon to open the control surface.
- Query results now include interactive column histograms for numeric columns. The gray background area of the column histogram is a brush that can be dragged to interactively filter results.
- The Motherduck extension for CLI and Python auto-updates itself. Users no longer need to run βFORCE INSTALL motherduckβ to update their MotherDuck-powered DuckDB instances. Note: of course, to get this goodness, we ask you to run force install one last time.
- Various stability and usability improvements.
May 31st, 2023β
Summary
- SQL queries in the web UI are now automatically saved in local storage in your web browser and restored when you reload the page.
- The MotherDuck extension is now available for Linux on ARM64!
- Support ON CONFLICT clause.
- New setting
deny_local_access
to lock down filesystem and extension loading (note: does not prevent DuckDB database access).
May 24, 2023β
Summary
- Various stability improvements and bug fixes
May 22, 2023β
Summary
- The MotherDuck service is upgraded to DuckDB 0.8.0
- Catalog schemas are now supported.
- Querying
md_databases()
no longer returns snapshots. - Shares that you create are no longer auto-attached. As the creator, you can attach them via
attach <share_url>
- Various stability improvements and bug fixes
Known issues
- Some shares appear as "empty" databases. Please report to support@motherduck.com if you spot a sharing issue.
May 17, 2023β
- The DuckDB ICU extension is now enabled by default. This extension adds support for time zones and collations using the ICU library.
- The web UI now displays your avatar instead of initials in the user menu
- The first database alphabetically is now used for querying by default in web UI. CLI behavior has not changed β if you don't pass a specific database through the connection string, the default database my_db will be used for querying. NOTE: this will change once we upgrade to the just-released DuckDB 0.8.0
- Output of query EXPLAIN is now more user-friendly
- Various stability improvements and bugfixes
May 5, 2023β
- Fixed a bug, in which users were unable to supply the authentication token in-line in the connection string. For instance
.open md:?token=123123
orduckdb md:?token=3333
. - DELETE and UPDATE table operations are now supported.
May 3, 2023β
- Stability of DML and DDL operations has been greatly improved
- Hybrid query execution has now been upgraded to execute many query types more efficiently
- You can now upload your current DuckDB database using the
CREATE DATABASE FROM 'CURRENT_DATABASE'
operation - In the web UI you can now find a link to MotherDuckβs technical documentation
- In the web UI you can now upload files from your local computer to MotherDuck
- In programmatic interfaces (JDBC, CLI, Python) you can now connect to a specific database using syntax
md:<database name>
ormotherduck:<database name>
- MotherDuck now creates a default database called
my_db
for you. This is the database you connect to if you do not specify a database when connecting to MotherDuck
April 26, 2023β
- You can now work with multiple databases - cloud or local. You can now query across multiple cloud or local databases
- You can now save your S3 credentials in MotherDuck using the MD_CREATE_SECRET operation
- You can now upload DuckDB databases to MotherDuck using the CREATE DATABASE FROM operation
- MotherDuck UI now has improved notebook experience
April 19, 2023β
- Various stability, performance, and UI improvements
April 12, 2023β
- The JSON extension to DuckDB is now pre-installed automatically in the web UI.
- The table viewer component in the Web UI is now a simple table (rather than an interactive pivot table). This should greatly improve time to first render on query results, especially for small queries. We plan to re-enable the pivot table in an upcoming release, once some underlying performance issues are resolved.
- The duck feet are paddling very hard underwater (numerous stability and performance improvements).
March 30, 2023β
- Fixed: auto_detection of schema of .csv fails in WASM
- Fixed: intermittent "Error reading catalog: Cancelling all calls" error
- Numerous stability and performance improvements
March 22, 2023β
- CLI uses the same database by default as the web app (first sorted alphabetically)
- Multiple improvements in the MotherDuck UI
- Numerous stability and performance improvements
- Enabled query EXPLAIN for queries that execute in hybrid mode
March 8, 2023β
- Numerous stability and performance improvements
- Vastly improved performance of loading multiple CSVs in the same command
- Fixed a bug in CLI, in which authentication via browser would fail
March 1, 2023
Even more goodies!
- Delivered major improvements to hybrid execution, resulting in better efficiency, stability, and performance
- Fixed a bug in UI, in which dropping and creating a database with the same name displayed incorrect information
- Migrated to DuckDB 0.7.1
- Fixed an error message when running MotherDuck commands in the CLI without running .open
January 26, 2023
Weβre back with more exciting improvements!
- Addressed server timeouts associated with long-running queries. Still triaging other potential issues with long running issues but network tier issues should be mitigated to a large degree.
- Empty databases now appear in the catalog in UI
- Added an MD_VERSION Pragma function
- Implemented Oauth sign-in flow from native client
- Upgraded MotherDuck-hosted DuckDB to version 0.6.1
- Fixed a number of bugs across the entire service
December 23, 2022
Our first release! Duckies first steps π¦