Upgrade Debian 11 na 12: collation version mismatch u PostgreSQL

Ahoj,

Kód: [Vybrat]
2023-06-28 16:14:51.459 CEST [23646] USER@template1 WARNING:  database "template1" has a collation version mismatch
2023-06-28 16:14:51.459 CEST [23646] USER@template1 DETAIL:  The database was created using collation version 2.31, but the operating system provides version 2.36.
2023-06-28 16:14:51.459 CEST [23646] USER@template1 HINT:  Rebuild all objects in this database that use the default collation and run ALTER DATABASE template1 REFRESH COLLATION VERSION, or build PostgreSQL with the right library version.

Podle

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1029548#20
https://dba.stackexchange.com/questions/324649/collation-version-mismatch

jsem pouzil v tomto poradi:

Kód: [Vybrat]
alter database postgres refresh collation version;
reindex database postgres;
alter database template1 refresh collation version;
reindex database template1;

Samozrejme si nejsem jisty, zda je to dostatecne a ve spravnem poradi.

Upgrade byl proveden v krocich, tzn:
1] upgrade debian 11 na 12
2] upgrade db postgresql-15:amd64 (15.3-1.pgdg110+1, 15.3-1.pgdg120+1)

Behem upgrade 1] zustal repozitar postgresql nasmerovany na verzi debian 11. Momentalne nemam dalsi stroj po ruce, ktery bych takhle upgradoval, tak jen, nekdo znaly, kdyby v bode 1] byl repozitar postgresql nasmerovany na debian 12, doslo by taky k teto situaci?

Bude nas cekat upgrade hodne postgresql stroju na debian 12 a takovehle veci nemam rad. Nekdo, kdo muze potvrdit, ze alter/reindex je takhle dostatecne? Napr. pan Stehule prosim?

Diky.
« Poslední změna: 28. 06. 2023, 17:02:55 od Petr Krčmář »


CPU

  • *****
  • 870
    • Zobrazit profil
    • E-mail
????

Tohle jste četl???
https://www.root.cz/zpravicky/debian-12-bookworm-vyjde-v-sobotu/

Citace
A to i přes to, že je známo asi sto release-critical chyb...
Po vydání se bezpochyby najdou další chyby ... opravné vydání se očekává jako vždy zhruba měsíc po prvním vydání.

To jako zkoušíte migrovat živé stroje?
Tak to jste pane krutý střelec...

Debian stable, byl vzdy povazovan za stable a hodne lidi pouzivalo na servery testing! Do verze 10 bylo vsechno v poradku, od verze 10 cekam minimalne na druhy point release.


by_cx

  • ****
  • 290
    • Zobrazit profil
    • E-mail
Citace
A to i přes to, že je známo asi sto release-critical chyb...
Po vydání se bezpochyby najdou další chyby ... opravné vydání se očekává jako vždy zhruba měsíc po prvním vydání.

Souvisí ty critical chyby nějak s PostgreSQL?

CPU

  • *****
  • 870
    • Zobrazit profil
    • E-mail
Souvisí ty critical chyby nějak s PostgreSQL?

Nechtěl jsi říct s Debianem?
Podle mě to je chyba spojená nejspíš s libc ::)

A spravit by to mělo normálně jít...jen nevím, jestli v Debian 12 :-D
https://www.postgresql.org/docs/15/sql-altercollation.html#SQL-ALTERCOLLATION-NOTES
https://wiki.postgresql.org/wiki/Locale_data_changes
https://www.postgresql.org/docs/current/sql-createcollation.html
« Poslední změna: 28. 06. 2023, 21:23:27 od CPU »


Re:Upgrade Debian 11 na 12: collation version mismatch u PostgreSQL
« Odpověď #5 kdy: 28. 06. 2023, 22:23:41 »
Kdykoliv se upraví třídící algoritmy v glibc, tak je nutná reindexace všech indexů textových typů. Detaily teď v hlavě nemám, verzování collation na glibc vychází z verze glibc, ale to může způsobovat falešné alarmy. Doporučuje se přejít na ICU, kde je k dispozici sémantické verzování pro každé collation, tudíž to zbytečně negeneruje falešné alarmy. Hlavně je důležité reindexovat databázi, kde máte data. Databáze Postgres je pískoviště, a template1 se používá pouze při zakládání nových databází.

Re:Upgrade Debian 11 na 12: collation version mismatch u PostgreSQL
« Odpověď #6 kdy: 28. 06. 2023, 23:19:53 »
...
Upgrade byl proveden v krocich, tzn:
1] upgrade debian 11 na 12
2] upgrade db postgresql-15:amd64 (15.3-1.pgdg110+1, 15.3-1.pgdg120+1)

Behem upgrade 1] zustal repozitar postgresql nasmerovany na verzi debian 11. Momentalne nemam dalsi stroj po ruce, ktery bych takhle upgradoval, tak jen, nekdo znaly, kdyby v bode 1] byl repozitar postgresql nasmerovany na debian 12, doslo by taky k teto situaci?
...

