Vadim Gritsenko wrote:
Edgar Poce wrote:
when I decided to write the jdbc pm proposed in jcr-91 I wanted:
1 - a mature, transactional and scalable persistence storage
2 - use rdbms administrative tools, like scheduled backups, etc.
3 - rdbms referential integrity
4 - avoid redundancy. PMs store the NodeReferences twice.
5 - a storage that allows to modify the data easily, just in case.
I need at least 1, 2, and clustering on top of that... None of existing
PMs will work in cluster environment (OJB and Hibernate do not count).
Please note that clustering Jackrabbit is not just about the persistence
manager. It also involves many other areas that we need to take care of.
See: http://issues.apache.org/jira/browse/JCR-169 for a starting point
on discussions about this topic.
Why wait release? :-) Isn't code in contrib meant to be grounds for
experimental code? :-) Let's bring it up before that - SimpleDB isn't
usable as well:
* Synchronized to death
* Stored BLOBs locally
Feel free to provide patches to enhance concurrency. Some enhancements
that crossed my mind are:
- use a separate read-only connection for load() and exists() operations
- use a pool of prepared statements for load() and exists()
With those changes we can then loosen some of the synchronization.
BLOBs are stored locally because many DBs are known for their bad
performance when it comes to handling streams. So, speaking of
enhancements, introducing a configuration choice for BLOB handling is
probably another one.
regards
marcel