Re: 64-bit API for large object - Mailing list pgsql-hackers

From Tom Lane
Subject Re: 64-bit API for large object
Date
Msg-id 24983.1346208492@sss.pgh.pa.us
Whole thread Raw
In response to Re: 64-bit API for large object  (Tatsuo Ishii <ishii@postgresql.org>)
Responses Re: 64-bit API for large object
List pgsql-hackers
Tatsuo Ishii <ishii@postgresql.org> writes:
> Correct me if I am wrong.
> After expanding large object API to 64-bit, the max size of a large
> object will be 8TB(assuming 8KB default BLKSZ).

> large object max size = pageno(int32) * LOBLKSIZE
>                           = (2^32-1) * (BLCKSZ / 4)
>                       = (2^32-1) * (8192/4)
>                       = 8TB

> I just want to confirm my calculation is correct.

pg_largeobject.pageno is a signed int, so I don't think we can let it go
past 2^31-1, so half that.

We could buy back the other bit if we redefined the column as oid
instead of int4 (to make it unsigned), but I think that would create
fairly considerable risk of confusion between the loid and pageno
columns (loid already being oid).  I'd just as soon not go there,
at least not till we start seeing actual field complaints about
4TB being paltry ;-)
        regards, tom lane



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: "default deny" for roles
Next
From: Tatsuo Ishii
Date:
Subject: Re: 64-bit API for large object