Re: [BUGS] bug in postgresql-v6.4 on FreeBSD

Поиск
Список
Период
Сортировка
От Tatsuo Ishii
Тема Re: [BUGS] bug in postgresql-v6.4 on FreeBSD
Дата
Msg-id 6345db4f07cd54d868eb664bfca70ca1
обсуждение исходный текст
Список pgsql-bugs
>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-bugs по дате отправления: