Re: tuptoaster.c must *not* use SnapshotAny
От | Bruce Momjian |
---|---|
Тема | Re: tuptoaster.c must *not* use SnapshotAny |
Дата | |
Msg-id | 200201180420.g0I4K1109918@candle.pha.pa.us обсуждение исходный текст |
Ответ на | Re: tuptoaster.c must *not* use SnapshotAny (Hiroshi Inoue <Inoue@tpf.co.jp>) |
Ответы |
Re: tuptoaster.c must *not* use SnapshotAny
|
Список | pgsql-hackers |
> Tom Lane wrote: > > > > Hiroshi Inoue <Inoue@tpf.co.jp> writes: > > > > > For example is it possible to update a toast > > > chunk partially using SnapshotToast ? > > > > As things stand (with either SnapshotToast or the old SnapshotAny way) > > it is never possible to update an individual toast value, either > > partially or wholly. All you can do is lay down a new toast value (with > > a new identifying OID) and then delete the old one. > > > > But I'm not sure that this is wrong, or fixable. Trying to update part > > of a toasted value is very much like wanting to update part of an > > existing row in-place, which we cannot possibly do. > > Bytea seems to be considered as a candidate for BLOB > though I think the entirely new type is preferable. > It seems impossible to implement a functionality like > inv_write using bytea which the current large object > stuff has. Agreed. I think that was the reason we kept TOAST and large objects, because large objects were designed for random read-write. If we can get large objects to auto-delete, probably with pg_depend, we can then use them seamlessly with BLOB I/O routines. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania19026
В списке pgsql-hackers по дате отправления: