Skip to content

Running a simple query with the timescaledb and pg_duckdb extensions installed causes the server to crash: Segmentation fault. #963

@rusha1333

Description

@rusha1333

What happens?

While executing the query select count() from our_table with SET duckdb.force_execution = true, the server crashed and reported that the server process (PID 2250149) terminated with signal 11: Segmentation fault. The crashing process was executing: select count() from our_table;

To Reproduce

psql mydb
psql (17.6 (Ubuntu 17.6-2.pgdg24.04+1))

mydb=# \dx
List of installed extensions
Name | Version | Schema | Description
--------------------+---------+------------+---------------------------------------------------------------------------------------
pg_duckdb | 1.1.0 | public | DuckDB Embedded in Postgres
pg_stat_statements | 1.11 | public | track planning and execution statistics of all SQL statements executed
pg_trgm | 1.6 | myschema | text similarity measurement and index searching based on trigrams
plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language
timescaledb | 2.22.1 | myschema | Enables scalable inserts and complex queries for time-series data (Community Edition)

\d+ our_table
Table "our_table"
Column | Type | Collation | Nullable | Default | Storage | Compression | Stats target | Description
-----------------+--------------------------+-----------+----------+---------+----------+-------------+--------------+-------------
ap_id | bigint | | not null | | plain | | |
code | character varying(11) | | not null | | extended | | |
value | text | | | | extended | | |
valid_from | timestamp with time zone | | not null | | plain | | |
valid_to | timestamp with time zone | | not null | | plain | | |
created_at | timestamp with time zone | | not null | | plain | | |
modified_at | timestamp with time zone | | | | plain | | |
process_type_id | smallint | | | | plain | | |
process_id | bigint | | | | plain | | |
Indexes:
"our_table_pkey" PRIMARY KEY, btree (ap_id, code, valid_from)
"our_table_2__code" btree (code)
"our_table_2__valid_to" btree (valid_to)
"our_table_2__value" btree (value)
Access method: heap

mydb=# SET duckdb.force_execution = true;
SET
mydb=# select count(*) from our_table;
server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
The connection to the server was lost. Attempting reset: Failed.
The connection to the server was lost. Attempting reset: Failed.

server log:
2025-10-24 11:52:30.474 EEST [1551080] [24] db=,user=,app=,client= LOG: server process (PID 2250149) was terminated by signal 11: Segmentation fault
2025-10-24 11:52:30.474 EEST [1551080] [25] db=,user=,app=,client= DETAIL: Failed process was running: select count(*) from our_table;db

OS:

Ubuntu 24.04.3 LTS

pg_duckdb Version (if built from source use commit hash):

fad000f pg_duckdb v1.0.0

Postgres Version (if built from source use commit hash):

17.6 (Ubuntu 17.6-2.pgdg24.04+1))

Hardware:

No response

Full Name:

Alexander Prikhno

Affiliation:

UKRENERGO CIFROVI RISHENNYA

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, Linux distribution) to reproduce the issue?

  • Yes, I have

Metadata

Metadata

Assignees

No one assigned

    Labels

    pg-extension-conflictIssues caused by combining with other Postgres extensions

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions