[postgis-devel] PSC Vote: Get rid of micro in PostGIS Extension scripts (and comments from others)

Regina Obe lr at pcorp.us
Wed Jun 22 11:48:55 PDT 2022


> > > > Current situation is that PostGIS-3.3.0 installs a upgrade script:
> > > >
> > > >   postgis--ANY--3.3.0.sql
> > > >
> > > > And a symlink (on UNIX derived systems) or copies (on systems NOT
> > > > supporting symlinks) for each supported version, in the form:
> > > >
> > > >   postgis--${older}--ANY.sql -> postgis--ANY--3.3.0.sql
> > >
> > > I do not see any files being installed with postgis--${older}--ANY.sql
> format.
> >
> > Sorry, I meant:
> >
> >   postgis--${older}--3.3.0.sql -> postgis--ANY-3.3.0.sql
> >
> > > I thought switching things to ANY was something you did by updating
> > > the system catalogs, which is a no no on many DbaaS.
> >
> > That's a trick that allows upgrades without even having those
> > symlinks, but just the single target file (that we're already
> > installing):
> >
> >   postgis--ANY--3.3.0.sql
> >
> > > > What would the 0-bytes layout be ?
> > >
> > > I thought I had described it well enough here:
> > > https://trac.osgeo.org/postgis/wiki/PostGISExtensionPaths#SOLUTION3
> > >
> > > What was unclear about that?  I think you said Paul had intended MAX
> > > so
> > the X we might change to MAX to be clearer in intention.
> >
> > On the wiki you have files like:
> >
> >   postgis--3.0.0--3.3.X.sql (0 bytes)
> >   postgis--3.3.X--3.3.0.sql (real upgrade)
> >
> > I find the naming confusing, wouldn't this be clearer if it was:
> >
> >   postgis--3.0.0--ANY.sql (0 bytes)
> >   postgis--ANY--3.3.0.sql (real upgrade)
> >
> > We'd then be moving along the same track we are already on
> >
> > --strk;
> 
> I'd really like to move forward with this and NO I don't want an ANY as
the
> real file.
> ANY should be like the others:
> 
> postgis--ANY--3.3.MAX.sql (0 bytes)
> 
> 
> postgis--3.3.MAX.sql--3.3.0.sql (real upgrade)
> 
> to prevent duplication of scripts across minors and majors.  Note this
still has
> dupe of scripts, but it's only across micros so is acceptable since micro
> updates are expected to overwrite scripts.
> 
> -- Regina Obe
Relooking at the link structure of my apt.postgresql.org

I see  postgis--2.0.0--3.2.1.sql -> postgis--ANY--3.2.1.sql

So how about this so we keep the ANY as final target:

postgis--2.0.0--3.3.MAX.sql -> 0 byte file
postgis--3.3.MAX--3.3.0.sql -> postgis--ANY-3.3.0.sql  (this can still be a
symlink)
it will still be fatter than just making any a 0 byte, but I can live with
having two fat files on windows.

If this is not acceptable, then we need to reap out the spatial ref sys fix
so we are at least back to the way we were and deal with the proj issue in
3.4.







More information about the postgis-devel mailing list