During container startup on a Raspberry Pi CM4 (ARM v8.0) the TimescaleDB Background worker crashes:
2026-04-09 10:28:29.080 CEST [21] LOG: background worker "TimescaleDB Background Worker Launcher" (PID 27) was terminated by signal 4: Illegal instruction
The issue seems to be that the TimescaleDB libraries were compiled using ARM v8.2 which has been fixed in TimescaleDB 2.25 or newer.
See: timescale/timescaledb#9039
To check what ARM architecture version the libraries have been compiled for:
$ strings /usr/lib/postgresql/17/lib/timescaledb-2.22.1.so | grep march
GNU GIMPLE 11.4.0 -mlittle-endian -mabi=lp64 -march=armv8.2-a+crypto -mlittle-endian -mabi=lp64 -g -g -g -g -O2 -O2 -O2 -O2 -fno-openmp -fno-openacc -fcf-protection=none -fno-strict-aliasing -fwrapv -fexcess-precision=standard -fstack-protector-strong -fPIC -ffat-lto-objects -fltrans
GNU C11 11.4.0 -march=armv8.2-a+crypto -mlittle-endian -mabi=lp64 -g -g -g -O2 -O2 -std=gnu11 -fwrapv -fexcess-precision=standard -flto -flto -ffat-lto-objects -fstack-protector-strong -fPIC -fvisibility=hidden -fno-strict-aliasing -fno-omit-frame-pointer -fasynchronous-unwind-tables -fstack-protector-strong -fstack-clash-protection
Full logging:
---------------------------------------------------------------------------------------------------------------------
STARTING...
---------------------------------------------------------------------------------------------------------------------
Checking for left over artifacts from a failed previous autoupgrade...
No artifacts found from a failed previous autoupgrade
Performing checks on existing database...
Existing postgresql.conf found checking for shared_preload_libraries = 'timescaledb'...
TimescaleDB library already present in shared_preload_libraries
---------------------------------------------------------------------------------------------------------------------
STEP 1: Looking for Timescale DB latest extension version for current PG 17
---------------------------------------------------------------------------------------------------------------------
Upgrading Timescale DB to version 2.22.1...
Starting temporary PostgreSQL 17 server...
pg_ctl: another server might be running; trying to start server anyway
waiting for server to start....2026-04-09 10:28:28.889 CEST [21] LOG: starting PostgreSQL 17.6 (Ubuntu 17.6-2.pgdg22.04+1) on aarch64-unknown-linux-gnu, compiled by gcc (Ubuntu 11.4.0-1ubuntu1~22.04.2) 11.4.0, 64-bit
2026-04-09 10:28:28.894 CEST [21] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2026-04-09 10:28:28.909 CEST [24] LOG: database system was interrupted; last known up at 2026-04-09 10:27:26 CEST
2026-04-09 10:28:29.028 CEST [24] LOG: database system was not properly shut down; automatic recovery in progress
2026-04-09 10:28:29.032 CEST [24] LOG: invalid record length at 0/14E29A0: expected at least 24, got 0
2026-04-09 10:28:29.032 CEST [24] LOG: redo is not required
2026-04-09 10:28:29.037 CEST [22] LOG: checkpoint starting: end-of-recovery immediate wait
2026-04-09 10:28:29.055 CEST [22] LOG: checkpoint complete: wrote 3 buffers (0.0%); 0 WAL file(s) added, 0 removed, 0 recycled; write=0.006 s, sync=0.002 s, total=0.021 s; sync files=2, longest=0.002 s, average=0.001 s; distance=0 kB, estimate=0 kB; lsn=0/14E29A0, redo lsn=0/14E29A0
2026-04-09 10:28:29.075 CEST [21] LOG: database system is ready to accept connections
2026-04-09 10:28:29.080 CEST [21] LOG: background worker "TimescaleDB Background Worker Launcher" (PID 27) was terminated by signal 4: Illegal instruction
2026-04-09 10:28:29.080 CEST [21] LOG: terminating any other active server processes
2026-04-09 10:28:29.084 CEST [21] LOG: all server processes terminated; reinitializing
done
During container startup on a Raspberry Pi CM4 (ARM v8.0) the TimescaleDB Background worker crashes:
The issue seems to be that the TimescaleDB libraries were compiled using ARM v8.2 which has been fixed in TimescaleDB 2.25 or newer.
See: timescale/timescaledb#9039
To check what ARM architecture version the libraries have been compiled for:
Full logging: