Roadmap/TODO
Below is a list what may be done in JalistoPlus in order to improve it. It is in no particular order. Feedback is much appreciated. If you want to discuss it or have some other idea please post to the project forum
Testing/optimizations
- Locking mechanism should be tested in pessimistic mode too (may need some rewrite) - for now only optimistic mode is tested
- Indexes are for now scanned sequentially. They are based on b-trees so they may be binary searched what would speed them up
- Some extra lower level tests would be useful - especially in btree indexes, oid table, logical page system
- Query tests fails when indexes and nolog asynchro storage is used - it's a known bug
- Query tests fails when object cache in mono mode is used - it's a known bug
New functionality in the core system:
- Automatic metadata definition for all classes according to a specified pattern - in example org/myproject/data/**/*
- Automatic metadata management in situations which occur most often (field addition and removal)
- Some additional shorthand functions for metadata update, index build etc - also when annotations are used
- createOrUpdate function which checks whether an entity is already persistent and create or update it respectively
- Application identity - that means the application sets the key in an entity (which may be business key, not an autoincremented oid)
- String based query language - something similar to JDOQL or EJBQL
- The client-server functionality is theoretically supported but it has to be redesigned in order to be useful. First of all it does not start up properly. It offers no authorization (login and password). Also querying in the client is not supported.
- like operator in query is not supported (throws exception if called)
Integration with other systems:
- Pole position database benchmark http://www.polepos.org - to see relative performance of JalistoPlus to other database systems
- Spring Modules integration https://springmodules.dev.java.net (setup using spring container, dao pattern, declarative transaction management etc)
- JDO compliance - via JPOX backend integration http://www.jpox.org