Nevím co myslíte tím repozitářem...
Já jsem například v pátek udělal upgrade stroje, kde běží Request Tracker, aplikace i PostgreSQL a nic takového tam nemám.
Nejprve jsem upgradoval komplet OS, Instaloval aktuální PostgreSQL, tedy 15. Postinstalačním skriptem nově vytvořený cluster jsem dropnul a spustil upgrade stávajícího clusteru 13 na 15 a od té doby nic podezřelého.
Kód: [Vybrat]
pg_dropcluster --stop 15 main
pg_upgradecluster 13 main
Teď jsem kouknul a nic zvláštního...
Spíše to opravdu vypadá, že jste po vytvoření databázového prostoru ještě udělal upgrade libc6. Zkoukněte svoje logy od apt, kdy jste libc6 naposledy upgradoval a srovnejte s časem vzniku databázového prostoru. Třeba modify time na /var/lib/postgresql/15/...

Re:Upgrade Debian 11 na 12: collation version mismatch u PostgreSQL
« Odpověď #7 kdy: 29. 06. 2023, 08:37:36 »
...
Upgrade byl proveden v krocich, tzn:
1] upgrade debian 11 na 12
2] upgrade db postgresql-15:amd64 (15.3-1.pgdg110+1, 15.3-1.pgdg120+1)

Behem upgrade 1] zustal repozitar postgresql nasmerovany na verzi debian 11. Momentalne nemam dalsi stroj po ruce, ktery bych takhle upgradoval, tak jen, nekdo znaly, kdyby v bode 1] byl repozitar postgresql nasmerovany na debian 12, doslo by taky k teto situaci?
...

Nevím co myslíte tím repozitářem...
Já jsem například v pátek udělal upgrade stroje, kde běží Request Tracker, aplikace i PostgreSQL a nic takového tam nemám.
Nejprve jsem upgradoval komplet OS, Instaloval aktuální PostgreSQL, tedy 15. Postinstalačním skriptem nově vytvořený cluster jsem dropnul a spustil upgrade stávajícího clusteru 13 na 15 a od té doby nic podezřelého.
Kód: [Vybrat]
pg_dropcluster --stop 15 main
pg_upgradecluster 13 main
Teď jsem kouknul a nic zvláštního...
Spíše to opravdu vypadá, že jste po vytvoření databázového prostoru ještě udělal upgrade libc6. Zkoukněte svoje logy od apt, kdy jste libc6 naposledy upgradoval a srovnejte s časem vzniku databázového prostoru. Třeba modify time na /var/lib/postgresql/15/...

Repozitarem je mysleno standardni repo debianu a repo apt.postgresql.org.
To postgresql 15 tam bylo nainstalovano jeste na debian 11 nekolik mesicu pred upgradem na debian 12.
« Poslední změna: 29. 06. 2023, 08:39:29 od czechsys »

Re:Upgrade Debian 11 na 12: collation version mismatch u PostgreSQL
« Odpověď #8 kdy: 29. 06. 2023, 08:53:29 »
Kdykoliv se upraví třídící algoritmy v glibc, tak je nutná reindexace všech indexů textových typů. Detaily teď v hlavě nemám, verzování collation na glibc vychází z verze glibc, ale to může způsobovat falešné alarmy. Doporučuje se přejít na ICU, kde je k dispozici sémantické verzování pro každé collation, tudíž to zbytečně negeneruje falešné alarmy. Hlavně je důležité reindexovat databázi, kde máte data. Databáze Postgres je pískoviště, a template1 se používá pouze při zakládání nových databází.

Ja jsem sysadmin, ja o tom nic nevim :-) Pokud mi apt nainstaluje postgresql s libc collation, ja rozhodne nebudu predelavat konfig managementem celou db abych vytvoril novou s icu :-)

Re:Upgrade Debian 11 na 12: collation version mismatch u PostgreSQL
« Odpověď #9 kdy: 29. 06. 2023, 09:00:54 »
...
Repozitarem je mysleno standardni repo debianu a repo apt.postgresql.org.
To postgresql 15 tam bylo nainstalovano jeste na debian 11 nekolik mesicu pred upgradem na debian 12.
Aha :), no tak tím se to celé vysvětluje. Změnila se verze libc6... a databázový prostor se znovu neinicializoval. To by se Vám s distribučním Postgresem zřejmě nestalo. Tam se takové věci pořeší během upgradu distribučních balíků.
Tak snad jste měl dobrý důvod cpát do systému Postgresql z upstreamu. Jako proč ne, ale musíte pak vědět co děláte...

CPU

  • *****
  • 870
    • Zobrazit profil
    • E-mail
Re:Upgrade Debian 11 na 12: collation version mismatch u PostgreSQL
« Odpověď #10 kdy: 29. 06. 2023, 09:11:50 »
...já vám to říkal...