Re: Is a UDF binary portable across different minor releases and PostgreSQL distributions?
От | Tsunakawa, Takayuki |
---|---|
Тема | Re: Is a UDF binary portable across different minor releases and PostgreSQL distributions? |
Дата | |
Msg-id | 0A3221C70F24FB45833433255569204D1F59C9A1@G01JPEXMBYT05 обсуждение исходный текст |
Ответ на | Re: Is a UDF binary portable across different minor releases and PostgreSQL distributions? (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Is a UDF binary portable across different minor
releases and PostgreSQL distributions?
|
Список | pgsql-hackers |
> From: Tom Lane [mailto:tgl@sss.pgh.pa.us] > "Tsunakawa, Takayuki" <tsunakawa.takay@jp.fujitsu.com> writes: > > Option 2: > > Rebuild UDFs with the target PostgreSQL distribution. > > You do not have to rebuild UDFs when you upgrade or downgrade the > > minor release. (If your UDF doesn't work after changing the minor > > release, it's the bug of PostgreSQL. You can report it to > > pgsql-bugs.) > > I do not like either of those. We try hard not to break extensions in minor > releases, but I'm not willing to state it as a hard-and-fast policy that > we never will --- especially because there's no bright line as to which > internal APIs extensions can rely on or not. With sufficiently negative > assumptions about what third-party authors might have chosen to do, it could > become impossible to fix anything at all in released branches. I feel empathy, but I think something needs to be documented for users to upgrade and/or change distributions with relief. In practice, though it may be a shame, isn't option 1 the current answer? Again, the current situation seems similar to the Linux loadable kernel modules. So PostgreSQL is not alone. See "Binarycompatibility" section in: https://en.wikipedia.org/wiki/Loadable_kernel_module > In practice, extensions seldom need to be modified for new minor releases. > But there's a long way between that statement and a promise that it won't > ever happen for any conceivable extension. I think so, too. > To make this situation better, what we'd really need is a bunch of work > to identify and document the specific APIs that we would promise won't change > within a release branch. That idea has been batted around before, but > nobody's stepped up to do all the tedious (and, no doubt, contentious) work > that would be involved. I can't yet imagine if such API (including data structures) can really be defined so that UDF developers feel comfortablewith its flexibility. I wonder how other OSes provide such API and ABI. Regards Takayuki Tsunakawa
В списке pgsql-hackers по дате отправления: