Tom Lane wrote:
> Teodor Sigaev <[EMAIL PROTECTED]> writes:
> 
>>>Hmm, is this patch really correct?  Removing the gistadjscans() call
>>>from gistSplit seems wrong to me --- won't that miss reporting splits
>>>on leaf pages?  Or does this not matter for some reason?
>>
> 
>>gistadjscans() is moving to gistlayerinsert. gistadjscans() must be
>>called for parent of splitted page, but gistSplit doesn't know parent
>>of current page and gistlayerinsert return status of its action:
>>inserted and (may be) splitted. So we can call
>>gistadjscans(GIST_SPLIT) in gistlayerinsert when it's need.
> 
> 
> But gistSplit is recursive.  Is there no need to worry about the
> additional splits it might do internally?

Internally splits are doing before calling gistadjscans. All pages 
created by gistSplit will be inserted in the end of parent page.
GiST's indexes aren't a concurrent there for one call of gistadjscans 
will be sufficiant.





---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/users-lounge/docs/faq.html

Reply via email to