pg.ddx.io  pgsql-interfaces@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Charles Randle <caspanis@cybervale.com>
Cc: pgsql-interfaces@postgreSQL.org
Subject: Re: [INTERFACES] Problems with postgres V6.5.3 large objects
Date: Mon, 06 Dec 1999 01:08:33 -0500
Message-ID: <15297.944460513@sss.pgh.pa.us> (raw)
In-Reply-To: <384B4D4B.BF6EE9D6@cybervale.com>

Charles Randle <caspanis@cybervale.com> writes:
> In terms of access to the large object, my class maintains an array of
> objects which are currently open (Oid,name,file descriptor etc ..).
> Whenever access is needed to any large object an accessor method
> simply executes 'lo_read'/lo_write' or lo_seek as is desired . If the
> object is not on the active list then another method opens the object
> (using lo_open ).As is to be expected the destructor of the class
> closes all open objects .

Sounds reasonable as far as it goes.  My best guess at this point is a
client-side memory stomp that is clobbering libpq's record of which
function OID to call for each available LO operation.  See
interfaces/libpq/fe-lobj.c, particularly lo_initialize() and its
callers, and then try tracing through the client with a debugger
to see where the conn->lobjfuncs struct gets clobbered.

Good luck!

			regards, tom lane



view thread (6+ messages)  latest in thread

Message-ID: <15297.944460513@sss.pgh.pa.us>
Permalink:  ../15297.944460513@sss.pgh.pa.us/
Also on:    postgresql.org/message-id/15297.944460513@sss.pgh.pa.us

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-interfaces@postgresql.org
  Cc: tgl@sss.pgh.pa.us, caspanis@cybervale.com
  Subject: Re: [INTERFACES] Problems with postgres V6.5.3 large objects
  In-Reply-To: <15297.944460513@sss.pgh.pa.us>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox