Current bugs ~~~~~~~~~~~~ Tests ~~~~~ - Test that if a node is alive, but not connectable, then the node client will fail - Test all List an Map implementation functions. _All_ of them. - Test for list changes, implementation changes (another listimpl, Vector, etc) - Test for lazy list methods, all of them (contains, etc.) - Tests for all locking modes and scenarios Documentation ~~~~~~~~~~~~~ - Nodes not explained in documentation. Also, the "node not ready" error should be explained in the documentation. - Extend documentation with performance chapter. Performance of different functions (store, lists, maps, other?) - Explain, that Lists, Sets and Maps are representing _relations_, and so their contains(), indexOf() and other similar methods are not what they appear to be. Bad style or convenience ~~~~~~~~~~~~~~~~~~~~~~~~ - Does not detect class hierarchy changes. If a superclass is added, the database needs to be migrated! That data is lost currently. (Schema evolution) - "ids" and "nodes" table names are hardcoded in the database layer. Also in NodeManager. - Locking mechanism still allows for deadlocks, although there is no easy way to avoid this, because we can not identify entities holding the lock (maybe they are threads, but thats now clear).