Re: [PORTS] Port Bug Report: lo_import fails - SIGBUS error in inv_newtuple - Mailing list pgsql-ports
From | Bruce Momjian |
---|---|
Subject | Re: [PORTS] Port Bug Report: lo_import fails - SIGBUS error in inv_newtuple |
Date | |
Msg-id | 199903162103.QAA19988@candle.pha.pa.us Whole thread Raw |
In response to | Port Bug Report: lo_import fails - SIGBUS error in inv_newtuple (Unprivileged user <nobody>) |
List | pgsql-ports |
This is already fixed in the upcoming 6.5 beta, to start soon. > > ============================================================================ > POSTGRESQL BUG REPORT TEMPLATE > ============================================================================ > > > Your name : Lysander David > Your email address : ldavid@verisign.com > > Category : runtime: back-end > Severity : critical > > Summary: lo_import fails - SIGBUS error in inv_newtuple > > System Configuration > -------------------- > Operating System : Solaris > > PostgreSQL version : 6.4.2 > > Compiler used : gcc 2.7.1 > > Hardware: > --------- > Sun Ultra 5, 256M RAM > > Versions of other tools: > ------------------------ > gmake - 3.74 > flex - 2.5.4 > > -------------------------------------------------------------------------- > > Problem Description: > -------------------- > When attempting to use lo_import to insert a > large object, it fails. > > -------------------------------------------------------------------------- > > Test Case: > ---------- > 1) create database test > createdb test > > 2) create a file to create the table named create.sql > with the contents > CREATE TABLE test ( > id int4 PRIMARY KEY, > largeObject oid > ); > 3) execute create.sql > psql -d test -f create.sql > > 4) create a file to insert a row named insert.sql > with these contents > INSERT INTO test ( id, largeObject) > VALUES ( 1, lo_import (<some local file>)); > > 5) execute insert.sql > psql -d test -f insert.sql > > 6) it will fail with output like this : > 32 postgres@ldavid-sun.verisign.com:/home/postgres/devel/build/BuildReq/Query% psql -d test -f insert.sql > postmaster: ServerLoop: handling reading 5 > postmaster: ServerLoop: handling reading 5 > postmaster: ServerLoop: handling writing 5 > postmaster: BackendStartup: environ dump: > ----------------------------------------- > PWD=/home/postgres/devel/build/BuildReq/Query > TERM=dumb > TERMCAP= > COLUMNS=80 > EMACS=t > DISPLAY=ldavid-sun:0.0 > POSTGRES_HOME=/net/ldavid-sun/disk1/opt/postgres > LC_CTYPE=C > LC_COLLATE=C > PGDATA=/net/ldavid-sun/disk1/opt/postgres/data > PGLIB=/net/ldavid-sun/disk1/opt/postgres/lib > PURIFYOPTIONS=-follow-child-processes=yes > FE_PC_EN_INSTALL=/ecas/public/fe-pc-en/ > FE_PC_CC_INSTALL=/ecas/public/fe-pc-cc/ > FE_SC_EN_INSTALL=/ecas/public/fe-sc-en/ > FE_SC_CC_INSTALL=/ecas/public/fe-sc-cc/ > FE_ONSITE_CRS_INSTALL=/ecas/public/fe-onsite-crs/ > FE_ONSITE_CC_INSTALL=/ecas/public/fe-onsite-cc/ > FE_ONSITE_EN_INSTALL=/ecas/public/fe-onsite-en/ > FE_EN_INSTALL=/ecas/public/fe-en/ > FE_OP_INSTALL=/ecas/public/fe-op/ > BE_INSTALL=/ecas/public/be/ > PORTAL=/opt/pin/5.0/ > ONE_OP_ALLOWED=1 > ECAS_ARGS_DEBUG=1 > ECAS_LOG_LEVEL=ECAS_LOG_DEBUG > QMDEBUG=1 > ECAS_CUSTOM_CFG=/net/ldavid-sun/disk1/tcheung/build/make/custom/SunOS55.cfg > AEAPPROVE=1 > LRACERT=1 > ECASINSTALL=/ecas/public/be/ > BEFORE_PATH=/net/ldavid-sun/disk1/opt/tcl/bin:/home/build/tools/Cvs/bin:/net/david-sun/disk1/opt/gnu/bin:/usr/local/bin:/opt/SUNWspro/bin:/usr/ccs/bin:/opt/SUNWspro/bin:/usr/dt/bin:/usr/openwin/bin:/bin:/usr/bin:/usr/ucb:/usr/contrib/bin:/usr/ccs/bin:/u/tools/bin:/home/pure/purify-4.0-solaris2:/usr/sbin:/usr/lib/lp:~/bin:.:/home/ddts/bin:/home/oracle/orahome/bin:/disk1/opt/tex/bin/sparc-solaris2.5.1:~/lbin2:/usr/openwin/bin:/opt/lesstif/bin:/u/tools/bin > ORAHOME=/home/oracle/orahome > ORACLE_DOC=/home/oracle/orahome/odoc > ORACLE_SID=sid1 > ORACLE_NLS=/home/oracle/orahome/ocommon/nls/admin/data > ORACLE_TERM=xsun > ORACLE_HOME=/home/oracle/orahome > TK_LIBRARY=/net/ldavid-sun/disk1/opt/tcl/lib > TCL_LIBRARY=/net/ldavid-sun/disk1/opt/tcl/lib > RCSBIN=/opt/gnu/bin > CVSROOT=/cvs > LD_LIBRARY_PATH=/lib:/usr/lib:/lib/dt/lib:/opt/SUNWspro/lib:/opt/lesstif/lib:/home/oracle/orahome/lib:/net/ldavid-sun/disk1/opt/postgres/bin > MANPATH=/usr/man:/u/tools/man:/opt/SUNWspro/man:/net/ldavid-sun/disk1/opt/gnu/man:/net/ldavid-sun/disk1/opt/tcl/man:/net/ldavid-sun/disk1/opt/postgres/man > OPENWINHOME=/usr/openwin > PATH=/net/ldavid-sun/disk1/opt/gnu/bin:/ecas/public/be//bin:/net/ldavid-sun/disk1/opt/tcl/bin:/home/build/tools/Cvs/bin:/net/david-sun/disk1/opt/gnu/bin:/usr/local/bin:/opt/SUNWspro/bin:/usr/ccs/bin:/opt/SUNWspro/bin:/usr/dt/bin:/usr/openwin/bin:/bin:/usr/bin:/usr/ucb:/usr/contrib/bin:/usr/ccs/bin:/u/tools/bin:/home/pure/purify-4.0-solaris2:/usr/sbin:/usr/lib/lp:~/bin:.:/home/ddts/bin:/home/oracle/orahome/bin:/disk1/opt/tex/bin/sparc-solaris2.5.1:~/lbin2:/usr/openwin/bin:/opt/lesstif/bin:/u/tools/bin:/net/ldavid-sun/disk1/opt/postgres/bin > LOGNAME=postgres > USER=postgres > SHELL=/bin/csh > HOME=/home/postgres > POSTPORT=5432 > POSTID=2147483643 > PG_USER=postgres > IPC_KEY=5432100 > ----------------------------------------- > postmaster child[2594]: starting with (/net/ldavid-sun/disk1/opt/postgres/bin/postgres, -p, -d3, -P5, -v131072, test, ) > FindExec: found "/net/ldavid-sun/disk1/opt/postgres/bin/postgres" using argv[0] > debug info: > User = postgres > RemoteHost = localhost > RemotePort = 0 > DatabaseName = test > Verbose = 3 > Noversion = f > timings = f > dates = Normal > bufsize = 64 > sortmem = 512 > query echo = f > InitPostgres > INSERT INTO test ( id, largeObject ) > VALUES ( 1, lo_import ( '/home/postgres/devel/build/BuildReq/Query/rel_note' )); > StartTransactionCommand > postmaster: BackendStartup: pid 2594 user postgres db test socket 5 > query: INSERT INTO test ( id, largeObject ) VALUES ( 1, lo_import ( '/home/postgres/devel/build/BuildReq/Query/rel_note')); > ProcessQuery > postmaster: reaping dead processes... > postmaster: CleanupProc: pid 2594 exited with status 138 > postmaster: CleanupProc: reinitializing shared memory and semaphores > shmem_exit(0) [#0] > binding ShmemCreate(key=52e389, size=831176) > 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. > > 7) It fails in the source due to a SIGBUS error in > inv_api.c:1067 > > attptr = ((char *) ntup) + hoff; > -> *((int32 *) attptr) = obj_desc->offset + nwrite - 1; > attptr += sizeof(int32); > > > -------------------------------------------------------------------------- > > Solution: > --------- > > > -------------------------------------------------------------------------- > > > -- Bruce Momjian | http://www.op.net/~candle maillist@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
pgsql-ports by date: