Dennis Bjorklund kirjutas P, 26.10.2003 kell 07:30: > On Sat, 25 Oct 2003, Joe Conway wrote: > > > That will modify the bytea column so that it is stored uncompressed in > > the TOAST table. > > > > Now, simply use substr() to grab any random chunk: > > SELECT substr(foo_bytea, 20000, 100) from foo where foo_id = 42; > > This would imply that every little read would have to do a scan on a table > to find the row and then to perform the substr. An open command can > be optimized a lot more, for example to cache entries that have been > opened so that it's fast to read the next 1kb or whatever you want. > > Also, the above does not solve writes at all which can also be made > transaction safe and fast with a better api where you can update a part > of a field.
I brought it up once and Tom answered that TOAST tables are not transaction aware, so you can't update just some parts of toasted entities - you must always write the whole fields. So this will not be just an api change. > The above is not really a replacement of the current lo-objects. True. ------------- Hannu ---------------------------(end of broadcast)--------------------------- TIP 9: the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match