river-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Patricia Shanahan <p...@acm.org>
Subject JavaSpaces and Java 1.4
Date Mon, 06 Dec 2010 18:12:49 GMT
The key data structure underlying the outrigger implementation needs 
significant changes to make it fully reliable with the 1.5 memory model. 
  Do we need to keep a version around that works on 1.5, or is support 
for JavaSpaces on 1.5 and later sufficient?

The current implementation uses double checked locking and related 
techniques that were thought to work with the 1.4 memory model, and do 
work most of the time on most 1.4 systems, but have some holes depending 
on optimizer and hardware. If it has to run on 1.4, it would probably 
need some work, and be a different data structure from 1.5 and later.

For 1.5, I am thinking of finding or writing a list-like data structure 
with the following characteristics:

1. Preserves order of arrival, so that it is possible to obtain the 
oldest entry, or all entries older than a specified entry, or scan in 
age order.

2. Removal from anywhere in the list.

3. Very fast parallel scans.

This data structure would replace FastList in outrigger. It might also 
be useful for TaskManager.

Any suggestions for an existing Java 1.5 compatible data structure that 
can be used in River and meets these requirements?


View raw message