Re: BLOB support
От | ktm@rice.edu |
---|---|
Тема | Re: BLOB support |
Дата | |
Msg-id | 20110602131835.GQ8700@staff-mud-56-27.rice.edu обсуждение исходный текст |
Ответ на | Re: BLOB support (Pavel Stehule <pavel.stehule@gmail.com>) |
Ответы |
Re: BLOB support
|
Список | pgsql-hackers |
On Thu, Jun 02, 2011 at 02:58:52PM +0200, Pavel Stehule wrote: > 2011/6/2 Peter Eisentraut <peter_e@gmx.net>: > > On ons, 2011-06-01 at 22:00 +0200, Radosław Smogura wrote: > >> I partialy implemented following missing LOBs types. Requirement for this was > >> to give ability to create (B/C)LOB columns and add casting functionality e.g. > >> SET my_clob = 'My long text'. > >> > >> Idea is as follow: > >> 0. Blob is two state object: 1st in memory contains just bytea, serialized > >> contains Oid of large object. > >> 1. Each type has additional boolean haslobs, which is set recursivly. > >> 2. Relation has same bool haslobs (used to speed up tables without LOBs) > >> 3. When data are inserted/updated then "special" function is called and tuple > >> is modified in this way all LOBs are serialized to (old) LOB table and just > >> Oid is stored. > >> 4. When removed LOB is removed from (old) LOB table. > > > > Superficially, this looks like a reimplementation of TOAST. What > > functionality exactly do you envision that the BLOB and CLOB types would > > need to have that would warrant treating them different from, say, bytea > > and text? > > > > a streaming for bytea could be nice. A very large bytea are limited by > query size - processing long query needs too RAM, > > Pavel > +1 for a streaming interface to bytea/text. I do agree that there is no need to reinvent the TOAST architecture with another name, just improve the existing implementation. Regards, Ken
В списке pgsql-hackers по дате отправления: