Re: Large objects oids

From: David Wall <d(dot)wall(at)computer(dot)org>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: Large objects oids
Date: 2008-06-10 22:50:04
Message-ID: 484F051C.807@computer.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general


Tom Lane wrote:
> David Wall <d(dot)wall(at)computer(dot)org> writes:
>
>> Since large objects use OIDs, does PG 8.3 have a limit of 4 billion
>> large objects across all of my various tables
>>
>
> Yup, and in practice you'd better have a lot less than that or assigning
> a new OID might take a long time.
>

What's a rough estimate of "a lot less"? Are we talking 2 billion, 3
billion, 1 billion?

>> (actually, I presume OIDs
>> are used elsewhere besides just large objects)?
>>
>
> They are, but this isn't relevant to large objects. The uniqueness
> requirement is only per-catalog.
>
Isn't there just one catalog per postmaster instance (pg_catalog)? The
issue we have is that one postmaster runs a large number of databases
(let's say 100 for easy calculations), so even with the max 4 billion
potential OIDs, that would drop each DB to 40 million each.

Part of this is just architectural to us. We do heavy
encryption/compression of data (in particular digitally signed XML text)
and use large objects to store these, but we may need to change these to
use bytea since they wouldn't use up OIDs and the actual data size tends
not to be too large (perhaps 10KB compressed and encrypted binary data)
and can be done in a block. All that character escaping of binary data,
though, makes the JDBC-to-Postmaster interface a tad bit ugly, though.

>
>> Is there any plan on allowing large objects to support more than 2GB?
>>
>
> No, it's not on the radar screen really.
>

Too bad, but again, we can always work around it, even if means a layer
that bundles large objects sort of like large objects bundle bytea. We
prefer not to store it outside the database as the large files can get
out of sync from the database (ACID properties) and of course need to be
backed up separately from the database backups and WAL copying for
replication.

David

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2008-06-10 23:17:37 Re: Large objects oids
Previous Message Dave Page 2008-06-10 19:38:57 Re: [ANNOUNCE] PostgreSQL Software Catalogue