Re: Adding REPACK [concurrently]
| От | Alvaro Herrera |
|---|---|
| Тема | Re: Adding REPACK [concurrently] |
| Дата | |
| Msg-id | 202604011042.zdevjay65ws7@alvherre.pgsql обсуждение исходный текст |
| Ответ на | Re: Adding REPACK [concurrently] (Amit Kapila <amit.kapila16@gmail.com>) |
| Ответы |
Re: Adding REPACK [concurrently]
Re: Adding REPACK [concurrently] |
| Список | pgsql-hackers |
On 2026-Apr-01, Amit Kapila wrote: > BTW, is the reason to skip REPACK while building a snapshot is that it > can take a long time to finish? As I understand the issue, yes, that's precisely the problem: if you have one REPACK running, then starting a second REPACK (which requires building a new snapshot) would have to wait until the first REPACK is over. In other words, you wouldn't be able to have two repacks running concurrently. This sounds like a problematic requirement. So having snapbuild ignore REPACK is there to allow the second REPACK to work at all. But more generally, *all* users of snapbuild would be prevented from starting until REPACK is done; so if you have a very very large table that takes a long time to repack, then everything would be blocked behind it until it completes, which sounds extremely unpleasant. So, if we're unable to get this particular patch in, we would have to have a big fat warning in the docs, telling people to be careful about other load if they choose to run concurrent repack -- it could have serious consequences. But on the other hand, it's better to *have* the tool, even if it has problems, than not have it. Keep in mind that pg_repack and pg_squeeze also have all these problems/limitations (and others), and still people use them. -- Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/
В списке pgsql-hackers по дате отправления: