Re: BufferAccessStrategy for bulk insert

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

In response to

Responses

Browse pgsql-hackers by date

  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)