Re: [BUGS] bug in postgresql-v6.4 on FreeBSD - Mailing list pgsql-hackers

From Tatsuo Ishii
Subject Re: [BUGS] bug in postgresql-v6.4 on FreeBSD
Date
Msg-id 199811120729.QAA22041@srapc451.sra.co.jp
Whole thread Raw
List pgsql-hackers
>here is a bug which is reproducible on FreeBSD-2.2.6
>as well as on FreeBSD-2.2.7:
>
>
>nadia:mergl> echo -n "testing large objects using blob_read" >/tmp/gaga
>nadia:mergl> createdb pgtest
>nadia:mergl> psql pgtest
>...
>pgtest=> CREATE TABLE lobject ( id int4, loid oid );
>CREATE
>pgtest=> INSERT INTO lobject (id, loid) VALUES (1, lo_import('/tmp/gaga'));
>pqReadData() -- backend closed the channel unexpectedly.
>        This probably means the backend terminated abnormally before or while processing the request.
>We have lost the connection to the backend, so further processing is impossible.  Terminating.

Reproduced here too. Please try included patches...

Tatsuo Ishii
t-ishii@sra.co.jp
---------------------------------------------------------------------------
*** postgresql-v6.4/src/backend/storage/large_object/inv_api.c~    Thu Nov  5 17:48:26 1998
--- postgresql-v6.4/src/backend/storage/large_object/inv_api.c    Thu Nov 12 15:52:59 1998
***************
*** 549,556 ****                 tuplen = inv_wrnew(obj_desc, buf, nbytes - nwritten);             else
tuplen= inv_wrold(obj_desc, buf, nbytes - nwritten, tuple, buffer);         }
 
!         ReleaseBuffer(buffer);          /* move pointers past the amount we just wrote */         buf += tuplen;
--- 549,557 ----                 tuplen = inv_wrnew(obj_desc, buf, nbytes - nwritten);             else
tuplen= inv_wrold(obj_desc, buf, nbytes - nwritten, tuple, buffer);
 
+             ReleaseBuffer(buffer);         }
!           /* move pointers past the amount we just wrote */         buf += tuplen;


pgsql-hackers by date:

Previous
From: Dmitry Samersoff
Date:
Subject: Re:
Next
From: Sferacarta Software
Date:
Subject: Re: [HACKERS] A problem with the constraint system.