[Objectbridge-developers] Querying databases (including local transactions changes)
Brought to you by:
thma
From: Geir O. G. <gr...@on...> - 2001-08-10 07:45:54
|
Hello all! I really haven't started using ObjectBridge yet, but I have some experience already using TopLink and Castor JDO. I've been able to successfully use TopLink in the project doing. Unfortunately TopLink is extremely expensive and the licensing is not really very flexible for the use I'm interested in. Secondly being able to peek at the source code whenever I'm stuck is _extremely_ useful to say the least. So, I tried switching to Castor JDO, which I have the impression is quite a nice framework. From what I've seen so far - it is. Unfortunately my project rely heavily on querying the object model during transactions (before commiting), so the query results must be conformed with the local transaction changes somehow. TopLink has a feature called conformInUnitOfWork, which lets you do this. There were some missing parts, but I where able to tweak everything to make this work. TopLink doesn't actually modify the database until commit at all (except for sequence counters that is). So TopLink was up to the task. Then I tried Castor which actually modifies the database whenever objects are created (inserts a row with the default values), and on commit (of course), but not when they are modified. Castor does not, like TopLink, have support for conforming query results in-memory. It does also not have support for something like a savepoint where the changes up till the current point in the transaction is actually stored in the database without the transaction being commited. This would allow the query results to be conformed automatically by the database. I guess savepoint would also be the most efficient way of supporting such a feature - at least if there were support to actually only store modifications that are relevant to the query you've about to execute. In TopLink this is often not very efficient, since it is very hard upfront knowing how to store the changes to efficiently sync the database result with the inmemory-result. Does ObjectBridge have support for conforming queries either in-memory or in the database via savepoints? All the best, Geir O. |