-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Description
What happens?
In the test.ddb database,
FROM pg_catalog. pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
If I do this sentence over and over again, I get random errors.
The test.ddb datafile is available for download below.
https://github.com/goosedb-net/goosedb-download/releases/download/test/test.tgz
STAGE$ cat /etc/os-release
PRETTY_NAME="Ubuntu 24.04.1 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04.1 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=noble
LOGO=ubuntu-logo
(myenv) [goose@tnt-factory:/tmp/test]
STAGE$
#################################################################################################################################
# case 1
#################################################################################################################################
__STAGE__$ duckdb test.ddb
v1.2.1 8e52ec4395
Enter ".help" for usage hints.
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
┌───────────┬───────────┬──────────┬──────────────┬─────────┬───────────────┬─────────────┬───┬───────────┬───────────┬───────────┬─────────┬───────────────────┬─────────────┐
│ oid │ oid │ conname │ connamespace │ contype │ condeferrable │ condeferred │ … │ conppeqop │ conffeqop │ conexclop │ conbin │ tabrelname │ consrc_copy │
│ int64 │ int64 │ varchar │ int64 │ varchar │ boolean │ boolean │ │ int32 │ int32 │ int32 │ varchar │ varchar │ varchar │
├───────────┼───────────┼──────────┼──────────────┼─────────┼───────────────┼─────────────┼───┼───────────┼───────────┼───────────┼─────────┼───────────────────┼─────────────┤
│ 552000002 │ 552000002 │ NOT NULL │ 550 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ postgres_type │ NULL │
│ 763000006 │ 763000006 │ NOT NULL │ 548 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ example │ NULL │
│ 865000010 │ 865000010 │ NOT NULL │ 548 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts1 │ NULL │
│ 871000014 │ 871000014 │ NOT NULL │ 548 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts2 │ NULL │
│ 877000018 │ 877000018 │ NOT NULL │ 548 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts3 │ NULL │
├───────────┴───────────┴──────────┴──────────────┴─────────┴───────────────┴─────────────┴───┴───────────┴───────────┴───────────┴─────────┴───────────────────┴─────────────┤
│ 5 rows 28 columns (13 shown) │
└─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
┌───────────┬───────────┬──────────┬──────────────┬─────────┬───────────────┬─────────────┬───┬───────────┬───────────┬───────────┬─────────┬───────────────────┬─────────────┐
│ oid │ oid │ conname │ connamespace │ contype │ condeferrable │ condeferred │ … │ conppeqop │ conffeqop │ conexclop │ conbin │ tabrelname │ consrc_copy │
│ int64 │ int64 │ varchar │ int64 │ varchar │ boolean │ boolean │ │ int32 │ int32 │ int32 │ varchar │ varchar │ varchar │
├───────────┼───────────┼──────────┼──────────────┼─────────┼───────────────┼─────────────┼───┼───────────┼───────────┼───────────┼─────────┼───────────────────┼─────────────┤
│ 552000002 │ 552000002 │ NOT NULL │ 550 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ postgres_type │ NULL │
│ 763000006 │ 763000006 │ NOT NULL │ 548 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ example │ NULL │
│ 865000010 │ 865000010 │ NOT NULL │ 548 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts1 │ NULL │
│ 871000014 │ 871000014 │ NOT NULL │ 548 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts2 │ NULL │
│ 877000018 │ 877000018 │ NOT NULL │ 548 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts3 │ NULL │
├───────────┴───────────┴──────────┴──────────────┴─────────┴───────────────┴─────────────┴───┴───────────┴───────────┴───────────┴─────────┴───────────────────┴─────────────┤
│ 5 rows 28 columns (13 shown) │
└─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
┌───────────┬───────────┬──────────┬──────────────┬─────────┬───────────────┬─────────────┬───┬───────────┬───────────┬───────────┬─────────┬───────────────────┬─────────────┐
│ oid │ oid │ conname │ connamespace │ contype │ condeferrable │ condeferred │ … │ conppeqop │ conffeqop │ conexclop │ conbin │ tabrelname │ consrc_copy │
│ int64 │ int64 │ varchar │ int64 │ varchar │ boolean │ boolean │ │ int32 │ int32 │ int32 │ varchar │ varchar │ varchar │
├───────────┼───────────┼──────────┼──────────────┼─────────┼───────────────┼─────────────┼───┼───────────┼───────────┼───────────┼─────────┼───────────────────┼─────────────┤
│ 552000002 │ 552000002 │ NOT NULL │ 550 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ postgres_type │ NULL │
│ 763000006 │ 763000006 │ NOT NULL │ 548 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ example │ NULL │
│ 865000010 │ 865000010 │ NOT NULL │ 548 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts1 │ NULL │
│ 871000014 │ 871000014 │ NOT NULL │ 548 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts2 │ NULL │
│ 877000018 │ 877000018 │ NOT NULL │ 548 │ x │ false │ false │ … │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts3 │ NULL │
├───────────┴───────────┴──────────┴──────────────┴─────────┴───────────────┴─────────────┴───┴───────────┴───────────┴───────────┴─────────┴───────────────────┴─────────────┤
│ 5 rows 28 columns (13 shown) │
└─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
Segmentation fault (core dumped)
(myenv) [goose@tnt-factory:/tmp/test]
__STAGE__$
#################################################################################################################################
# case 2
#################################################################################################################################
__STAGE__$ duckdb test.ddb
v1.2.1 8e52ec4395
Enter ".help" for usage hints.
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
Serialization Error:
Cannot copy bound expression
D
__STAGE__$
#################################################################################################################################
# case 3
#################################################################################################################################
__STAGE__$ duckdb test.ddb
v1.2.1 8e52ec4395
Enter ".help" for usage hints.
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
┌───────────┬───────────┬──────────┬──────────────┬─────────┬───────────────┬─────────────┬──────────────┬───┬───────────┬───────────┬───────────┬───────────┬─────────┬───────────────────┬─────────────┐
│ oid │ oid │ conname │ connamespace │ contype │ condeferrable │ condeferred │ convalidated │ … │ conpfeqop │ conppeqop │ conffeqop │ conexclop │ conbin │ tabrelname │ consrc_copy │
│ int64 │ int64 │ varchar │ int64 │ varchar │ boolean │ boolean │ boolean │ │ int32 │ int32 │ int32 │ int32 │ varchar │ varchar │ varchar │
├───────────┼───────────┼──────────┼──────────────┼─────────┼───────────────┼─────────────┼──────────────┼───┼───────────┼───────────┼───────────┼───────────┼─────────┼───────────────────┼─────────────┤
│ 552000002 │ 552000002 │ NOT NULL │ 550 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ postgres_type │ NULL │
│ 763000006 │ 763000006 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ example │ NULL │
│ 865000010 │ 865000010 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts1 │ NULL │
│ 871000014 │ 871000014 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts2 │ NULL │
│ 877000018 │ 877000018 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts3 │ NULL │
├───────────┴───────────┴──────────┴──────────────┴─────────┴───────────────┴─────────────┴──────────────┴───┴───────────┴───────────┴───────────┴───────────┴─────────┴───────────────────┴─────────────┤
│ 5 rows 28 columns (15 shown) │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
┌───────────┬───────────┬──────────┬──────────────┬─────────┬───────────────┬─────────────┬──────────────┬───┬───────────┬───────────┬───────────┬───────────┬─────────┬───────────────────┬─────────────┐
│ oid │ oid │ conname │ connamespace │ contype │ condeferrable │ condeferred │ convalidated │ … │ conpfeqop │ conppeqop │ conffeqop │ conexclop │ conbin │ tabrelname │ consrc_copy │
│ int64 │ int64 │ varchar │ int64 │ varchar │ boolean │ boolean │ boolean │ │ int32 │ int32 │ int32 │ int32 │ varchar │ varchar │ varchar │
├───────────┼───────────┼──────────┼──────────────┼─────────┼───────────────┼─────────────┼──────────────┼───┼───────────┼───────────┼───────────┼───────────┼─────────┼───────────────────┼─────────────┤
│ 552000002 │ 552000002 │ NOT NULL │ 550 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ postgres_type │ NULL │
│ 763000006 │ 763000006 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ example │ NULL │
│ 865000010 │ 865000010 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts1 │ NULL │
│ 871000014 │ 871000014 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts2 │ NULL │
│ 877000018 │ 877000018 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts3 │ NULL │
├───────────┴───────────┴──────────┴──────────────┴─────────┴───────────────┴─────────────┴──────────────┴───┴───────────┴───────────┴───────────┴───────────┴─────────┴───────────────────┴─────────────┤
│ 5 rows 28 columns (15 shown) │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
┌───────────┬───────────┬──────────┬──────────────┬─────────┬───────────────┬─────────────┬──────────────┬───┬───────────┬───────────┬───────────┬───────────┬─────────┬───────────────────┬─────────────┐
│ oid │ oid │ conname │ connamespace │ contype │ condeferrable │ condeferred │ convalidated │ … │ conpfeqop │ conppeqop │ conffeqop │ conexclop │ conbin │ tabrelname │ consrc_copy │
│ int64 │ int64 │ varchar │ int64 │ varchar │ boolean │ boolean │ boolean │ │ int32 │ int32 │ int32 │ int32 │ varchar │ varchar │ varchar │
├───────────┼───────────┼──────────┼──────────────┼─────────┼───────────────┼─────────────┼──────────────┼───┼───────────┼───────────┼───────────┼───────────┼─────────┼───────────────────┼─────────────┤
│ 552000002 │ 552000002 │ NOT NULL │ 550 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ postgres_type │ NULL │
│ 763000006 │ 763000006 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ example │ NULL │
│ 865000010 │ 865000010 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts1 │ NULL │
│ 871000014 │ 871000014 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts2 │ NULL │
│ 877000018 │ 877000018 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts3 │ NULL │
├───────────┴───────────┴──────────┴──────────────┴─────────┴───────────────┴─────────────┴──────────────┴───┴───────────┴───────────┴───────────┴───────────┴─────────┴───────────────────┴─────────────┤
│ 5 rows 28 columns (15 shown) │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
┌───────────┬───────────┬──────────┬──────────────┬─────────┬───────────────┬─────────────┬──────────────┬───┬───────────┬───────────┬───────────┬───────────┬─────────┬───────────────────┬─────────────┐
│ oid │ oid │ conname │ connamespace │ contype │ condeferrable │ condeferred │ convalidated │ … │ conpfeqop │ conppeqop │ conffeqop │ conexclop │ conbin │ tabrelname │ consrc_copy │
│ int64 │ int64 │ varchar │ int64 │ varchar │ boolean │ boolean │ boolean │ │ int32 │ int32 │ int32 │ int32 │ varchar │ varchar │ varchar │
├───────────┼───────────┼──────────┼──────────────┼─────────┼───────────────┼─────────────┼──────────────┼───┼───────────┼───────────┼───────────┼───────────┼─────────┼───────────────────┼─────────────┤
│ 552000002 │ 552000002 │ NOT NULL │ 550 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ postgres_type │ NULL │
│ 763000006 │ 763000006 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ example │ NULL │
│ 865000010 │ 865000010 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts1 │ NULL │
│ 871000014 │ 871000014 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts2 │ NULL │
│ 877000018 │ 877000018 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts3 │ NULL │
├───────────┴───────────┴──────────┴──────────────┴─────────┴───────────────┴─────────────┴──────────────┴───┴───────────┴───────────┴───────────┴───────────┴─────────┴───────────────────┴─────────────┤
│ 5 rows 28 columns (15 shown) │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
┌───────────┬───────────┬──────────┬──────────────┬─────────┬───────────────┬─────────────┬──────────────┬───┬───────────┬───────────┬───────────┬───────────┬─────────┬───────────────────┬─────────────┐
│ oid │ oid │ conname │ connamespace │ contype │ condeferrable │ condeferred │ convalidated │ … │ conpfeqop │ conppeqop │ conffeqop │ conexclop │ conbin │ tabrelname │ consrc_copy │
│ int64 │ int64 │ varchar │ int64 │ varchar │ boolean │ boolean │ boolean │ │ int32 │ int32 │ int32 │ int32 │ varchar │ varchar │ varchar │
├───────────┼───────────┼──────────┼──────────────┼─────────┼───────────────┼─────────────┼──────────────┼───┼───────────┼───────────┼───────────┼───────────┼─────────┼───────────────────┼─────────────┤
│ 552000002 │ 552000002 │ NOT NULL │ 550 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ postgres_type │ NULL │
│ 763000006 │ 763000006 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ example │ NULL │
│ 865000010 │ 865000010 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts1 │ NULL │
│ 871000014 │ 871000014 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts2 │ NULL │
│ 877000018 │ 877000018 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts3 │ NULL │
├───────────┴───────────┴──────────┴──────────────┴─────────┴───────────────┴─────────────┴──────────────┴───┴───────────┴───────────┴───────────┴───────────┴─────────┴───────────────────┴─────────────┤
│ 5 rows 28 columns (15 shown) │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
┌───────────┬───────────┬──────────┬──────────────┬─────────┬───────────────┬─────────────┬──────────────┬───┬───────────┬───────────┬───────────┬───────────┬─────────┬───────────────────┬─────────────┐
│ oid │ oid │ conname │ connamespace │ contype │ condeferrable │ condeferred │ convalidated │ … │ conpfeqop │ conppeqop │ conffeqop │ conexclop │ conbin │ tabrelname │ consrc_copy │
│ int64 │ int64 │ varchar │ int64 │ varchar │ boolean │ boolean │ boolean │ │ int32 │ int32 │ int32 │ int32 │ varchar │ varchar │ varchar │
├───────────┼───────────┼──────────┼──────────────┼─────────┼───────────────┼─────────────┼──────────────┼───┼───────────┼───────────┼───────────┼───────────┼─────────┼───────────────────┼─────────────┤
│ 552000002 │ 552000002 │ NOT NULL │ 550 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ postgres_type │ NULL │
│ 763000006 │ 763000006 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ example │ NULL │
│ 865000010 │ 865000010 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts1 │ NULL │
│ 871000014 │ 871000014 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts2 │ NULL │
│ 877000018 │ 877000018 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts3 │ NULL │
├───────────┴───────────┴──────────┴──────────────┴─────────┴───────────────┴─────────────┴──────────────┴───┴───────────┴───────────┴───────────┴───────────┴─────────┴───────────────────┴─────────────┤
│ 5 rows 28 columns (15 shown) │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
Serialization Error:
Cannot copy bound expression
D
#################################################################################################################################
# case 4
#################################################################################################################################
__STAGE__$ duckdb test.ddb
v1.2.1 8e52ec4395
Enter ".help" for usage hints.
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
┌───────────┬───────────┬──────────┬──────────────┬─────────┬───────────────┬─────────────┬──────────────┬───┬───────────┬───────────┬───────────┬───────────┬─────────┬───────────────────┬─────────────┐
│ oid │ oid │ conname │ connamespace │ contype │ condeferrable │ condeferred │ convalidated │ … │ conpfeqop │ conppeqop │ conffeqop │ conexclop │ conbin │ tabrelname │ consrc_copy │
│ int64 │ int64 │ varchar │ int64 │ varchar │ boolean │ boolean │ boolean │ │ int32 │ int32 │ int32 │ int32 │ varchar │ varchar │ varchar │
├───────────┼───────────┼──────────┼──────────────┼─────────┼───────────────┼─────────────┼──────────────┼───┼───────────┼───────────┼───────────┼───────────┼─────────┼───────────────────┼─────────────┤
│ 593000003 │ 593000003 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ example │ NULL │
│ 695000007 │ 695000007 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts1 │ NULL │
│ 701000011 │ 701000011 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts2 │ NULL │
│ 707000015 │ 707000015 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts3 │ NULL │
│ 713000016 │ 713000016 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_branches │ NULL │
├───────────┴───────────┴──────────┴──────────────┴─────────┴───────────────┴─────────────┴──────────────┴───┴───────────┴───────────┴───────────┴───────────┴─────────┴───────────────────┴─────────────┤
│ 5 rows 28 columns (15 shown) │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
Serialization Error:
Cannot copy bound expression
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
Serialization Error:
Cannot copy bound expression
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
┌───────────┬───────────┬──────────┬──────────────┬─────────┬───────────────┬─────────────┬──────────────┬───┬───────────┬───────────┬───────────┬───────────┬─────────┬───────────────────┬─────────────┐
│ oid │ oid │ conname │ connamespace │ contype │ condeferrable │ condeferred │ convalidated │ … │ conpfeqop │ conppeqop │ conffeqop │ conexclop │ conbin │ tabrelname │ consrc_copy │
│ int64 │ int64 │ varchar │ int64 │ varchar │ boolean │ boolean │ boolean │ │ int32 │ int32 │ int32 │ int32 │ varchar │ varchar │ varchar │
├───────────┼───────────┼──────────┼──────────────┼─────────┼───────────────┼─────────────┼──────────────┼───┼───────────┼───────────┼───────────┼───────────┼─────────┼───────────────────┼─────────────┤
│ 593000003 │ 593000003 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ example │ NULL │
│ 695000007 │ 695000007 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts1 │ NULL │
│ 701000011 │ 701000011 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts2 │ NULL │
│ 707000015 │ 707000015 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_accounts3 │ NULL │
│ 713000016 │ 713000016 │ NOT NULL │ 548 │ x │ false │ false │ true │ … │ NULL │ NULL │ NULL │ NULL │ NULL │ pgbench_branches │ NULL │
├───────────┴───────────┴──────────┴──────────────┴─────────┴───────────────┴─────────────┴──────────────┴───┴───────────┴───────────┴───────────┴───────────┴─────────┴───────────────────┴─────────────┤
│ 5 rows 28 columns (15 shown) │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
D SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog.pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;
To Reproduce
in test.ddb database,
"SELECT c.oid,c.*,t.relname as tabrelname, case when c.contype='c' then substring(pg_get_constraintdef(c.oid), 7) else null end consrc_copy
FROM pg_catalog. pg_constraint c
INNER JOIN pg_catalog.pg_class t ON t.oid=c.conrelid limit 5;"
If I do this sentence over and over again, I get random errors.
OS:
Ubuntu 24.04.1 LTS
DuckDB Version:
1.2.1
DuckDB Client:
cli
Hardware:
8core 16gb
Full Name:
SeongSik
Affiliation:
OraScope
What is the latest build you tested with? If possible, we recommend testing with the latest nightly build.
I have tested with a stable release
Did you include all relevant data sets for reproducing the issue?
Yes
Did you include all code required to reproduce the issue?
- Yes, I have
Did you include all relevant configuration (e.g., CPU architecture, Python version, Linux distribution) to reproduce the issue?
- Yes, I have