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
>convienced.
>
>
>
>
>
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