Albert Langer wrote:
[Phillip] http://dev.zope.org/Wikis/DevSite/Proposals/ORMappingDB
Comments encouraged!
[Albert] I've added some there.
Jim highlighted a project Risk there:
"Updates to RDBMS data outside of the OR mapping could cause cached data to be inconsistent."
I agree! In fact, Jim and others here at DC have been suggesting this idea for a long time now, but I've always resisted because of this issue. But now I see two workable approaches to solving the problem: 1) Create an invalidation protocol where other applications are required to update a special table every time they make changes to the database. Zope checks this table at the beginning of each transaction. Databases that have strong support for triggers would be able to do this at the database level. 2) Some kinds of objects will stay in memory only for the duration of a transaction. PJE hinted at this and I like it. Some people may decide that *all* relational objects should behave this way, in which case the decreased performance would still be equal to or slightly better than competing projects AFAICT (since this proposal has the advantage of some of the logic being implemented in C.) Thanks for your comments in the wiki. After talking with others here at DC, it's clear I should have provided a description of the possible solutions for some of the major issues. We're all still learning how the process is supposed to work. The next step in the process is to get it reviewed, after which we can turn this into a project. Your comments will become a part of the project. Shane