Upgrade PostGIS extension z dev verze

Upgrade PostGIS extension z dev verze
« kdy: 10. 03. 2025, 10:33:45 »
Ahoj!
Na serveru se mi do Docker image nejakou nestastnou shodou okolnosti dostala extension PostGIS ve verzi 3.2.0.dev, nad kterou se nasledne postavila kupa uzivatelskych objektu.
Pri patchovani jsem narazil na to, ze dostupna verze extension uz je novejsi (3.5.0), bohuzel se mi nedari prijit na zadny zpusob, jak stavajici extension updatovat. Vzdy skoncim na informaci, ze z dane verze neni k dispozici zadna cesta pro update na novou verzi. Rad bych se vyhnul odstavce spojene s exportem/importem dat (instance neni uplne mala a zabere to cas) a tak bych se jeste rad zkusil zeptat zkusenejsich. Existuje nejaka moznost, jak provest update extension nebo me dump zkratka nemine?
Diky moc za pripadne napady!


Re:Upgrade PostGIS extension z dev verze
« Odpověď #1 kdy: 13. 03. 2025, 09:56:45 »
Bez nároku, že to bude fungovat, ale co cluster?
Teda díky pojmenování je Postgres Cluster něco malinko jinýho, ale co bych otestoval je druhý server jako slave, novější verze postgis a do něj syncnout data. A pak to jenom překlopit s minimální odstávkou.

Asi to bude chtít pár pokusů, ale mohlo by to projít. Od klávesnice nevím, co ti ten pg_basebackup vlastně všechno přenese a jestli nebude potřeba před nastartováním nějak poladit konfiguraci, aby tam byla novější verze pgvector.

Jinak pokud jsi tohle nikdy nedělal, bude to chvilku bolet, ale hledáš pojem "Streaming replication".

Mě snad nejvíc času zabralo si všimnout toho, jak se server stane standby.
HINT: A server enters standby mode if a standby.signal file exists in the data directory when the server is started.

https://wiki.postgresql.org/wiki/Streaming_Replication

Good luck a případně dej vědět, jak to dopadlo.

Re:Upgrade PostGIS extension z dev verze
« Odpověď #2 kdy: 13. 03. 2025, 14:37:59 »
Ahoj!
Na serveru se mi do Docker image nejakou nestastnou shodou okolnosti dostala extension PostGIS ve verzi 3.2.0.dev, nad kterou se nasledne postavila kupa uzivatelskych objektu.
Pri patchovani jsem narazil na to, ze dostupna verze extension uz je novejsi (3.5.0), bohuzel se mi nedari prijit na zadny zpusob, jak stavajici extension updatovat. Vzdy skoncim na informaci, ze z dane verze neni k dispozici zadna cesta pro update na novou verzi. Rad bych se vyhnul odstavce spojene s exportem/importem dat (instance neni uplne mala a zabere to cas) a tak bych se jeste rad zkusil zeptat zkusenejsich. Existuje nejaka moznost, jak provest update extension nebo me dump zkratka nemine?
Diky moc za pripadne napady!

Používáme hlavně Oracle, ale koncept může být stejný. Máme hot standby kam se replikuje vse, co se v hlavni db uděla.

Zkus si vytvorit takovou hot standby a pak až bude vše ok, tak na ni přesuň provoz.

Určitě si hlídej jestli jsou geometrie validní a asi bych udělal rebuild indexů. Toto může ušetřit hodně nervů :)

Re:Upgrade PostGIS extension z dev verze
« Odpověď #3 kdy: Dnes v 00:37:52 »
Kolegove, diky za napad!. Souhlasim s tim, ze by to nejspise mohlo byt elegantni reseni, kterym bych se vyhnul potrebe exportu/importu, bohuzel v mem prostredi nemam k dispozici moznost si postavit repliku (korporat, takze oddeleni kompetenci, security pravidla atd.).

Re:Upgrade PostGIS extension z dev verze
« Odpověď #4 kdy: Dnes v 10:31:57 »
Kolegove, diky za napad!. Souhlasim s tim, ze by to nejspise mohlo byt elegantni reseni, kterym bych se vyhnul potrebe exportu/importu, bohuzel v mem prostredi nemam k dispozici moznost si postavit repliku (korporat, takze oddeleni kompetenci, security pravidla atd.).

Napadla me jeste jedna vec. Jak resi Postgresql extensions? Je mozne mit ruzne verze v ruznych databazich?

Tady vypada, ze by to mohlo jit
https://gis.stackexchange.com/questions/229004/is-it-possible-for-2-or-more-postgis-extensions-to-coexist


Jestli by to opravdu slo, tak bych postupoval takto

1. prelozit  3.2.0 finalni verzi - tim ziskas velmi podobnou funkcionalitu jak mas s  3.2.0.dev
2. udelat novou db v ramci stejneho serveru a pouzit 3.2.0 (bez dev)
3. vse tam pretahat, provest validaci geometrii a mozna prepocitat spatial indexy
4. zacit pouzivat novou db
5. pak uz by mel jit upgrade postgis 3.2.0 na novejsi verzi, ten upgrade by pak mel udelat i dalsi kroky,pokud jsou potreba.

Urcite bych nesel rovnou na novejsi verzi z te dev. Mas docela stesti dokonce jeste podporuji i 3.1 (https://postgis.net/tags/3.2/)

Doporucuji nekde nejdriv vyzkouset, postgis pouzivam velmi rekreacne.