Thread: location of Large Object

location of Large Object

From
Richard Emberson
Date:
I would like to have all of the LargeObjects stored in a sub-directory
which I
could then make into a symbolic link.

For example, have all of the LargeObjects stored in:

    ..../data/.../lo/

I plan to have lots of large LargeObject (most of the data) and I'd like

to
have a means of controling thier storage (backup, adding more disks,
etc.).
Does such an option exist? If yes, then how? and if no, would I have to
look
at the contrib/lo/ code as the place to start?

BTW, it kind of make sense to have all the LargeObjects in their own
sub-directory anyway.

Thanks

Richard


Re: location of Large Object

From
Doug McNaught
Date:
Richard Emberson <emberson@phc.net> writes:

> I would like to have all of the LargeObjects stored in a sub-directory
> which I
> could then make into a symbolic link.
>
> For example, have all of the LargeObjects stored in:
>
>     ..../data/.../lo/
>
> I plan to have lots of large LargeObject (most of the data) and I'd like
>
> to have a means of controling thier storage (backup, adding more
> disks, etc.).  Does such an option exist? If yes, then how? and if
> no, would I have to look at the contrib/lo/ code as the place to
> start?

As I understand it, large objects are stored in a regular table, which
has its own file or files in the database directory.  You'd have to
manage these "by hand"--create a symlink for each file making up that
table, pointing to the real file on another disk.  Kind of a hassle
and definitely error-prone.

Large objects are a native part of PG--the stuff in contrib/ is just
extra utilities.

In order to get what you want in any kind of clean way would require
source changes.  There is support for "tablespaces/locations" in the
works, possibly for 7.3, that may help with this kind of thing in
future.

-Doug
--
Doug McNaught       Wireboard Industries      http://www.wireboard.com/

      Custom software development, systems and network consulting.
      Java PostgreSQL Enhydra Python Zope Perl Apache Linux BSD...