Issue with st_estimatedextent function ??
Bo Victor Thomsen
bo.victor.thomsen at gmail.com
Wed Nov 19 09:21:36 PST 2025
Hi list -
I'm using Postgres/Postgis as a data repository for QGIS - and it
normally just works.. However I'm getting errors with tables having long
names, for example:
/*
fdc_results.bygningskade_stormflod_rcp85_2100_t100_ssp3_7_0_20251119164
*/
(Schema-name length: 11, table-name length: 59)
I have tracked the issue using the log facility in QGIS. It shows, that
QGIS intermittently executes a SQL command:
/*SELECT
st_estimatedextent('fdc_results','bygningskade_stormflod_rcp85_2100_t100_ssp3_7_0_20251119164','geom')*/
which results in an error: *ERROR: invalid name syntax*
If I change the table name to:
/*fdc_results.bygningskade_stormflod_rcp85_2100_t100_ssp3_7_0
*/(Schema-name length: 11, table-name length: 47)
the error disappears.
I've done some testing and could replicate the error (and non-error)
situation in PGAdmin
Further testing shows that if the sum of the character lengths of the
schema- and table-name is larger than 58 the function will stop with an
error. Otherwise it returns a result like:
"BOX(716701.25 6167151,720533.9375 6174220)"
It's my understanding, that the maximum length of a tablename in
PostgreSQL is 63. This same limit applies for every type of identifier
in Postgres. Am I wrong to assume this? Or is there an issue with name
lengths in the /**/PostGIS st_estimatedextent/**/ function??
(It might be a coincidence but if you express the tablename like this :
/*"*//*fdc_results"."bygningskade_stormflod_rcp85_2100_t100_ssp3_7_0*//*",
*/the total length is 63)
PostgreSQL version: "PostgreSQL 17.4 on x86_64-windows, compiled by
msvc-19.42.34436, 64-bit"
PostGIS version: "3.5 USE_GEOS=1 USE_PROJ=1 USE_STATS=1"
--
Med venlig hilsen / Best regards
Bo Victor Thomsen
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20251119/2ac66da6/attachment.htm>
More information about the postgis-users
mailing list