Re: Storing images as BYTEA or large objects - Mailing list pgsql-general

From Tom Lane
Subject Re: Storing images as BYTEA or large objects
Date
Msg-id 1543.1202877296@sss.pgh.pa.us
Whole thread Raw
In response to Re: Storing images as BYTEA or large objects  ("Adam Rich" <adam.r@sbcglobal.net>)
List pgsql-general
"Adam Rich" <adam.r@sbcglobal.net> writes:
>>> I have two options for storing this data: As BYTEA or as large objects.

> Is it true that if you update a row containing a large BYTEA value, (even if
> you're not updating the BYTEA field itself, just another field), it requires
> the entire BYTEA value to be copied to a new row (because of MVCC) ?  Or is
> this not true because of TOAST?

It is not true.  As long as you don't change the toasted value, it
contributes nothing much to the cost of updating the row.  All that
has to be copied is a 20-byte pointer structure.

However, if you *do* change the toasted value, it is always updated as a
unit.  So if you have use for writing into portions of a large value,
large objects are what you want.

            regards, tom lane

pgsql-general by date:

Previous
From: "Dean Gibson (DB Administrator)"
Date:
Subject: Re: SELECT CAST(123 AS char) -> 1
Next
From: Ken Johanson
Date:
Subject: Re: SELECT CAST(123 AS char) -> 1