Skip to content

A segmentation fault occurs when calling the coalesce function in PostgreSQL version 17.Β #2256

@1165125080

Description

@1165125080

Describe the bug
Using PostgreSQL version 17.6, the release version of the age extension is PG17 v1.6.0. Calling select * from coalesce(1, 0); causes a segmentation fault. The stack trace is as follows:

Program received signal SIGSEGV, Segmentation fault.
is_oid_ag_func (func_oid=<optimized out>, func_name=0x7fce497471b0 "cypher") at src/backend/utils/ag_func.c:49
49	    proc = (Form_pg_proc)GETSTRUCT(proctup);
(gdb) bt
#0  is_oid_ag_func (func_oid=<optimized out>, func_name=0x7fce497471b0 "cypher") at src/backend/utils/ag_func.c:49
#1  0x00007fce496f9f38 in is_rte_cypher (rte=0x11f4b88) at src/backend/parser/cypher_analyze.c:327
#2  convert_cypher_walker (node=node@entry=0x11f4b88, pstate=pstate@entry=0x11f4408) at src/backend/parser/cypher_analyze.c:131
#3  0x00000000006f5b80 in range_table_entry_walker_impl (rte=0x11f4b88, walker=0x7fce496f9e50 <convert_cypher_walker>, context=0x11f4408, flags=21) at nodeFuncs.c:2821
#4  0x00000000006f5caa in range_table_walker_impl (rtable=0x11f4f38, walker=walker@entry=0x7fce496f9e50 <convert_cypher_walker>, context=context@entry=0x11f4408, flags=flags@entry=21) at nodeFuncs.c:2800
#5  0x00000000006f5e6e in query_tree_walker_impl (query=query@entry=0x11f4510, walker=walker@entry=0x7fce496f9e50 <convert_cypher_walker>, context=context@entry=0x11f4408, flags=flags@entry=21) at nodeFuncs.c:2777
#6  0x00007fce496f9f1a in convert_cypher_walker (node=node@entry=0x11f4510, pstate=pstate@entry=0x11f4408) at src/backend/parser/cypher_analyze.c:256
#7  0x00007fce496fac12 in post_parse_analyze (pstate=0x11f4408, query=0x11f4510, jstate=<optimized out>) at src/backend/parser/cypher_analyze.c:95
#8  0x00000000005aad6c in parse_analyze_fixedparams (parseTree=0x11f4398, sourceText=0x11f35c8 "select * from coalesce(1,0) ;", paramTypes=0x0, numParams=<optimized out>, queryEnv=0x0) at analyze.c:127
#9  0x00000000008031f2 in pg_analyze_and_rewrite_fixedparams (parsetree=parsetree@entry=0x11f4398, query_string=query_string@entry=0x11f35c8 "select * from coalesce(1,0) ;", paramTypes=paramTypes@entry=0x0, 
    numParams=numParams@entry=0, queryEnv=queryEnv@entry=0x0) at postgres.c:692
#10 0x00000000004b803e in exec_simple_query (query_string=0x11f35c8 "select * from coalesce(1,0) ;") at postgres.c:1194
#11 0x00000000008057b6 in PostgresMain (dbname=<optimized out>, username=<optimized out>) at postgres.c:4767
#12 0x00000000008000bf in BackendMain (startup_data=<optimized out>, startup_data_len=<optimized out>) at backend_startup.c:105
#13 0x00000000007717da in postmaster_child_launch (child_type=child_type@entry=B_BACKEND, startup_data=startup_data@entry=0x7ffecb6106fc "", startup_data_len=startup_data_len@entry=4, client_sock=client_sock@entry=0x7ffecb610700)
    at launch_backend.c:277
#14 0x0000000000775278 in BackendStartup (client_sock=0x7ffecb610700) at postmaster.c:3594
#15 ServerLoop () at postmaster.c:1676
#16 0x00000000007769ae in PostmasterMain (argc=argc@entry=3, argv=argv@entry=0x11edc70) at postmaster.c:1374
#17 0x00000000004b8bff in main (argc=3, argv=0x11edc70) at main.c:199

How are you accessing AGE (Command line, driver, etc.)?
psql

What data setup do we need to do?

select * from coalesce(1, 0);

What is the necessary configuration info needed?
shared_preload_libraries add 'age' parameter .

What is the command that caused the error?

select * from coalesce(1, 0);

Expected behavior
SQL executed successfully and returned results.

Environment (please complete the following information):
postgres 17.6

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions