Re: Regarding GIN Fast Update Technique
От | Amit Langote |
---|---|
Тема | Re: Regarding GIN Fast Update Technique |
Дата | |
Msg-id | CA+HiwqGdo-=pCVHTHUL8KS4P_99renY_s-60v7-x7Fia0Tex9g@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Regarding GIN Fast Update Technique (Andres Freund <andres@2ndquadrant.com>) |
Список | pgsql-hackers |
On Fri, Jun 7, 2013 at 11:36 PM, Andres Freund <andres@2ndquadrant.com> wrote: > On 2013-06-07 23:28:56 +0900, Amit Langote wrote: >> On Fri, Jun 7, 2013 at 11:15 PM, Robert Haas <robertmhaas@gmail.com> wrote: >> > On Wed, Jun 5, 2013 at 10:06 PM, Amit Langote <amitlangote09@gmail.com> wrote: >> >> At what point do the entries in the pending list are moved to the main >> >> GIN data structure? >> >> From documentation, I read that overflowing work_mem and vacuum are >> >> two such causes; what about when the concerned backend is to exit and >> >> autovacuum has not yet kicked in? >> > >> > I don't think there's any special handling for that case, nor do I >> > think any is needed. >> > >> >> Okay, aside from that case, what else would move those to the main >> structure? They (the entries in the unsorted pending list) are in the >> local memory (work_mem?) of the backend, right? > > No, it's in the normal heap, pointed to by the metapage. Storing it in > local memory would mean we would have to flush it out before commit. > > That part of gin is actually quite readable code, so I suggest looking > there. Start with ginfast.c:ginHeapTupleFastInsert(). > Thanks. -- Amit Langote
В списке pgsql-hackers по дате отправления: