Re: Question about todo item

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: Question about todo item
Дата
Msg-id 200108050334.f753YDN09213@candle.pha.pa.us
обсуждение исходный текст
Ответ на Re: Question about todo item  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: Question about todo item  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > I keep bugging Jan about it, since pre-7.1 and no one has come up with
> > an idea.
> 
> Well, if you want an idea:
> 
>     BEGIN;
> 
>     SELECT open_toast_object(toastable_column) FROM tab WHERE ...;
> 
>     -- app checks that it got exactly one result back
> 
>     -- app lo_reads and/or lo_writes using ID returned by SELECT
> 
>     END;
> 
> Implementation is left as an exercise for the reader ;-).
> 
> Offhand this seems like it would be doable for a column-value that
> was actually moved out-of-line by TOAST, since the open_toast_object
> function could see and return the TOAST pointer, and then the read/
> write operations just hack on rows in pg_largeobject.  The hard part

I am confused how pg_largeobject is involved?

> is how to provide equivalent functionality (transparent to the client
> of course) when the particular value you select has *not* been moved
> out-of-line.  Ideas anyone?

Don't forget compression of TOAST columns.  How do you fseek/read/write
in there?

--  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 по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Question about todo item
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Question about todo item