Goal
Main focus is maintenance and samples.
Backup (Export/Import)
Problem:
- no good backup solution
- only stopping magnolia and backing up db works (but no migration, ...)
Goal:
- provide a easy to use backup / restore (change of PM, ...)
- Import/Export memory usage should be minimized
Ideas:
- see Concept Backup
- simple export and zip tool (versions can't be restored)
- backup tool of jackrabbits sandbox
- special PersistanceManager
- use workspace exports/imports if possible
Issues:
- Version must be taken in account (important for EE customers)
Resources:
- concept 5 days
- implementation 5 days
Current Status:
- PoC implemented and tested using PM approach.
- stress test performed on 1.6GB repository.
- supports scheduling recurrent backup tasks.
- module implemented and released in 3.6-M1.
- Outstanding: beautify UI, Target release is 3.6-M3.
Framework
Goal:
- show nice integration of JSF and Spring (Webflow or MVC)
Issues:
- each module needs webapp configuration (web.xml, ...)
Resources:
Current Status:
- first sandbox modules/examples done
- will be focused on after 3.6 is more mature because it is more or less independent and could be done after a release
Cache
Problem:
- flushing all at once can cause performance issues
Goal:
Ideas:
- Concept Caching
- keep cached page until rendered freshly
- try to make request and caching independent (canceled requests, ..)
- Apache caching module? McMains (Texas State U) has written such a thing but we can't get it from them.
- flush cache at a certain time (set expiration date accordingly)
- spider for re-caching
Resources:
- concept: 3 days
- implementation: 10 days
Current Status:
- Basic API implemented and released in 3.6-M1
- EE Cache strategies as described in Concept Caching are being implemented. First strategy delivered with 3.6-M2. More to come in 3.6-M3.
Reduce usage of mix:versionable
Problem:
Concept: Concept mixin versionable
Resources:
- test: 3 days
- implementation: 8 days
Current Status:
- Implemented by using solution C. Released in 3.6-M1.
- Update task must be written. Target release is 3.6-M2.
Clustering / Jackrabbit 1.4
Problem:
- Magnolia doesn't handle item modified externally exceptions
- this exception rise as soon two sessions edit the same hierarchy
- no multi instance lock
Goal:
Ideas:
- test it first
- make a force write or nice exception handling
- use jcr locks
Issues:
- Item modified externally exception
- not sure if locks work correctly in clusters
Resources:
- testing: 3 days
- concept: 2 days
- implementing: 10 days
Current Status:
JR clustering has number of open issues and is not ready for productive use yet. Will be re-evaluated after 3.6 release
Transactional Activation
Problem:
- When having multiple public instances, some of them might become temporarily unavailable during activation leading into inconsistent state of public instances.
Goal:
- Ensure content can be (de)activated to all subscribers or to none to keep state of public instances in sync.
Ideas:
- Implement transactional commit on activation with author instance as Transaction coordinator.
- store temporary state using JCR versioning
- store temporary state using temp/stage workspace
Issues (with versioning approach):
- Item modified externally exception
- unable to rollback after deactivation (JCR doesn't support restoring versions of deleted nodes)
Resources:
- testing: 3 days
- concept: 2 days
- implementing: 10 days
Current Status:
EE module implemented. Released in 3.6-M1.