Re: Logical replication 'invalid memory alloc request size 1585837200' after upgrading to 17.5
От | vignesh C |
---|---|
Тема | Re: Logical replication 'invalid memory alloc request size 1585837200' after upgrading to 17.5 |
Дата | |
Msg-id | CALDaNm1-RXLA_6y_o1=j5Borz9kGapyimN=6jDbx1nDCmQzjGQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Logical replication 'invalid memory alloc request size 1585837200' after upgrading to 17.5 (Amit Kapila <amit.kapila16@gmail.com>) |
Список | pgsql-bugs |
On Fri, 30 May 2025 at 10:12, Amit Kapila <amit.kapila16@gmail.com> wrote: > > On Fri, May 30, 2025 at 9:31 AM vignesh C <vignesh21@gmail.com> wrote: > > > > On Thu, 29 May 2025 at 22:57, Masahiko Sawada <sawada.mshk@gmail.com> wrote: > > > > > > > I agree that chances are much lower than current if txn->invalidations > > > > doesn't contain invalidations from other transactions, but it is not > > > > clear what exactly you are trying to advocate by it. Are you trying to > > > > advocate that we should maintain a member similar to txn->invalidation > > > > (say txn->distributed_invals) instead of a queue? > > > > > > Yes, because I guess it's much simpler. I think it would not be a good > > > idea to introduce a new concept of accounting the memory usage of the > > > distributed inval messages too and serializing them, at least on back > > > branches. I think that In case where the txn->distriubted_inval is > > > about to overflow (not has to be 1GB) we can invalidate all caches > > > instread. > > > > I agree that it would be simpler, and to avoid invalid memory > allocation requests even for rare cases, we can have the backup logic > to invalidate all caches. > > > To identify overflow scenarios, I’m considering the following options: > > a) Introduce a new txn_flags value, such as RBTXN_INVAL_ALL_CACHE, to > > explicitly mark transactions that require full cache invalidation. > > b) Add a dedicated parameter to indicate an overflow scenario. > > c) setting the newly added nentries_distr to -1, to indicate an > > overflow scenario. > > > > Do you have any preference or thoughts on which of these approaches > > would be cleaner? > > > > I would prefer (a) as that is an explicit way to indicate that we need > to invalidate all caches. But let us see if Sawada-san has something > else in mind. The attached v6 version patch has the changes for the same. Thoughts? Regards, Vignesh
Вложения
В списке pgsql-bugs по дате отправления: