Changes over the versions from version 1.0.0. The changes are grouped by the snapshot versions for which they were made.


Change or bug Change
Updated dependencies Maintenance library updates


Change or bug Change
Removed throwing of RuntimeExceptions Throwing specific SemiSpaceExceptions
Changed SemiSpaceEvent from interface to abstract class This makes information about type to be used, thus avoiding an if-test in implementation.
Upgraded to cometd-2.0.0 Upgraded to new cometd-release. Several changes to API and library use.
Not using SemiSpace as Terracotta root The Terracotta roots are now the event distributor and the data holder structure.
Removing persistence module The JDBC persistence module is removed as the libraries are getting dated, and there has not been any demand for maintaining it.
Delaying removal of empty heads Head elements are now not tried removed very often, which has a speed benefit.
The counter of operations are now local Since the SemiSpace instance is not shared, all admin data it contains are now local.
Using blocking wait Exchanging object wait pattern to blocking wait


Change or bug Change
Added cometd Added project elements, examples and implementation for Comet interface
Resynchronization when loosing admin If the admin process disappears, a new admin gets elected


Change or bug Change
Holder structure changed Internal holder structure is changed, making lookup faster and more stable
A congested space would be prone to loose objects and /
or return wrong object type
Locking of holder object structure has been corrected.


Change or bug Change
Listener block timeout error During read or take, the listener would always block for the length of the timeout,
even when it has been previously notified and the timeout should decrease proportionally.
Timeout now decreases correctly.
Element written before listener kicked in Listener is now activated before the search is performed, which
fixes the problem of possible listener starvation.
Notifying oldest listener first Increasing the possibility that listener starvation is avoided. Should also introduce
a level of fairness to the listeners.
No longer supporting jdk-1.5 Jdk-1.5 is end of line. Use semispace-1.0.0 if you need 1.5 support.