Hi Kamen, 2006/2/9, Kamen TOMOV <ktomov@web.de>:
Yeah, I know. This flexibility is great. But it would be even better if changes of the schema (store-objects) go into the transaction log as well. This way the transaction log mechanism would continue to work. What do you think about that?
True - But the first thing that'd need to go into the transaction log would be the code changes. Especially when a transaction function is changed, the semantics of the operation changes and - if no snapshotting is used - this change needs to be present in the transaction log file in order to be able to successfully restore. We have been discussing this for quite a long time, but as our production systems use snapshots, we presently snapshot before we do code updates, so we don't see the lack of code change logging being a problem. Logging schema changes is in fact a higher order function. The store-object-subsystem would have to have a set of transactions that perform the schema changes. The general case, at least in my opinion, is code change logging. In the end, it would make sense to put all code into the repository and directly edit in memory instead of using external files. This is kind of the long-term goal, but we have not made much progress in that direction, sadly. Cheers, Hans