Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UNION ALL query hangs duckdb wasm #1806

Open
ankrgyl opened this issue Aug 2, 2024 · 2 comments
Open

UNION ALL query hangs duckdb wasm #1806

ankrgyl opened this issue Aug 2, 2024 · 2 comments

Comments

@ankrgyl
Copy link

ankrgyl commented Aug 2, 2024

What happens?

See repro -- it is incredibly straightforward and reproduces on https://shell.duckdb.org/

To Reproduce

CREATE OR REPLACE TABLE "c6f07afb4265c44c6fcfc9787fb6ac5eab2d4cdd" AS SELECT CAST('foobarbingbaz' AS VARCHAR) AS "model", CAST(0.0000049999999999999996 AS DOUBLE) AS "input_cost_per_token", CAST(0.000014999999999999989 AS DOUBLE) AS "output_cost_per_token" UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(1.5e-7 AS DOUBLE), CAST(6e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000005 AS DOUBLE), CAST(0.000015 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(1.5e-7 AS DOUBLE), CAST(6e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000009999999999999999 AS DOUBLE), CAST(0.000029999999999999977 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00001 AS DOUBLE), CAST(0.00003 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00001 AS DOUBLE), CAST(0.00003 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00001 AS DOUBLE), CAST(0.00003 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00001 AS DOUBLE), CAST(0.00003 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000029999999999999977 AS DOUBLE), CAST(0.000059999999999999954 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00003 AS DOUBLE), CAST(0.00006 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00003 AS DOUBLE), CAST(0.00006 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(5e-7 AS DOUBLE), CAST(0.0000015 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(5e-7 AS DOUBLE), CAST(0.0000015 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000001 AS DOUBLE), CAST(0.000002 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.0000015 AS DOUBLE), CAST(0.000002 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.0000015 AS DOUBLE), CAST(0.000002 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00006 AS DOUBLE), CAST(0.00012 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00006 AS DOUBLE), CAST(0.00012 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00006 AS DOUBLE), CAST(0.00012 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00001 AS DOUBLE), CAST(0.00003 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00001 AS DOUBLE), CAST(0.00003 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000003 AS DOUBLE), CAST(0.000004 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000003 AS DOUBLE), CAST(0.000004 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000003 AS DOUBLE), CAST(0.000004 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.0000015 AS DOUBLE), CAST(0.000002 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.0000015 AS DOUBLE), CAST(0.000002 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000002 AS DOUBLE), CAST(0.000002 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000003 AS DOUBLE), CAST(0.000015 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(2.5e-7 AS DOUBLE), CAST(0.00000125 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000003 AS DOUBLE), CAST(0.000015 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000015 AS DOUBLE), CAST(0.000075 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000003 AS DOUBLE), CAST(0.000015 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(2.5e-7 AS DOUBLE), CAST(0.00000125 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000003 AS DOUBLE), CAST(0.000015 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000015 AS DOUBLE), CAST(0.000075 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(8e-7 AS DOUBLE), CAST(0.0000024 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(8e-7 AS DOUBLE), CAST(0.0000024 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000008 AS DOUBLE), CAST(0.000024 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000008 AS DOUBLE), CAST(0.000024 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000008 AS DOUBLE), CAST(0.000024 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(6.5e-7 AS DOUBLE), CAST(0.00000275 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(7e-8 AS DOUBLE), CAST(2.8e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(2e-7 AS DOUBLE), CAST(2e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(7e-7 AS DOUBLE), CAST(0.0000028 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000001 AS DOUBLE), CAST(0.000001 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(3.5e-7 AS DOUBLE), CAST(0.0000014 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(7e-7 AS DOUBLE), CAST(0.0000028 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(2e-7 AS DOUBLE), CAST(2e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000001 AS DOUBLE), CAST(0.000001 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(1.4e-7 AS DOUBLE), CAST(5.6e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000001 AS DOUBLE), CAST(0.000001 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(7e-8 AS DOUBLE), CAST(2.8e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(7e-8 AS DOUBLE), CAST(2.8e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000001 AS DOUBLE), CAST(0.000001 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(2e-7 AS DOUBLE), CAST(2e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(2e-7 AS DOUBLE), CAST(2e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(1.8e-7 AS DOUBLE), CAST(1.8e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(8.8e-7 AS DOUBLE), CAST(8.8e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000005 AS DOUBLE), CAST(0.000015 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(9e-7 AS DOUBLE), CAST(9e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(2e-7 AS DOUBLE), CAST(2e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(2e-7 AS DOUBLE), CAST(2e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(9e-7 AS DOUBLE), CAST(9e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(9e-7 AS DOUBLE), CAST(9e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(2e-7 AS DOUBLE), CAST(2e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(6e-8 AS DOUBLE), CAST(6e-8 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(6e-7 AS DOUBLE), CAST(6e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(6e-7 AS DOUBLE), CAST(6e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00000108 AS DOUBLE), CAST(0.00000108 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.0000012 AS DOUBLE), CAST(0.0000012 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(8e-7 AS DOUBLE), CAST(8e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(8e-7 AS DOUBLE), CAST(8e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000003 AS DOUBLE), CAST(0.000009 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(3e-7 AS DOUBLE), CAST(3e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000001 AS DOUBLE), CAST(0.000003 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000002 AS DOUBLE), CAST(0.000006 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(6e-7 AS DOUBLE), CAST(6e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(1.5e-7 AS DOUBLE), CAST(4.6e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000001 AS DOUBLE), CAST(0.000003 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.00000275 AS DOUBLE), CAST(0.0000081 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(1e-7 AS DOUBLE), CAST(1e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(1e-7 AS DOUBLE), CAST(1e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(6.4e-7 AS DOUBLE), CAST(8e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(7e-7 AS DOUBLE), CAST(8e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(2.7e-7 AS DOUBLE), CAST(2.7e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(7e-8 AS DOUBLE), CAST(7e-8 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(8.000000000000001e-7 AS DOUBLE), CAST(8.000000000000001e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.0000028 AS DOUBLE), CAST(0.0000028 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(2.0000000000000002e-7 AS DOUBLE), CAST(2.0000000000000002e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.0000014 AS DOUBLE), CAST(0.0000014 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000003 AS DOUBLE), CAST(0.000003 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000007 AS DOUBLE), CAST(0.000021 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(7e-7 AS DOUBLE), CAST(0.0000021 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(5e-7 AS DOUBLE), CAST(0.0000015 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(2.5e-7 AS DOUBLE), CAST(5e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000029999999999999977 AS DOUBLE), CAST(0.000059999999999999954 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.0000015 AS DOUBLE), CAST(0.000002 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000059999999999999954 AS DOUBLE), CAST(0.00011999999999999991 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.0000049999999999999996 AS DOUBLE), CAST(0.000014999999999999989 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000008 AS DOUBLE), CAST(0.000024 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000003 AS DOUBLE), CAST(0.000004 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000009999999999999999 AS DOUBLE), CAST(0.000029999999999999977 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000008 AS DOUBLE), CAST(0.000024 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000014999999999999989 AS DOUBLE), CAST(0.000075 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000008 AS DOUBLE), CAST(0.000024 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(3e-7 AS DOUBLE), CAST(0.0000012499999999999999 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000003 AS DOUBLE), CAST(0.000014999999999999989 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.0000015999999999999989 AS DOUBLE), CAST(0.0000055 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(0.000003 AS DOUBLE), CAST(0.000014999999999999989 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(1e-7 AS DOUBLE), CAST(2e-7 AS DOUBLE) UNION ALL
 SELECT CAST('foobarbingbaz' AS VARCHAR), CAST(4e-7 AS DOUBLE), CAST(7e-7 AS DOUBLE)

Browser/Environment:

chrome

Device:

mac

DuckDB-Wasm Version:

@duckdb/duckdb-wasm@1.28.1-dev248.0

DuckDB-Wasm Deployment:

shell

Full Name:

Ankur Goyal

Affiliation:

ankur@braintrustdata.com

@Alex-Monahan
Copy link

It is possible that version 1.1.0 could help with this! Maybe it is worth retesting after this change makes its way into Wasm?
duckdb/duckdb#13447

@ankrgyl
Copy link
Author

ankrgyl commented Aug 22, 2024

It is possible that version 1.1.0 could help with this! Maybe it is worth retesting after this change makes its way into Wasm? duckdb/duckdb#13447

Thanks for flagging! Will do

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

No branches or pull requests

2 participants