Jan Wieck <[EMAIL PROTECTED]> writes:
> Yeah, adding a buffer multiple times to the list of unused buffers
> ensures that it later on gets used for multiple contents simultaneously.
Hm. Looking at the patch last night, I was wondering why you had
removed all the guard logic from BufTableInsert and BufTableDelete.
Was that indeed a bad idea? In particular, the removal of this bit
from BufTableDelete
/*
* Clear the buffer's tag. This doesn't matter for the hash table,
* since the buffer is already removed from it, but it ensures that
* sequential searches through the buffer table won't think the buffer
* is still valid for its old page.
*/
buf->tag.rnode.relNode = InvalidOid;
buf->tag.rnode.tblNode = InvalidOid;
worries me quite a lot, because I *know* that was necessary before.
Have you really changed the search algorithms to the point where it's not?
regards, tom lane
---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faqs/FAQ.html