Re: Extensions, patch v16 - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Extensions, patch v16
Date
Msg-id 25824.1292002200@sss.pgh.pa.us
Whole thread Raw
In response to Re: Extensions, patch v16  (Dimitri Fontaine <dimitri@2ndQuadrant.fr>)
Responses Re: Extensions, patch v16  (Robert Haas <robertmhaas@gmail.com>)
Re: Extensions, patch v16  (Dimitri Fontaine <dimitri@2ndQuadrant.fr>)
List pgsql-hackers
Dimitri Fontaine <dimitri@2ndQuadrant.fr> writes:
> Tom Lane <tgl@sss.pgh.pa.us> writes:
>> Why is it in the makefile at all?  If the makefile does need to know it,
>> why don't we have it scrape the number out of the control file?  Or even
>> more to the point, since when do we need version numbers in extensions?

> It's in the Makefile so that you find it in the control file later, then
> in the extension catalog.

This doesn't answer my question of why it couldn't be done the other
way.  Why does the makefile need to know it?  If it does need to know
it, couldn't it get it out of the control file instead of vice versa?

> We need the version number just because I'm
> not able to name a single software that's not letting you know about its
> version number once installed.

I'm not convinced that this is actually a requirement, or that doing it
this specific way is a good solution.  In particular, keeping the
version number in the system catalogs seems pretty dubious.  The common
method for upgrading an already-installed contrib module just involves
dropping in a new .so --- that's not going to change the system
catalogs.  It would likely be better to keep the version ID inside the
.so file.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Dmitriy Igrishin
Date:
Subject: Re: Fwd: Extended query protocol and exact types matches.
Next
From: "David E. Wheeler"
Date:
Subject: Re: Extensions, patch v16