Re: Question about todo item

From: Jan Wieck <JanWieck(at)Yahoo(dot)com>
To: wieck(at)jupiter(dot)us(dot)greatbridge(dot)com
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>, Jan Wieck <JanWieck(at)Yahoo(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Question about todo item
Date: 2001-08-08 13:47:55
Message-ID: 200108081347.f78Dlth11201@jupiter.us.greatbridge.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I wrote:
> Tom Lane wrote:
> >
> > 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
> > 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?
>
> TOAST values aren't stored in pg_largeobject. And how do you
> seek to a position in a compressed and then sliced object? We
> need a way to force the object over a streaming interface
> into uncompressed toast slices first. Let me think about it
> for two days, Okay?
>
> The interface lacks imho a mode (r/w/rw/a) argument. Other
> than that I'd like this part.

The idea of making BLOB and CLOB simply toast forced special
datatypes and add streaming access functions lacks one
important requirement.

For all the default operations, the system would treat the
datums still like regular attributes. That means, that an

INSERT ... SELECT ...

copying a BLOB from one table to another (and that's correct,
BLOB's should have copy semantics) would force the entire
BLOB data into memory ... and ... then ... after ... some
... time ... run out of memory.

We don't get far without a real new datatype and special
support on the heap access level. We should for sure reuse
the toast shadow table to store the data. But that's the only
connection to toast here.

Jan

--

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#================================================== JanWieck(at)Yahoo(dot)com #

_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Ian Lance Taylor 2001-08-08 14:42:48 Re: CURRENT OF cursor without OIDs
Previous Message Tom Lane 2001-08-08 13:45:30 Re: Question about todo item