Uhh, my bad, really stupid bug. Many thanks.

------
With best regards,
Alexander Korotkov.

On Wed, Aug 3, 2011 at 8:31 PM, Heikki Linnakangas <
heikki.linnakan...@enterprisedb.com> wrote:

> On 03.08.2011 11:18, Alexander Korotkov wrote:
>
>> I found that in previous version of patch I missed PageSetLSN
>> and PageSetTLI, but huge amount of WAL is still here. Also I found that
>> huge
>> amount of WAL appears only with -O2. With -O0 amount of WAL is ok, but
>> messages "FATAL:  xlog flush request BFF11148/809A600 is not satisfied ---
>> flushed only to 44/9C518750" appears. Seems that there is some totally
>> wrong
>> use of WAL if even optimization level does matter...
>>
>
> Try this:
>
> diff --git a/src/backend/access/gist/**gistbuild.c
> b/src/backend/access/gist/**gistbuild.c
> index 5099330..5a441e0 100644
> --- a/src/backend/access/gist/**gistbuild.c
> +++ b/src/backend/access/gist/**gistbuild.c
> @@ -478,7 +478,7 @@ bufferingbuildinsert(**GISTInsertState *state,
>                /* Write the WAL record */
>                if (RelationNeedsWAL(state->r))
>                {
> -                       gistXLogUpdate(state->r->rd_**node, buffer,
> oldoffnum, noldoffnum,
> +                       recptr = gistXLogUpdate(state->r->rd_**node,
> buffer, oldoffnum, noldoffnum,
>
>                            itup, ntup,     InvalidBuffer);
>                        PageSetLSN(page, recptr);
>                        PageSetTLI(page, ThisTimeLineID);
>
>
>
> --
>  Heikki Linnakangas
>  EnterpriseDB   http://www.enterprisedb.com
>

Reply via email to