Thread: Large Objects Across a Network

Large Objects Across a Network

From
Geoff Russell
Date:
Hi all,

I've been experimenting with large objects - I don't need Gb, but
(usually) around 10k to 30k per object. It seems that the files in the
lo_import/lo_export calls have to be on the same machine as the backend
and furthermore that they can't contain symbolic links.

Am I right so far?

If so, then how does a person on a second machine get a large object.

e.g., I'm working on machine MYHOST, and the backend is on OTHERHOST.

    $ export PGHOST=OTHERHOST
    $ psql DB
      db=# select lo_export(T.X,'/tmp/X') from T where ...

will give you a file on OTHERHOST so I need to make sure MYHOST can
see the file.

Is there a way of having a network client use large objects without requiring
NFS or similar to share disks?

Cheers,
Geoff Russell

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
6 Fifth Ave           +618-8332-5069 (Home)          |
St Morris SA 5068     +618-8207-2029 (Work)          | geoff@austrics.com.au
Adelaide, AUSTRALIA   +618-8364-1543 (Fax-Home)      |


Re: Large Objects Across a Network

From
Tom Lane
Date:
Geoff Russell <geoff@austrics.com.au> writes:
> If so, then how does a person on a second machine get a large object.

See the lo_open/lo_read/etc functions offered by libpq (there are
comparable functions in most of our other interface libraries, too).

            regards, tom lane