Speedo TODO List

  1. Horizontal and Vertical mapping for the inheritance
  2. JDO 2: use standard mapping
  3. JDO 2: Cache interface to implement
  4. JDO 2: queries
  5. JDO 2: uses cases
  6. JDO 2: persitant interfaces
  7. JDO 2: indexes generation
  8. Avoid extent if all classes instances are loaded.
  9. Add foreign key constraint declaration and index declaration in Speedo and JORM.
  10. Bug to fix: The persistency by attachement must be checked at commit time too and can be able to forget attached instances which are no more attached to a persistent instance. That implies to maintain in the working a list of really persistent class and a list of persistent class by attadchement. At the commit time Speedo must checks if among the persistent class by attachement, some instances are no more attached to a real persistent class.
  11. Provide particular implementation of Collection and Set in order to avoid the loading in case of very large collection. These implementations would implement the collection/set methods with SQL order (add ==> INSERT, remove ==> DELETE, contains ==> SELECT, iterator ==> query, ...). The implementation idea is to consider collection elements like persistent objects. The identifier would be composed of the collection identifier and the element identifier (PName or primitive value).
  12. Attribute a weight to the compiled query. This weight would be based on the time to compile the query. Indeed an heavy query should be kept in cache in place of light weight query.
  13. Distributed concurrency manager (use existing Perseus component)
  14. Distributed cache
  15. When prefetching an extent of an inheritance graph, with auto references, avoid to load these auto references form the database if already present in the prefetch buffer (but not yet in the map [PName -> RowId]).
  16. Administration via JMX using Fractal
  17. Allow to have 2 java fields with the same name into 2 classes belonging to the same inheritance graph (see JORM bug).
  18. Versionning with version number: 2 counters attach/detach. Detach: +1. Attach: if detach db > detach copy, reject, else +1. Local Update: if detach==attach nothing, else attach++ && detach++.
  19. Hide persistent object distribution (in several database)
  20. Speedo over file system
  21. Separate the enhancer in two parts: class weaving and mapping code generation

Back to the Speedo documentation