pg.ddx.io  pgsql-bugs@postgresql.org mailing list archive  
help / color / mirror / Atom feed
BUG #17620: JIT-Compiler causes Segmentation Fault
2+ messages / 2 participants
[nested] [flat]

* BUG #17620: JIT-Compiler causes Segmentation Fault
@ 2022-09-22 15:52 PG Bug reporting form <noreply@postgresql.org>
  2022-09-23 00:12 ` Re: BUG #17620: JIT-Compiler causes Segmentation Fault Andres Freund <andres@anarazel.de>
  0 siblings, 1 reply; 2+ messages in thread

From: PG Bug reporting form @ 2022-09-22 15:52 UTC (permalink / raw)
  To: pgsql-bugs@lists.postgresql.org; +Cc: marcel.spitz@envelio.de

The following bug has been logged on the website:

Bug reference:      17620
Logged by:          Marcel Spitz
Email address:      marcel.spitz@envelio.de
PostgreSQL version: 13.8
Operating system:   Debian GNU/Linux 11 (bullseye) on linux/arm64
Description:        

This can be reproduced with the official Docker Image "postgres:13.8".
Steps to reproduce:
First install the Debian Package `postgresql-13-postgis-3`
Set the value of shared_buffers to be above "1967636kB" (shared_buffers =
2GB will do)

Execute the following script:

```
SET jit_above_cost = 1;

CREATE TABLE IF NOT EXISTS t1 (
    int_id BIGINT primary key,
    text_id varchar
);

CREATE UNIQUE INDEX index_1 ON t1 (text_id);

CREATE TABLE IF NOT EXISTS t2
(
    ext_id       bigint,
    text_id     varchar,
    int_id         bigint,
    a         bigint,
    b       bigint,
    c       bigint,
    d       bigint,
    e       bigint,
    f     bigint
);
INSERT INTO t2 (ext_id, text_id) VALUES (0,0);

CREATE INDEX index_2 on t2 (text_id);

UPDATE t2 SET int_id = t1.int_id FROM t1 WHERE t2.text_id = t1.text_id;
```
With the Update Statement a Segmentation Fault occurs and this is what shows
in the logs (with DEBUG5)

```
[43] DEBUG:  StartTransaction(1) name: unnamed; blockState: DEFAULT; state:
INPROGRESS, xid/subid/cid: 0/1/0
[43] DEBUG:  time to inline: 0.000s, opt: 0.000s, emit: 0.003s
psql:/files/test.sql:32: server closed the connection unexpectedly
	This probably means the server terminated abnormally
	before or while processing the request.
psql:/files/test.sql:32: fatal: connection to server was lost
[33] DEBUG:  reaping dead processes
[33] DEBUG:  server process (PID 43) was terminated by signal 11:
Segmentation fault
[33] DETAIL:  Failed process was running: UPDATE t2 SET int_id = t1.int_id
FROM t1 WHERE t2.text_id = t1.text_id;
[33] LOG:  server process (PID 43) was terminated by signal 11: Segmentation
fault
[33] DETAIL:  Failed process was running: UPDATE t2 SET int_id = t1.int_id
FROM t1 WHERE t2.text_id = t1.text_id;
[33] LOG:  terminating any other active server processes
[33] DEBUG:  sending SIGQUIT to process 40
[33] DEBUG:  sending SIGQUIT to process 36
[33] DEBUG:  sending SIGQUIT to process 35
[33] DEBUG:  sending SIGQUIT to process 37
[33] DEBUG:  sending SIGQUIT to process 38
[33] DEBUG:  sending SIGQUIT to process 39
[39] DEBUG:  writing stats file "pg_stat/global.stat"
[39] DEBUG:  writing stats file "pg_stat/db_13445.stat"
[39] DEBUG:  removing temporary stats file "pg_stat_tmp/db_13445.stat"
[38] WARNING:  terminating connection because of crash of another server
process
[38] DETAIL:  The postmaster has commanded this server process to roll back
the current transaction and exit, because another server process exited
abnormally and possibly corrupted shared memory.
[38] HINT:  In a moment you should be able to reconnect to the database and
repeat your command.
[39] DEBUG:  writing stats file "pg_stat/db_0.stat"
[39] DEBUG:  removing temporary stats file "pg_stat_tmp/db_0.stat"
[39] DEBUG:  shmem_exit(-1): 0 before_shmem_exit callbacks to make
[39] DEBUG:  shmem_exit(-1): 0 on_shmem_exit callbacks to make
[39] DEBUG:  proc_exit(-1): 0 callbacks to make
[33] LOG:  all server processes terminated; reinitializing
[33] DEBUG:  shmem_exit(1): 0 before_shmem_exit callbacks to make
[33] DEBUG:  shmem_exit(1): 5 on_shmem_exit callbacks to make
[33] DEBUG:  cleaning up dynamic shared memory control segment with ID
209425142
```

A core dump is produced as well, but it is not of any use, i presume because
of JIT Compilation



^ permalink  raw  reply  [nested|flat] 2+ messages in thread

* Re: BUG #17620: JIT-Compiler causes Segmentation Fault
  2022-09-22 15:52 BUG #17620: JIT-Compiler causes Segmentation Fault PG Bug reporting form <noreply@postgresql.org>
@ 2022-09-23 00:12 ` Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 2+ messages in thread

From: Andres Freund @ 2022-09-23 00:12 UTC (permalink / raw)
  To: marcel.spitz@envelio.de; pgsql-bugs@lists.postgresql.org

Hi,

On 2022-09-22 15:52:07 +0000, PG Bug reporting form wrote:
> This can be reproduced with the official Docker Image "postgres:13.8".
> Steps to reproduce:

> First install the Debian Package `postgresql-13-postgis-3`

Hm - is that part required to trigger the problem? Your reproducer doesn't
reference postgis anywhere....


I tried to reproduce this, without success, neither inside nor outside a
container. I did start the container with podman, not docker though.


> A core dump is produced as well, but it is not of any use, i presume because
> of JIT Compilation

Does the core dump look more sensible if you turn on 'jit_debugging_support'?

Greetings,

Andres Freund





^ permalink  raw  reply  [nested|flat] 2+ messages in thread


end of thread, other threads:[~2022-09-23 00:12 UTC | newest]

Thread overview: 2+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2022-09-22 15:52 BUG #17620: JIT-Compiler causes Segmentation Fault PG Bug reporting form <noreply@postgresql.org>
2022-09-23 00:12 ` Andres Freund <andres@anarazel.de>

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox