pg.ddx.io  pgsql-committers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Peter Eisentraut <peter@eisentraut.org>
Cc: pgsql-committers@lists.postgresql.org
Subject: Re: pgsql: Prepare for Python "Limited API" in PL/Python
Date: Wed, 26 Feb 2025 11:51:04 -0500
Message-ID: <1834446.1740588664@sss.pgh.pa.us> (raw)
In-Reply-To: <E1tnJNu-000CZW-0X@gemulon.postgresql.org>
References: <E1tnJNu-000CZW-0X@gemulon.postgresql.org>

Peter Eisentraut <peter@eisentraut.org> writes:
> Prepare for Python "Limited API" in PL/Python

Buildfarm's not happy with this at all.  It fails here too,
with python 3.6.8:

Program terminated with signal SIGSEGV, Segmentation fault.
#0  PyDict_GetItem (op=<unknown at remote 0x1>, key='enter')
    at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Objects/dictobject.c:1411
1411        if (!PyDict_Check(op))
(gdb) bt
#0  PyDict_GetItem (op=<unknown at remote 0x1>, key='enter') at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Objects/dictobject.c:1411
#1  0x00007fd48af71196 in _PyType_Lookup (name='enter', type=0x2236858) at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Objects/typeobject.c:2966
#2  _PyType_Lookup (name='enter', type=0x2236858) at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Objects/typeobject.c:2913
#3  _PyObject_GenericGetAttrWithDict (dict=0x0, name='enter', obj=<optimized out>) at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Objects/object.c:1090
#4  PyObject_GenericGetAttr (name='enter', obj=<optimized out>) at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Objects/object.c:1158
#5  PyObject_GetAttr (v=<optimized out>, name='enter') at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Objects/object.c:928
#6  0x00007fd48afc52f2 in _PyEval_EvalFrameDefault (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Python/ceval.c:2873
#7  0x00007fd48afa1108 in PyEval_EvalFrameEx (throwflag=0, f=Frame 0x7fd48a5d6588, for file <string>, line 4, in __plpython_procedure_subtransaction_alternative_names_49201 (s=<PLySubtransaction at remote 0x7fd497f321c8>))
    at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Python/ceval.c:752
#8  _PyFunction_FastCall (globals=<optimized out>, nargs=<optimized out>, args=<optimized out>, co=<optimized out>) at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Python/ceval.c:4934
#9  fast_function (func=<optimized out>, stack=<optimized out>, nargs=<optimized out>, kwnames=<optimized out>) at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Python/ceval.c:4969
#10 0x00007fd48afc4537 in call_function (pp_stack=0x7ffe3d639da8, oparg=<optimized out>, kwnames=0x0) at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Python/ceval.c:4873
#11 0x00007fd48afc5198 in _PyEval_EvalFrameDefault (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Python/ceval.c:3336
#12 0x00007fd48af210a4 in PyEval_EvalFrameEx (throwflag=0, f=Frame 0x7fd48a5b0048, for file <string>, line 1, in <module> ()) at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Python/ceval.c:4167
#13 _PyEval_EvalCodeWithName (_co=<optimized out>, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=<optimized out>, kwnames=<optimized out>, kwargs=<optimized out>, kwcount=<optimized out>, 
    kwstep=<optimized out>, defs=<optimized out>, defcount=<optimized out>, kwdefs=<optimized out>, closure=<optimized out>, name=<optimized out>, qualname=<optimized out>) at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Python/ceval.c:4167
#14 0x00007fd48af22463 in PyEval_EvalCodeEx (closure=0x0, kwdefs=0x0, defcount=0, defs=0x0, kwcount=0, kws=0x0, argcount=0, args=0x0, locals=<optimized out>, globals=<optimized out>, _co=<optimized out>)
    at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Python/ceval.c:4188
#15 PyEval_EvalCode (co=<optimized out>, globals=<optimized out>, locals=<optimized out>) at /usr/src/debug/python3-3.6.8-69.el8_10.x86_64/Python/ceval.c:732
#16 0x00007fd48b3773d7 in PLy_procedure_call (kargs=kargs@entry=0x7fd48b37eeda "args", vargs=<optimized out>, proc=<optimized out>, proc=<optimized out>) at plpy_exec.c:1069
#17 0x00007fd48b377816 in PLy_exec_function (fcinfo=fcinfo@entry=0x226f948, proc=0x2269130) at plpy_exec.c:102
#18 0x00007fd48b3782c8 in plpython3_call_handler (fcinfo=0x226f948) at plpy_main.c:244
#19 0x00000000006eec15 in ExecInterpExpr (state=0x226f7f0, econtext=0x226f498, isnull=<optimized out>) at execExprInterp.c:912
#20 0x0000000000727e80 in ExecEvalExprSwitchContext (isNull=0x7ffe3d63a3df, econtext=0x226f498, state=0x226f7f0) at ../../../src/include/executor/executor.h:397
#21 ExecProject (projInfo=0x226f7e8) at ../../../src/include/executor/executor.h:431
#22 ExecResult (pstate=<optimized out>) at nodeResult.c:135


			regards, tom lane





view thread (4+ messages)  latest in thread

Message-ID: <1834446.1740588664@sss.pgh.pa.us>
Permalink:  ../1834446.1740588664@sss.pgh.pa.us/
Also on:    postgresql.org/message-id/1834446.1740588664@sss.pgh.pa.us

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-committers@postgresql.org
  Cc: tgl@sss.pgh.pa.us, peter@eisentraut.org, pgsql-committers@lists.postgresql.org
  Subject: Re: pgsql: Prepare for Python "Limited API" in PL/Python
  In-Reply-To: <1834446.1740588664@sss.pgh.pa.us>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

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