Re: What is lo_insert?

Bruce Momjian <bruce@momjian.us>

From: Bruce Momjian <bruce@momjian.us>
To: Robert Haas <robertmhaas@gmail.com>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2011-01-06T02:32:40Z
Lists: pgsql-hackers

Attachments

Robert Haas wrote:
> On Wed, Jan 5, 2011 at 12:21 PM, Bruce Momjian <bruce@momjian.us> wrote:
> > The psql manual page mentions lo_insert:
> >
> > ? ? ? ? ? LASTOID
> > ? ? ? ? ? ? ? The value of the last affected OID, as returned
> > --> ? ? ? ? ? ?from an INSERT or lo_insert command. This variable
> > ? ? ? ? ? ? ? is only guaranteed to be valid until after the
> > ? ? ? ? ? ? ? result of the next SQL command has been displayed.
> >
> > Should that be lo_import? ?I don't see lo_insert used anywhere. ?And it
> > doesn't seem lo_import sets LASTOID.
> 
> I think it's supposed to be lo_import.  It sets LASTOID if you do this:
> 
> rhaas=# \lo_import '/etc/passwd'
> lo_import 16414
> rhaas=# select :LASTOID;
>  ?column?
> ----------
>     16414
> (1 row)

OK, but it does not set :LASTOID if you do this:

	SELECT lo_import('/etc/motd');

I have updated the patch to say '\lo_import' and backpatched to 9.0.X.

-- 
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + It's impossible for everything to be true. +