...
- While we try to maintain some independence from the JCR implementation, some code (in particular concerning low-level binary storage) is tightly bound to Modeshape, but where possible depends on the public public API extensions to org.modeshape.jcr.api.
- Long-lived sessions with lots of changes is bad.
- JCR loves hierarchy.
- Creating sessions is cheap. Saving sessions takes time.
- Nothing is persisted until the session is saved (almost.)
- Binary content is stored using the SHA-1 value as its key, meaning:
- only one copy of content is persisted to the storage layer (although the storage layer may keep multiple copies around)
- content can be stored immediately, and lazily garbage collected
Namespace prefixes must be pre-registered before they can be used
...