Subject Re: [Firebird-Architect] the insert into t select * from t infinite
Author Jim Starkey
Dmitry Yemanov wrote:

>"Jim Starkey" <jas@...> wrote:
>>Define a RsbUndoFilter (or whatever) to filter out records that are in
>>the undo log for the table in question. VIO's sole job is to get and
>>put data records on data pages. It shouldn't be involved at this level
>>at all. There's also no need to clutter other classes with a specific
>>filter type rsb can handle the problem.
>What is the difference (from the RSB point of view) between
>VIO::chaseRecordVersion and RsbUndoFilter? Both deal with the really stored
>data and determine what records you need to see. Sorry, I'm still not
I've thought about it some more and I'm not convinced either. If
there's a way to do it without refetching the original version, it
certainly isn't obvious, at least not to me.

I would like to point out that while handling a pathological case in
conformance with the standard is important, nothing says that it has to
be fast. In specific, I wouldn't want to see anything added to handle
the case that would do anything to slow down reasonable queries. Maybe
removing the performance constraint will inspire some creative juices.


Jim Starkey
Netfrastructure, Inc.
978 526-1376