Re: Collation version tracking for macOS
От | Robert Haas |
---|---|
Тема | Re: Collation version tracking for macOS |
Дата | |
Msg-id | CA+TgmoaEVh3-WqPXfiABZ=F3PBpFK1rsSEALPSCaPQc9PDM2Vg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Collation version tracking for macOS (Jeff Davis <pgsql@j-davis.com>) |
Список | pgsql-hackers |
On Tue, Feb 13, 2024 at 1:55 AM Jeff Davis <pgsql@j-davis.com> wrote: > Postgres can and does latch on to the version of ICU it was compiled > against. It's a normal shared library dependency. > > The problem is that databases -- and the file structures -- outlive a > particular version of Postgres. So if Postgres 16 is compiled against > ICU X and Postgres 17 is compiled against ICU Y, how do you upgrade > from 16 to 17? Postgres 17 will try to access the old file structures > using ICU Y, and they'll be corrupt. > > What we want is the file structures that depend on ICU X to continue to > find ICU X even after you upgrade to Postgres 17, yet allow new > structures to be created using ICU Y. In other words, "multi-lib", > meaning that the same Postgres binary is linking to multiple versions > of ICU and the different versions for different structures. That would > allow users to recreate one index at a time to use ICU Y, until nothing > depends on ICU X any longer. Ah, I see. At least, I think I do. I think some of this material could be very usefully included into the first section of the doc you're trying to write. What you say here makes it a lot easier to grasp the motivation and use case for this code, at least for me. -- Robert Haas EDB: http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: