From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "Robert Haas" <robertmhaas(at)gmail(dot)com> |
Cc: | "Simon Riggs" <simon(at)2ndquadrant(dot)com>, "Postgres Hackers" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: BufferAccessStrategy for bulk insert |
Date: | 2008-11-04 21:18:59 |
Message-ID: | 27941.1225833539@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
"Robert Haas" <robertmhaas(at)gmail(dot)com> writes:
>> 2. The logic changes in RelationGetBufferForTuple seem bizarre and
>> overcomplicated. ISTM that the buffer saved by the bistate ought to
>> be about equivalent to relation->rd_targblock, ie, it's your first
>> trial location and also a place to save the located buffer on the way
>> out. I'd suggest tossing that part of the patch and starting over.
> Hmm, would that be safe in the presence of concurrent or recursive
> bulk inserts into the same relation?
As safe as it is now --- you're relying on the bistate to carry the
query-local state. Probably the best design is to just ignore
rd_targblock when a bistate is provided, and use the bistate's buffer
instead.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Kenneth Marshall | 2008-11-04 21:21:26 | Re: [PATCHES] updated hash functions for postgresql v1 |
Previous Message | Hannu Krosing | 2008-11-04 21:17:39 | Re: ARRAY vars (was Enable pl/python to return records based on multiple OUT params) |