Re: Pg18 Recursive Crash - Mailing list pgsql-hackers

From Nathan Bossart
Subject Re: Pg18 Recursive Crash
Date
Msg-id Z2BtL7ZXEjKkHtNX@nathan
Whole thread Raw
In response to Pg18 Recursive Crash  (Paul Ramsey <pramsey@cleverelephant.ca>)
Responses Re: Pg18 Recursive Crash
List pgsql-hackers
Thanks for the report!

On Mon, Dec 16, 2024 at 09:50:39AM -0800, Paul Ramsey wrote:
> Apologies if this is already reported, but there´s a crasher in recursive
> queries at the head of the current development that happened to be
> exercised by our regression suite. Here is a core-only reproduction.
> 
> CREATE TABLE foo (id integer, x integer, y integer);
> INSERT INTO foo VALUES (1, 0, 1);
> INSERT INTO foo VALUES (2, 1, 2);
> INSERT INTO foo VALUES (3, 2, 3);
> 
> WITH RECURSIVE path (id, x, y) AS (
>     SELECT id, x, y FROM foo WHERE id = 1
>     UNION
>     SELECT foo.id, foo.x, foo.y
>     FROM path, foo
>     WHERE path.y = foo.x
> )
> SELECT 'crash', id, x, y FROM path;

git-bisect is pointing me to https://postgr.es/c/0f57382.  Here is the
trace I'm seeing:

    TRAP: failed Assert("op->d.fetch.kind == slot->tts_ops"), File:
"../postgresql/src/backend/executor/execExprInterp.c",Line: 2244, PID: 5031
 
    0   postgres                            0x000000010112d068 ExceptionalCondition + 108
    1   postgres                            0x0000000100e54f04 ExecInterpExpr + 604
    2   postgres                            0x0000000100e5bd50 LookupTupleHashEntry + 116
    3   postgres                            0x0000000100e8e580 ExecRecursiveUnion + 140
    4   postgres                            0x0000000100e770c0 CteScanNext + 248
    5   postgres                            0x0000000100e66e9c ExecScan + 124
    6   postgres                            0x0000000100e5dc9c standard_ExecutorRun + 304
    7   postgres                            0x0000000100ffe6dc PortalRunSelect + 236
    8   postgres                            0x0000000100ffe2f8 PortalRun + 492
    9   postgres                            0x0000000100ffd298 exec_simple_query + 1276
    10  postgres                            0x0000000100ffaf24 PostgresMain + 3632
    11  postgres                            0x0000000100ff631c BackendInitialize + 0
    12  postgres                            0x0000000100f5d638 PgArchShmemSize + 0
    13  postgres                            0x0000000100f61518 ServerLoop + 4300
    14  postgres                            0x0000000100f5fc60 InitProcessGlobals + 0
    15  postgres                            0x0000000100eb1e7c help + 0
    16  dyld                                0x000000019ed3b154 start + 2476

-- 
nathan



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Regression tests fail on OpenBSD due to low semmns value
Next
From: Andres Freund
Date:
Subject: Re: Regression tests fail on OpenBSD due to low semmns value