What is lo_insert?

Started by Bruce Momjianover 15 years ago3 messageshackers
Jump to latest
#1Bruce Momjian
bruce@momjian.us

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.

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

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

#2Robert Haas
robertmhaas@gmail.com
In reply to: Bruce Momjian (#1)
Re: What is lo_insert?

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)

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

#3Bruce Momjian
bruce@momjian.us
In reply to: Robert Haas (#2)
Re: What is lo_insert?

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. +

Attachments:

/rtmp/difftext/x-diffDownload+2-2