Subject Re: [Firebird-Architect] Feature request...
Author unordained
> Hmm. Well, I guess you must be right. Jim said the same thing. But what
> specifically makes it impossible?
>
> It seems to me that if we make the syntax very general (no automatic
> restore of back versions of any such thing), it should be possible. If
> the old versions are simply made available for reading, then what could
> be the problem?
>
> Jonathan Neve.

Do you have any particular syntax in mind? Would you want it based on transaction numbers,
timestamps ... what consistency would you want?

If Firebird allowed transactions to "stay running" forever (basically a commit-retaining with read-
only permission and the highest isolation level,) and let you re-join them later (knowing which
transaction to rejoin would be a hassle though) ... perhaps you could get into an old transaction
and see what it saw at the time -- but updates would most likely be out of the question, what with
MGA telling you someone else beat you to it. It would also prevent any garbage collection from
taking place (all back versions being kept -- FB does already support multiple back-versions at the
same time,) and backup/restore would have to not reset transaction numbers (and keep the entire
transaction inventory too.)

If querying by timestamp, don't forget that lots of things can happen within a split second.
Getting a consistent view at any given time seems to include the concept of luck, if not doing it
by transaction number.

I could have sworn that PostgreSQL had this (by timestamp) but I can't find any documentation to
support this "memory". At the time I was thinking "hey, that's not right!" ... (violation of
the "no hidden information" rule in relational theory.) My apparently fake memory involves a WHERE
clause with a timestamp not normally accessible causing rows to appear out of nowhere. If anyone
else remembers this too, and can find said documentation, you'd make my day.

Hmmm. All this talk of concurrent transactions, like looking at an open bag of munchies, just
reminded me that I have a craving: fully nested transactions ... (feature request)

-Philip