Opened 16 months ago

Closed 16 months ago

Last modified 13 months ago

#5308 closed defect (fixed)

PG16 build failure error: too few arguments to function ‘stringToQualifiedNameList’

Reported by: robe Owned by: pramsey
Priority: blocker Milestone: PostGIS 3.3.3
Component: postgis Version: 3.3.x
Keywords: PostgreSQL 16 pg16 Cc:

Description (last modified by robe)

21:42:28 ---- Making all in libpgcommon
21:42:28 make[1]: Entering directory '/var/lib/jenkins/workspace/postgis/branches/3.4/libpgcommon'
21:42:28 gcc -I./../liblwgeom -I../liblwgeom  -I/var/lib/jenkins/workspace/geos/rel-3.12w64/include   -I/usr/include/libxml2 -I/usr/include -I/usr/include/json-c  -DNDEBUG  -std=gnu99 -g -O2 -fno-math-errno -fno-signed-zeros -Wall -I/var/lib/jenkins/workspace/pg/rel/pg16w64/include/postgresql/server   -fPIC -DPIC  -c -o gserialized_gist.o gserialized_gist.c
21:42:29 gcc -I./../liblwgeom -I../liblwgeom  -I/var/lib/jenkins/workspace/geos/rel-3.12w64/include   -I/usr/include/libxml2 -I/usr/include -I/usr/include/json-c  -DNDEBUG  -std=gnu99 -g -O2 -fno-math-errno -fno-signed-zeros -Wall -I/var/lib/jenkins/workspace/pg/rel/pg16w64/include/postgresql/server   -fPIC -DPIC  -c -o lwgeom_transform.o lwgeom_transform.c
21:42:29 gcc -I./../liblwgeom -I../liblwgeom  -I/var/lib/jenkins/workspace/geos/rel-3.12w64/include   -I/usr/include/libxml2 -I/usr/include -I/usr/include/json-c  -DNDEBUG  -std=gnu99 -g -O2 -fno-math-errno -fno-signed-zeros -Wall -I/var/lib/jenkins/workspace/pg/rel/pg16w64/include/postgresql/server   -fPIC -DPIC  -c -o lwgeom_cache.o lwgeom_cache.c
21:42:29 gcc -I./../liblwgeom -I../liblwgeom  -I/var/lib/jenkins/workspace/geos/rel-3.12w64/include   -I/usr/include/libxml2 -I/usr/include -I/usr/include/json-c  -DNDEBUG  -std=gnu99 -g -O2 -fno-math-errno -fno-signed-zeros -Wall -I/var/lib/jenkins/workspace/pg/rel/pg16w64/include/postgresql/server   -fPIC -DPIC  -c -o lwgeom_pg.o lwgeom_pg.c
21:42:30 lwgeom_pg.c: In function ‘postgis_get_full_version_schema’:
21:42:30 lwgeom_pg.c:104:16: error: too few arguments to function ‘stringToQualifiedNameList’
21:42:30   104 |  List* names = stringToQualifiedNameList(proname);
21:42:30       |                ^~~~~~~~~~~~~~~~~~~~~~~~~
21:42:30 In file included from lwgeom_pg.c:38:
21:42:30 /var/lib/jenkins/workspace/pg/rel/pg16w64/include/postgresql/server/utils/regproc.h:28:14: note: declared here
21:42:30    28 | extern List *stringToQualifiedNameList(const char *string, Node *escontext);
21:42:30       |              ^~~~~~~~~~~~~~~~~~~~~~~~~
21:42:30 make[1]: *** [Makefile:69: lwgeom_pg.o] Error 1
21:42:30 make[1]: Leaving directory '/var/lib/jenkins/workspace/postgis/branches/3.4/libpgcommon'
21:42:30 make: *** [GNUmakefile:25: all] Error 1
21:42:30 Build step 'Execute shell' marked build as failure
21:42:30 Triggering a new build of PostgreSQL stop
21:42:30 Finished: FAILURE

this failure started showing on debbie in last two runs on Dec 30th. Last successful run against PG16 was 12/27.

Change History (4)

comment:1 by robe, 16 months ago

Description: modified (diff)

smoking gun here - https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=858e776c84f48841e7e16fba7b690b76e54f3675#patch10

Commit: Convert the reg* input functions to report (most) errors softly.

https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=858e776c84f48841e7e16fba7b690b76e54f3675

This is not really complete, but it catches most cases of practical
interest.  The main omissions are:

* regtype, regprocedure, and regoperator parse type names by
calling the main grammar, so any grammar-detected syntax error
will still be a hard error.  Also, if one includes a type
modifier in such a type specification, errors detected by the
typmodin function will be hard errors.

* Lookup errors are handled just by passing missing_ok = true
to the relevant catalog lookup function.  Because we've used
quite a restrictive definition of "missing_ok", this means that
edge cases such as "the named schema exists, but you lack
USAGE permission on it" are still hard errors.

It would make sense to me to replace most/all missing_ok
parameters with an escontext parameter and then allow these
additional lookup failure cases to be trapped too.  But that's
a job for some other day.

Discussion: https://postgr.es/m/3342239.1671988406@sss.pgh.pa.us

comment:2 by Regina Obe <lr@…>, 16 months ago

In 36a749a5/git:

PG16 fix for change in stringToQualifiedNameList
References #5308 for PostGIS 3.4

comment:3 by pramsey, 16 months ago

Resolution: fixed
Status: newclosed

comment:4 by Regina Obe <lr@…>, 13 months ago

In 76f44de/git:

Support build on Pg16devel for PostGIS 3.3.3

Closes #5257
Closes #5261
Closes #5277
Closes #5308
Closes #5374
Closes https://github.com/postgis/postgis/pull/716

Note: See TracTickets for help on using tickets.