Difference in behavior of AddGeometryColumn change in behavior between 3.5.2 and 3.5.3? SRID is listed as unknown when querying Geometry_Columns instead of the specified SRID

Paul Ramsey pramsey at cleverelephant.ca
Fri Sep 5 12:39:26 PDT 2025


Looking more closely at the example it seems that the code creating the
table is deliberately forcing PostGIS to use the ancient constraint
behaviour, by setting the use_typmod value in AddGeometryColumn to 'false'.
So this problem is going to be restricted to "only" all of the Esri user
base.

https://trac.osgeo.org/postgis/ticket/5978#comment:3
https://postgis.net/docs/AddGeometryColumn.html

So we *did* modernize our code, but for some reason Esri chose to keep the
old scheme.

P.

On Fri, Sep 5, 2025 at 12:32 PM Paul Ramsey <pramsey at cleverelephant.ca>
wrote:

>
>
> On Mon, Aug 25, 2025 at 12:37 PM Regina Obe <lr at pcorp.us> wrote:
>
>> On further inspection the 3.5.3  change  did not remove constraint
>> support.  That was removed in upcoming 3.6.0.  What was changed was the
>> regex logic in it which should have resulted in the same answers.
>>
>
> Not actually the regex logic, as that wasn't implemented, what was
> implemented was a complete removal of expectation that column type and srid
> would be stored in constraints. I see no fix except to return the
> constraint logic and make sure our functions don't make those constraints
> anymore. And then wait *another* 15 years for people to update their
> tables, since if Esri still has tables like this being generated by EGDB
> scripts *as we speak* we cannot drop support for them for a very long time.
>
> Our fault for not updating the AddGeometryColumn functions 15 years ago
> when typmod was introduced. I wonder if there is an email thread explaining
> why.
>
> P.
>
>
>>
>>
>> I confirm this isn’t working so is a bug in the new regex logic of 3.5.3
>> and have ticketed here:
>>
>>
>>
>> https://trac.osgeo.org/postgis/ticket/5978
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> *From:* Regina Obe <lr at pcorp.us>
>> *Sent:* Monday, August 25, 2025 3:15 PM
>> *To:* 'Michael Downey' <mdowney at esri.com>; 'postgis-users at lists.osgeo.org'
>> <postgis-users at lists.osgeo.org>
>> *Cc:* 'Jonathan Shim' <JShim at esri.com>; 'Ale Raza' <araza at esri.com>;
>> 'Yung-Ting Chen' <ychen at esri.com>; 'Neeta Reddy' <nreddy at esri.com>;
>> 'Justin Muise' <JMuise at esri.com>
>> *Subject:* RE: Difference in behavior of AddGeometryColumn change in
>> behavior between 3.5.2 and 3.5.3? SRID is listed as unknown when querying
>> Geometry_Columns instead of the specified SRID
>>
>>
>>
>> We did remove constraint support in geometry_columns where and since you
>> are using constraints that would do it.
>>
>>
>>
>> Though I thought we did that in upcoming PostGIS 3.6.0 not PostGIS 3.5.3,
>> but I guess I was mistaken.  It was done in 3.5.3.
>>
>>
>>
>> https://trac.osgeo.org/postgis/ticket/5829
>>
>>
>>
>> Any reason you can’t switch to typmod.  The constraint logic has a number
>> of issues, it is slower to parse than typmod and has caused people issues
>> over the years as it traps other constraints  causing issues as you can see
>> in the above ticket.
>>
>>
>>
>> The workaround for this if you need the old behavior is to use the
>> geometry_columns view definition from 3.5.2
>>
>>
>>
>> Thanks,
>>
>> Regina
>>
>>
>>
>> *From:* Michael Downey via postgis-users <postgis-users at lists.osgeo.org>
>> *Sent:* Monday, August 25, 2025 1:11 PM
>> *To:* postgis-users at lists.osgeo.org
>> *Cc:* Jonathan Shim <JShim at esri.com>; Ale Raza <araza at esri.com>;
>> Yung-Ting Chen <ychen at esri.com>; Neeta Reddy <nreddy at esri.com>; Justin
>> Muise <JMuise at esri.com>
>> *Subject:* Difference in behavior of AddGeometryColumn change in
>> behavior between 3.5.2 and 3.5.3? SRID is listed as unknown when querying
>> Geometry_Columns instead of the specified SRID
>>
>>
>>
>>
>>
>> Windows 17.6, 16.10,
>>
>> PostGIS 3.5.3
>>
>> For some reason I did not see this when I started testing 3.5.3 a couple
>> of months ago. After I removed the earlier 3.5.2 and reinstalled 3.5.3, saw
>> the query return an unknonw SRID instead of the stated one.
>>
>>
>>
>> DROP TABLE map.t1;
>>
>>
>>
>> CREATE TABLE map.t1 (
>>
>>   OBJECTID SERIAL NOT NULL,
>>
>>   PKEY     INTEGER,
>>
>>   PRIMARY KEY ( OBJECTID )  );
>>
>>
>>
>> SELECT public.AddGeometryColumn ('map', 't1', 'shape',  4326,
>> upper('POINT'), 2, false);
>>
>>
>>
>>              addgeometrycolumn
>>
>> -------------------------------------------
>>
>> map.t1.shape SRID:4326 TYPE:POINT DIMS:2
>>
>>
>>
>>
>>
>> SELECT f_table_schema AS schema, f_table_name AS table, f_geometry_column
>> AS column, coord_dimension AS Dimension, srid FROM public.geometry_columns;
>>
>>
>>
>> *PostGIS 3.5.2*
>>
>> schema |         table          | column | dimension | srid
>>
>> --------+------------------------+--------+-----------+------
>>
>> map    | t1                     | shape  |         2 | *4326*
>>
>>
>>
>> *PostGIS 3.5.3*
>>
>> schema |         table          | column | dimension | srid
>>
>> --------+------------------------+--------+-----------+------
>>
>> map    | t1                     | shape  |         2 | *   0*
>>
>>
>>
>>
>>
>> But describe table looks fine:
>>
>> \d t1
>>
>>                                   Table "map.t1"
>>
>>   Column  |   Type   | Collation | Nullable |               Default
>>
>>
>> ----------+----------+-----------+----------+--------------------------------------
>>
>> objectid | integer  |           | not null |
>> nextval('t1_objectid_seq'::regclass)
>>
>> pkey     | integer  |           |          |
>>
>> shape    | geometry |           |          |
>>
>> Indexes:
>>
>>     "t1_pkey" PRIMARY KEY, btree (objectid)
>>
>> Check constraints:
>>
>>     "enforce_dims_shape" CHECK (st_ndims(shape) = 2)
>>
>>     "enforce_geotype_shape" CHECK (geometrytype(shape) = 'POINT'::text OR
>> shape IS NULL)
>>
>>     "enforce_srid_shape" CHECK (st_srid(shape) = 4326)
>>
>>
>>
>> Thanks,
>>
>> Michael
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20250905/f412a559/attachment.htm>


More information about the postgis-users mailing list