You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@river.apache.org by Patricia Shanahan <pa...@acm.org> on 2010/12/06 19:12:49 UTC

JavaSpaces and Java 1.4

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?

Patricia


Re: JavaSpaces and Java 1.4

Posted by Peter <ji...@zeus.net.au>.
I believe your refering to the server implementation, it doesn't need to run on 1.4, from your investigations it sounds like it wouldn't be optimal either.

Cheers,

Peter

----- Original message -----
> 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?
>
> Patricia
>