If I change the CREATE MATERIALIZED VIEW to CREATE TABLE, exactly the
same SQL statement succeeds... Both modes used to work. My current setup
is PostgreSQL 18.1 / PostGIS 3.6.1.
Marco
Op 2-12-2025 om 19:57 schreef Marco Boeringa:
Hi,
As part of a larger workflow, I am using a custom PostgreSQL function
that depends on ST_NRings, and is used to create a MATERIALIZED VIEW.
This has worked flawlessly until recently. I now ran into an issue
with the error message below. Going over my own code calling the
custom function that includes the ST_NRings call, I just cannot see
any recent code change made by myself explaining this sudden error.
This part of the code has been stable for quite a while.
As input to the custom function, WGS1984 OpenStreetMap data is used,
stored as 'geometry' type. There are actually explicit type casts in
the code as well, so even that part of the error message I cannot
explain for now.
My question: has there been any change to ST_NRings in a recent update
of PostGIS (3.6.0 or 3.6.1?), that might explain this error? E.g.
should the 'public' be in this error message at all, I would have
expected "ERROR: function st_nrings(geometry) does not exist"?
Marco
ERROR: function st_nrings(public.geometry) does not exist
LINE 8: WHEN ST_NRings($1) = 1 THEN $1
^
HINT: No function matches the given name and argument types. You
might need to add explicit type casts.