[elephant-cvs] CVS elephant
ieslick
ieslick at common-lisp.net
Tue Feb 14 15:31:09 UTC 2006
Update of /project/elephant/cvsroot/elephant
In directory common-lisp:/tmp/cvs-serv1832
Modified Files:
TODO
Log Message:
Updated TODO list. Minor tweak in indexing.
--- /project/elephant/cvsroot/elephant/TODO 2006/02/10 01:39:12 1.11
+++ /project/elephant/cvsroot/elephant/TODO 2006/02/14 15:31:09 1.12
@@ -7,16 +7,11 @@
0.6.0 - Adding default class/slot indexing
- Finish indexing tests (Ian)
- Documentation update (Robert)
-- Add a class-indexing class option to the metaclass so we can maintain class instances
- index without any secondary indices or indexed slots (Ian)
-- Add :inverse-reader to slot options to create a named method that indexes into objects
- based on slot values. Is this a GF or defun? Do we dispatch on class name or bake it in?
0.6.1 - performance, safety and portability
Stability:
- Add clsql like support for building .so/.dylib from asdf loader on most systems
-- Port elephant to closer-to-MOP to make it easier to support additional lisps (Both)
- Cleanup multi-repository operation (ensure that conflicts between an object's
registry and *store-controller* does not leed to lockup, especially with BDB (Both)
- Think through default vs. explicit store referencing all over the APIs (Both)
@@ -28,19 +23,32 @@
in user code. (Both)
- BDB: determine how to detect deadlock conditions as an optional run-safe mode? (?)
Does BDB have timeouts enabled on select? (Ian)
+- Fix backend dependency problems (missing functions with-transaction-sql, etc)
+ caused by not having clsql loaded. Backends should not cause such failures
+ and should use asdf to load their deps when the backends are instantiated; much
+ like clsql does now
+- Remove build gensym warnings
+- Port elephant to closer-to-MOP to make it easier to support additional lisps (Both)
- (From Ben's e-mail) We are storing persistent objects incorrectly. They should be
stored only as OIDs, and we should have a separate OID->class table. This way
- change-class can be handled correctly (Ian)
+ change-class can be handled correctly (Ian) ???
Performance:
- Metering and understanding locking issues. Large transactions seem
to use a lot of locks. In general understanding how to use Sleepycat
- efficiently seems like a good thing. (Both)
+ efficiently seems like a good thing. (From Ben)
- Reclaim table storage on index drop (Ian)
- Higher performance fix for allegro unicode serialization workaround than
my current one (Ian)
+- Add dependency information into secondary index callback functions so that
+ we can more easily compute which indices need to be updated to avoid the
+ global remove/add in order to maintain consistency (Ian)
Indexing features:
+- Add a class-indexing class option to the metaclass so we can maintain class instances
+ index without any secondary indices or indexed slots (Ian)
+- Add :inverse-reader to slot options to create a named method that indexes into objects
+ based on slot values. Is this a GF or defun? Do we dispatch on class name or bake it in?
- On class change, new slots should have their initform values pushed
into the slot value as if the slot was being created the first time
(currently this doesn't happen) (Ian)
@@ -50,9 +58,6 @@
0.6.3 - Query & indexing expansion
- simple object query language (Ian - orthogonal, on main branch)
- - Add dependency information into secondary index callback functions so that
- we can more easily compute which indices need to be updated to avoid the
- global remove/add in order to maintain consistency (Ian)
- Add needed support (if any) for persistent graph structures & queries (Ian on a branch)
0.6.4 - Compliance & Documentation
@@ -69,8 +74,9 @@
(a simple REPL tool to see what classes are in a repository and
what state they're in...useful for long-lived repositories)
-0.6.4 - Additional datastructures?
- - Support for cheap persistent sets (ala ACache)
+0.6.5 - Additional datastructures?
+ - Native BDB persistent hashes (easy; can do on SQL backends?)
+ - Support for cheap persistent sets (medium? can do on SQL?)
Some placeholders & dreams features below... :)
More information about the Elephant-cvs
mailing list