Re: [INTERFACES] Problems with postgres V6.5.3 large objects - Mailing list pgsql-interfaces

From Tom Lane
Subject Re: [INTERFACES] Problems with postgres V6.5.3 large objects
Date
Msg-id 7702.944436768@sss.pgh.pa.us
Whole thread Raw
In response to Problems with postgres V6.5.3 large objects  (Charles Randle <caspanis@cybervale.com>)
Responses Re: [INTERFACES] Problems with postgres V6.5.3 large objects  (Douglas Thomson <dougt@mugc.cc.monash.edu.au>)
List pgsql-interfaces
Charles Randle <caspanis@cybervale.com> writes:
> 1) Whenever I try to open more than one large object within my class
> (I'm using C++)  The following message appears in the postgres backend
> log-file &  the application terminates .

> ERROR:  update_fp_info: cache lookup for function 1 failed

This indicates that PQfn is being called with bad parameters (function
ID 1; there's no such function).  How are you accessing the large
objects, exactly?

> 2) I am thinking of using the libpq++ interface to access the large
> objects , However from what I've seen each instance of the class would
> create a new connection to the backend , from the same process !

Yes.  This is a horribly brain-dead design; PgLargeObject needs to be
rethought and rewritten.  Probably PgLargeObject's constructor ought to
take a reference to an existing connection object that it uses, rather
than containing a connection object of its own.  (For robustness, that
would probably mean adding some kind of reference count to the
connection objects...)

>         a) How expensive is this multiple connection option given that
> many large objects may be in use at any one time  ?

Very.  It's totally impractical if you are going to make heavy use of
large objects.

Most of the developers have not wanted to put much effort into large
objects, since where we really want to go is to eliminate tuple size
restrictions; once that happens large objects will be much less
necessary.  In the meantime, though, better code for PgLargeObject
would be a nice contribution if you are interested.
        regards, tom lane

************




pgsql-interfaces by date:

Previous
From: Charles Randle
Date:
Subject: Re: [INTERFACES] Problems with postgres V6.5.3 large objects
Next
From: Charles Randle
Date:
Subject: [INTERFACES] Problems with postgres V6.5.3 large objects