Skip to content

Allowed CREATE DATABASE options in any order - #3572

Open
Hydrocharged wants to merge 1 commit into
mainfrom
daylon/create-database-options
Open

Hydrocharged wants to merge 1 commit into
mainfrom
daylon/create-database-options

Conversation

@Hydrocharged

@Hydrocharged Hydrocharged commented Oct 9, 2026 •

Copy link
Copy Markdown
Collaborator

CREATE DATABASE options can now appear in any order, and repeating one raises the same error as Postgres.

@github-actions

github-actions Bot commented Oct 9, 2026

Copy link
Copy Markdown
Contributor
Main PR
Total 42090 42090
Successful 20955 20955
Failures 21135 21135
Partial Successes1 5405 5404
Main PR
Successful 49.7862% 49.7862%
Failures 50.2138% 50.2138%

${\color{lightgreen}Progressions (1)}$

subselect

QUERY: select count(*) from tenk1 t
where (exists(select 1 from tenk1 k where k.unique1 = t.unique2) or ten < 0);

Footnotes

  1. These are tests that we're marking as Successful, however they do not match the expected output in some way. This is due to small differences, such as different wording on the error messages, or the column names being incorrect while the data itself is correct. ↩

@itoqa

itoqa Bot commented Oct 9, 2026

Copy link
Copy Markdown

Ito QA test results
Commit: 3f61047: 10 test cases ran, 10 passed ✅.

Summary

Coverage spans normal database creation and repeatability, configurable creation options, supported and unsupported templates, and recovery after invalid requests. It also exercises edge and adversarial cases to confirm duplicate or unsupported settings fail cleanly without partial state or disrupting later work.

Safe to merge — the run found no PR-attributable regressions or failures, and the exercised creation, validation, cleanup, and recovery behaviors are all healthy. Any unrelated concerns are not merge blockers.

Tests run by Ito

View full run

Result Severity Type Description
✅ — General The database command returned SQLSTATE 42601 with the conflicting-or-redundant-options error, and testdb2 was not created.
✅ — General The database creation request returned the expected TABLESPACE unsupported-option error, and no testdb3 record was left behind.
✅ — General The rejected request created no database, and the next clean request created testdb3 with template0 as requested.
✅ — Create The first database creation succeeded, and repeating it with the conditional option also succeeded without a duplicate-database error. A catalog check confirmed that testdb exists.
✅ — Database The database was created successfully with the requested options, and the catalog showed testdb2 with the expected settings.
✅ — Database The server returned the existing unsupported-option error for ALLOW_CONNECTIONS, and no database was created.
✅ — Duplicate The database command returned SQLSTATE 42601 with the message "conflicting or redundant options", and testdb3 was not created.
✅ — Rev The duplicate database option returned the expected syntax error, and the same client session continued working afterward.
✅ — Template Creating a database with template0 succeeds, and testdb2 appears in the database list.
✅ — Template Using TEMPLATE=template1 returned the expected unsupported-template error, and testdb2 was not created.

Tip

Reply with @itoqa to send us feedback on this test run.

@coffeegoddd

Copy link
Copy Markdown
Contributor

@Hydrocharged DOLT

read_tests from_latency to_latency percent_change
covering_index_scan_postgres 2.48 2.48 0.0
groupby_scan_postgres 84.47 84.47 0.0
index_join_postgres 2.43 2.39 -1.65
index_join_scan_postgres 1.7 1.7 0.0
index_scan_postgres 467.3 475.79 1.82
oltp_point_select 0.39 0.39 0.0
oltp_read_only 6.79 6.79 0.0
select_random_points 0.75 0.75 0.0
select_random_ranges 1.12 1.12 0.0
table_scan_postgres 475.79 484.44 1.82
types_table_scan_postgres 1213.57 1213.57 0.0
write_tests from_latency to_latency percent_change
oltp_delete_insert_postgres 4.57 4.57 0.0
oltp_insert 2.3 2.3 0.0
oltp_read_write 12.75 12.75 0.0
oltp_update_index 2.52 2.52 0.0
oltp_update_non_index 2.22 2.22 0.0
oltp_write_only 5.99 5.99 0.0
types_delete_insert_postgres 5.09 5.09 0.0

@zachmu zachmu left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

},
},
{
Name: "options in any order",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might as well get full coverage of all options with the test. Obv we can't support them all but we should at least enforce that they parse. Also mix up the order for a bunch of them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants