You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@river.apache.org by Gregg Wonderly <gr...@wonderly.org> on 2010/12/01 16:23:54 UTC

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

River's primary feature is network based communications and long running 
services with "compatibility" as a "key behavior" that makes things continue to 
work.  The original RMI implementation was unchangable from the outside.  The 
addition of JERI made "communication protocols" a deployment decision.  However, 
discovery still has to be "compatible" and we need to make real effort on 
"namespace" compatibility after the "switch to org.apache".  People will be 
forking river right and left and contributing nothing if we don't try very hard 
to "worry about compatibility" and "make it happen when at all possible".

These are not desktop applications that get replaced by individual users 
randomly so they can take advantage of upgrades when they want.  This is about 
network based services with broadcast client deployment via ServiceUI, much like 
a web page is.  Since river is "infrastructure" and not "the service", we need 
to help users experience minimum impact on their deployments so that they can 
easily adopt new releases of river that include bug fixes for example.  The work 
that Patricia is doing to shake out transaction manager misbehaviors and 
probably leasing issues too, is the kind of "fixes" that we want everyone to be 
able to "accept" with "trivial compatibility issues".

Gregg Wonderly

On 11/24/2010 8:40 AM, Sim IJskes - QCG wrote:
> On 11/24/2010 03:11 PM, Patricia Shanahan wrote:
>
>> If we had started a formal vote, the qualification might indicate that
>> we had not yet done enough discussing. I suggest we continue discussing
>> a little longer, and then call a vote. We will probably be able to reach
>> a consensus proposal that will get a lot of definite positive votes.
>
> I'm aware off the differences between a formal and a informal vote. A informal
> vote however is a clear indication how one will vote when a formal vote is called.
>
> I can understand you want to go throught due process in determining what we are
> going to do. But my personal impression from the mailing list archives, is that
> the river project is completely gridlocked in subtleties. I'm not saying that
> something agreed has a lifetime of infinity, but we have to start somewhere.
> That means quick, decisive action, while keeping our options open.
>
> Suppose we declare to support 1.4, 1.5, 1.6 and CDC. How do we validate this? I
> don't see us building a compatibity verification on short notice.
>
> If you want to go for river worlddomination, by keeping everything compatible,
> you should bring a large suitcase of money. Then you can checkout an older
> revision from the repo and build something with the horde of programmers you are
> hiring.
>
> River has to grow from spurts from contributors, we are not going to win a race
> by creating a swamp. I strongly believe that the current failure of river is
> because of this longwinding process. We are not going to attract more young
> eager bright committers if we keep on discussing the future of river or the
> subtleties of compatibility.
>
> Gr. Sim
>
>


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Peter Firmstone <ji...@zeus.net.au>.
Dennis Reedy wrote:
> On Dec 8, 2010, at 821AM, Gregg Wonderly wrote:
>   
>> The current situation with how lookup returns an unmarshalled object limits a client choice to much earlier "binding".  That is, instead of being able to look at multiple service matches and say "this one is not for me", it needs to, instead, be connected with the service deployments via an Entry which might indicate what "platform" the server can support.  This is not always a problem and I don't want to undervalue how Entry can be used to do this.
>>
>> Deferred unmarshalling in lookup could provide some more powerful decision opportunities for the client by allowing it to better manage when that occurs.
>>
>>     
>
> I agree, deferred marshaling and using lookup attributes can certainly aid in how this can be accomplished.
>
>
>   
I've got a Service API called StreamServiceRegistrar for just such a 
thing, in skunk/pepe, it was intended to maintain backward compatibility 
with ServiceRegistrar, by extending it.

So after discovery you can check if your ServiceRegistrar is an instance 
of StreamServiceRegistrar.  In older clients, it will only be a 
ServiceRegistrar, but be backward compatible.  It also has a powerful 
filter chaining interface, using the existing filters passed to 
ServiceDiscoveryManager so you can perform pre unmarshalling filtering 
(=) and post unmarshalling filtering (<><=>=), (Entry's are intended to 
be unmarshalled by default if they have local code).

This is intended to be an internet based service registrar, where the 
results may be infinitely streamed, and sent in small chunks and 
handled, where you can process more than your memory can contain, by 
discarding what you don't want, using filtering, then discarding the 
service after performing an operation on it, freeing up a service 
proxy's ClassLoader.

It's inspired by Gregg's work, although it isn't compatible.

I've been waiting for some feedback on the interface, since I know you 
can't change it once it's released.

Different but related topic:

As a totally separate concern, when you obtain a remote object, by means 
other than MarshalledInstance, which we can use to ensure trust, how do 
you ensure that MarshalInputStream will impose the right constraints?  
Eg you lookup a service and hand it an Exported Object or another service.

Because you have a trust relationship with the service already, it could 
reasonably expect that you won't perform an unmarshalling attack on it 
and it will apply suitable constraints at it's end.

Michal was working on preventing unmarshalling attacks using new Module 
implementations of MarshalInputStream and MarshalOutputStream, there are 
two drawbacks currently; it's not backward compatible with the existing 
implementations and it has to annotate a proxy with every object in the 
object stream.  On the plus side it can distinguish different service 
providers with the same codebase.

I've also wondered if we should create a URL handler that enables one to 
append a Subject's Certificate to the stream to ensure we don't have 
different Service proxy's with identical jar files sharing the same 
classloader.  The Certificate's Principal would somehow have to be one 
of the ServerMinPrincipal constraints set on the proxy also.

We could create a URL handler for URL's with the following information:

DNS-SRV domain path
jar filename
Message Digest
Subject unique Certificate.

This might enable redundant Codebase servers, discovered using DNS-SRV, 
message digest's to enable integrity, and a unique Certificate to ensure 
we keep separate identical services in separate ClassLoaders.  Note: 
Isolates would have been perfect for this to save on ClassLoaders and 
memory.  Java SE Embedded and JNode support the Isolates API.  Those 
platforms could use Isolates instead of separate ClassLoaders.


Cheers,

Peter.

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
On Dec 8, 2010, at 821AM, Gregg Wonderly wrote:
> 
> The current situation with how lookup returns an unmarshalled object limits a client choice to much earlier "binding".  That is, instead of being able to look at multiple service matches and say "this one is not for me", it needs to, instead, be connected with the service deployments via an Entry which might indicate what "platform" the server can support.  This is not always a problem and I don't want to undervalue how Entry can be used to do this.
> 
> Deferred unmarshalling in lookup could provide some more powerful decision opportunities for the client by allowing it to better manage when that occurs.
> 

I agree, deferred marshaling and using lookup attributes can certainly aid in how this can be accomplished.


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Gregg Wonderly <gr...@wonderly.org>.
On 12/3/2010 11:29 PM, Peter Firmstone wrote:
> Dennis Reedy wrote:
>> On Dec 2, 2010, at 618AM, Peter Firmstone wrote:
>>
>>> Patricia Shanahan wrote:
>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>> ...
>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>> these platforms have an overriding influence on whether River moves
>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>>> Is the relevant Java dialect identical to 1.4? If not, we would need a
>>>> separate project to make portions of River run on it.
>>>>
>>>> Patricia
>>>>
>>> BDJ is a subset of Java 1.4, the bytecode is Java 1.4 compatible, it has Java
>>> 1.4 Security, JSSE and JCE. It lacks Swing, has some AWT and a UI suited to
>>> television. It has networking, dynamic ClassLoading and Serialization but
>>> most of RMI is missing. To gain adequate privileges, an application jar file
>>> must be signed.
>>>
>>> This would require a separate River release, (Brook?) It would have Service
>>> API, but lack service implementations, it could be used as an application
>>> client or provide services, but could never support the full Jini platform.
>>>
>>> However this should not hold back the River Jini platform, which should take
>>> advantage of newer Java language features.
>>>
>>> The build we have now is monolithic, which means we can't compile proxy's
>>> separately. To remain network compatible with Java 1.4 proxy's need to be
>>> compiled with java 1.4 or a later platform using jsr14 to produce java 1.4
>>> compatible byte code. However once we have a modular build,
>>
>> I've been trying to carve out some weekend time to begin the creation of a
>> River maven project that would provide the level of decomposition required
>> here (this also would mean the removal of classdepandjar, and use straight
>> forward dependencies based on the conventions that we have discussed to
>> resolve intra-service dependencies). If we have api/proxy modules, they can be
>> targeted for a specific platform. My only excuse to not starting this is its
>> just tough to carve out the time. I know I should stop whining and just do it,
>> hopefully soon.
>>
>
> +1 Peter.
>
>>> it may be feasible to introduce the latest version of river, which will
>>> require a late version of Java to run on, to communicate with earlier
>>> existing Jini and River installations which to date are still Java 1.4
>>> compatible.
>>>
>>> This does not mean that the River platform cannot utilise later java language
>>> features, it doesn't need to run on Java 1.4, just communicate with it.
>>>
>>> If the java 1.4 bytecode is too difficult to support for our proxy's, which
>>> may be the case, then we'll need to decide which later platform will be the
>>> minimum bytecode for our proxy's.
>>>
>>> Dennis, do you have any thoughts on how to support platform transitive
>>> dependency's?
>>
>> Could it be as simple as a service specific attribute that clients can match on?
>>
>>
>
> Perhaps, giving the client the opportunity to select the most suitable codebase
> from a list?
>
> I wonder about other services or exported objects passed to the service though,
> they also need to download a suitable codebase.

There are a couple of different places that a client can get "code" from.  We 
know about how ClassLoading can be controlled, remotely, using the annotation on 
any MarshalledObject that a client receives.  One of the interesting thing about 
Entry use in the ServiceUI mechanisms is that the client is in control of when 
the unmarshalling occurs.  Therefore, it is possible for there to be multiple 
service UIs with platform specific versioning contained in the associated 
MarshalledObject.  So, there could be a JDK1.4 marshalled UIDescriptor in 
addition to others.

The current situation with how lookup returns an unmarshalled object limits a 
client choice to much earlier "binding".  That is, instead of being able to look 
at multiple service matches and say "this one is not for me", it needs to, 
instead, be connected with the service deployments via an Entry which might 
indicate what "platform" the server can support.  This is not always a problem 
and I don't want to undervalue how Entry can be used to do this.

Deferred unmarshalling in lookup could provide some more powerful decision 
opportunities for the client by allowing it to better manage when that occurs.

Gregg Wonderly


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by MICHAEL MCGRADY <mm...@topiatechnology.com>.
On Dec 4, 2010, at 12:54 PM, Dennis Reedy wrote:

> 
> On Dec 4, 2010, at 1051AM, Mike McGrady wrote:
> 
>> The multiple-tier architecture and the modular architecture need to be kept separate.  There is a problem scaling modules that are based on tiers.  This will not work for us.  Essentially this says we do not need the Java version to be consistent with Java 1.5, but we do.  
> 
> The comments below refer to having a modular build; being able to build River in such a way that you can specify different target sources (for one), so for example if Mahalo or Outrigger needed to be built with a source of 1.4 or 1.5 it could be accomplished, as opposed to having a singular monolithic build.
> 
> This is really a completely different thing from a multi-tier architecture. One doesnt have anything to do with the other.


My mistake.  I thought "modular" was being used in the traditional sense.  


> 
> 
>> Modules except in architectures that do not have quality control criteria (QCC) are inadequate to solve this problem will not work for real-world problems.
> 
> I'm not sure what this means.
> 
> Regards
> 
> Dennis
> 
> 
>> 
>> Sent from my iPhone
>> 
>> Michael McGrady
>> Principal investigator AF081_028 SBIR
>> Chief Architect
>> Topia Technology, Inc
>> Work 1.253.572.9712
>> Cel 1.253.720.3365
>> 
>> On Dec 4, 2010, at 5:49 AM, Tom Hobbs <tv...@googlemail.com> wrote:
>> 
>>> Peter is right, with a modular build we could do absolutely anything.
>>> Which is why I believe that our next release should just use whatever
>>> JDK version we used for the last one.  The let's go down the roadmap
>>> and talk about this again when we start to do something about it (but
>>> after we've modularised the build, I would guess.)
>>> 
>>> I know that supporting many multiple JDKs has been briefly discussed
>>> and rejected, personally, I am kind of warming to that idea though.
>>> Yes it is;
>>> 
>>> - additional work to add functionality
>>> - additional work to fix bugs
>>> - additional work for the modular build stuff
>>> 
>>> Consider the following directory structure;
>>> 
>>> $RIVER_HOME/component/src/org.apache.river.component.Thing
>>> $RIVER_HOME/component/jdk1.4/src/org.apache.river.component.Thing
>>> 
>>> The first line signifies the River-recommended and most up-to-date
>>> version, later (and still supported) version then appear in
>>> subdirectories.  Bugs would be raised against versions and
>>> bug-exposing tests need only be written in the most up-to-date (and
>>> supported) JDK; which can then be run across all versions and as long
>>> as we have sensibly named JAR files runtime confusion can be kept to a
>>> minimum.
>>> 
>>> Also, with a modular build we need only add this complexity when we
>>> come across a component that would be improved by using a
>>> non-previous-JDK feature.  And when that happens, the developer
>>> creates the "component/jdk1.4/src/..." directory duplicates the
>>> *affected classes only*, modifies the build accordingly and carries
>>> on.
>>> 
>>> As long as we ensure that the build is satisfactory and that tests are
>>> run against all the supported JDKs we should be good to go.  I accept
>>> that this is additional work and effort, for each additional
>>> enhancement and bug fix, but I wonder if it is worth paying that cost
>>> in order to keep supporting users who are locked (for whatever reason)
>>> into other JDK versions.
>>> 
>>> Just my thoughts.
>>> 
>>> On Sat, Dec 4, 2010 at 5:29 AM, Peter Firmstone <ji...@zeus.net.au> wrote:
>>>> Dennis Reedy wrote:
>>>>> 
>>>>> On Dec 2, 2010, at 618AM, Peter Firmstone wrote:
>>>>> 
>>>>> 
>>>>>> 
>>>>>> Patricia Shanahan wrote:
>>>>>> 
>>>>>>> 
>>>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>>>> ...
>>>>>>> 
>>>>>>>> 
>>>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>>>> these platforms have an overriding influence on whether River moves
>>>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>>>>>>> 
>>>>>>> 
>>>>>>> Is the relevant Java dialect identical to 1.4? If not, we would need a
>>>>>>> separate project to make portions of River run on it.
>>>>>>> 
>>>>>>> Patricia
>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>>> BDJ is a subset of Java 1.4, the bytecode is Java 1.4 compatible, it has
>>>>>> Java 1.4 Security, JSSE and JCE.  It lacks Swing, has some AWT and a UI
>>>>>> suited to television. It has networking, dynamic ClassLoading and
>>>>>> Serialization but most of RMI is missing.  To gain adequate privileges, an
>>>>>> application jar file must be signed.
>>>>>> 
>>>>>> This would require a separate River release, (Brook?)  It would have
>>>>>> Service API, but lack service implementations, it could be used as an
>>>>>> application client or provide services, but could never support the full
>>>>>> Jini platform.
>>>>>> 
>>>>>> However this should not hold back the River Jini platform, which should
>>>>>> take advantage of newer Java language features.
>>>>>> 
>>>>>> The build we have now is monolithic, which means we can't compile proxy's
>>>>>> separately.  To remain network compatible with Java 1.4 proxy's need to be
>>>>>> compiled with java 1.4 or a later platform using jsr14 to produce java 1.4
>>>>>> compatible byte code.  However once we have a modular build,
>>>>>> 
>>>>> 
>>>>> I've been trying to carve out some weekend time to begin the creation of a
>>>>> River maven project that would provide the level of decomposition required
>>>>> here (this also would mean the removal of classdepandjar, and use straight
>>>>> forward dependencies based on the conventions that we have discussed to
>>>>> resolve intra-service dependencies). If we have api/proxy modules, they can
>>>>> be targeted for a specific platform. My only excuse to not starting this is
>>>>> its just tough to carve out the time. I know I should stop whining and just
>>>>> do it, hopefully soon.
>>>>> 
>>>>> 
>>>> 
>>>> +1 Peter.
>>>> 
>>>>> 
>>>>>> 
>>>>>> it may be feasible to introduce the latest version of river, which will
>>>>>> require a late version of Java to run on, to communicate with earlier
>>>>>> existing Jini and River installations which to date are still Java 1.4
>>>>>> compatible.
>>>>>> 
>>>>>> This does not mean that the River platform cannot utilise later java
>>>>>> language features, it doesn't need to run on Java 1.4, just communicate with
>>>>>> it.
>>>>>> 
>>>>>> If the java 1.4 bytecode is too difficult to support for our proxy's,
>>>>>> which may be the case, then we'll need to decide which later platform will
>>>>>> be the minimum bytecode for our proxy's.
>>>>>> 
>>>>>> Dennis, do you have any thoughts on how to support platform transitive
>>>>>> dependency's?
>>>>>> 
>>>>> 
>>>>> Could it be as simple as a service specific attribute that clients can
>>>>> match on?
>>>>> 
>>>>> 
>>>>> 
>>>> 
>>>> Perhaps, giving the client the opportunity to select the most suitable
>>>> codebase from a list?
>>>> 
>>>> I wonder about other services or exported objects passed to the service
>>>> though, they also need to download a suitable codebase.
>>>> 
>>>> 
>>>> 
> 

Michael McGrady
Chief Architect
Topia Technology, Inc.
Cel 1.253.720.3365
Work 1.253.572.9712 extension 2037
mmcgrady@topiatechnology.com


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
On Dec 4, 2010, at 1051AM, Mike McGrady wrote:

> The multiple-tier architecture and the modular architecture need to be kept separate.  There is a problem scaling modules that are based on tiers.  This will not work for us.  Essentially this says we do not need the Java version to be consistent with Java 1.5, but we do.  

The comments below refer to having a modular build; being able to build River in such a way that you can specify different target sources (for one), so for example if Mahalo or Outrigger needed to be built with a source of 1.4 or 1.5 it could be accomplished, as opposed to having a singular monolithic build.

This is really a completely different thing from a multi-tier architecture. One doesnt have anything to do with the other.


> Modules except in architectures that do not have quality control criteria (QCC) are inadequate to solve this problem will not work for real-world problems.

I'm not sure what this means.

Regards

Dennis


> 
> Sent from my iPhone
> 
> Michael McGrady
> Principal investigator AF081_028 SBIR
> Chief Architect
> Topia Technology, Inc
> Work 1.253.572.9712
> Cel 1.253.720.3365
> 
> On Dec 4, 2010, at 5:49 AM, Tom Hobbs <tv...@googlemail.com> wrote:
> 
>> Peter is right, with a modular build we could do absolutely anything.
>> Which is why I believe that our next release should just use whatever
>> JDK version we used for the last one.  The let's go down the roadmap
>> and talk about this again when we start to do something about it (but
>> after we've modularised the build, I would guess.)
>> 
>> I know that supporting many multiple JDKs has been briefly discussed
>> and rejected, personally, I am kind of warming to that idea though.
>> Yes it is;
>> 
>> - additional work to add functionality
>> - additional work to fix bugs
>> - additional work for the modular build stuff
>> 
>> Consider the following directory structure;
>> 
>> $RIVER_HOME/component/src/org.apache.river.component.Thing
>> $RIVER_HOME/component/jdk1.4/src/org.apache.river.component.Thing
>> 
>> The first line signifies the River-recommended and most up-to-date
>> version, later (and still supported) version then appear in
>> subdirectories.  Bugs would be raised against versions and
>> bug-exposing tests need only be written in the most up-to-date (and
>> supported) JDK; which can then be run across all versions and as long
>> as we have sensibly named JAR files runtime confusion can be kept to a
>> minimum.
>> 
>> Also, with a modular build we need only add this complexity when we
>> come across a component that would be improved by using a
>> non-previous-JDK feature.  And when that happens, the developer
>> creates the "component/jdk1.4/src/..." directory duplicates the
>> *affected classes only*, modifies the build accordingly and carries
>> on.
>> 
>> As long as we ensure that the build is satisfactory and that tests are
>> run against all the supported JDKs we should be good to go.  I accept
>> that this is additional work and effort, for each additional
>> enhancement and bug fix, but I wonder if it is worth paying that cost
>> in order to keep supporting users who are locked (for whatever reason)
>> into other JDK versions.
>> 
>> Just my thoughts.
>> 
>> On Sat, Dec 4, 2010 at 5:29 AM, Peter Firmstone <ji...@zeus.net.au> wrote:
>>> Dennis Reedy wrote:
>>>> 
>>>> On Dec 2, 2010, at 618AM, Peter Firmstone wrote:
>>>> 
>>>> 
>>>>> 
>>>>> Patricia Shanahan wrote:
>>>>> 
>>>>>> 
>>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>>> ...
>>>>>> 
>>>>>>> 
>>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>>> these platforms have an overriding influence on whether River moves
>>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>>>>>> 
>>>>>> 
>>>>>> Is the relevant Java dialect identical to 1.4? If not, we would need a
>>>>>> separate project to make portions of River run on it.
>>>>>> 
>>>>>> Patricia
>>>>>> 
>>>>>> 
>>>>> 
>>>>> BDJ is a subset of Java 1.4, the bytecode is Java 1.4 compatible, it has
>>>>> Java 1.4 Security, JSSE and JCE.  It lacks Swing, has some AWT and a UI
>>>>> suited to television. It has networking, dynamic ClassLoading and
>>>>> Serialization but most of RMI is missing.  To gain adequate privileges, an
>>>>> application jar file must be signed.
>>>>> 
>>>>> This would require a separate River release, (Brook?)  It would have
>>>>> Service API, but lack service implementations, it could be used as an
>>>>> application client or provide services, but could never support the full
>>>>> Jini platform.
>>>>> 
>>>>> However this should not hold back the River Jini platform, which should
>>>>> take advantage of newer Java language features.
>>>>> 
>>>>> The build we have now is monolithic, which means we can't compile proxy's
>>>>> separately.  To remain network compatible with Java 1.4 proxy's need to be
>>>>> compiled with java 1.4 or a later platform using jsr14 to produce java 1.4
>>>>> compatible byte code.  However once we have a modular build,
>>>>> 
>>>> 
>>>> I've been trying to carve out some weekend time to begin the creation of a
>>>> River maven project that would provide the level of decomposition required
>>>> here (this also would mean the removal of classdepandjar, and use straight
>>>> forward dependencies based on the conventions that we have discussed to
>>>> resolve intra-service dependencies). If we have api/proxy modules, they can
>>>> be targeted for a specific platform. My only excuse to not starting this is
>>>> its just tough to carve out the time. I know I should stop whining and just
>>>> do it, hopefully soon.
>>>> 
>>>> 
>>> 
>>> +1 Peter.
>>> 
>>>> 
>>>>> 
>>>>> it may be feasible to introduce the latest version of river, which will
>>>>> require a late version of Java to run on, to communicate with earlier
>>>>> existing Jini and River installations which to date are still Java 1.4
>>>>> compatible.
>>>>> 
>>>>> This does not mean that the River platform cannot utilise later java
>>>>> language features, it doesn't need to run on Java 1.4, just communicate with
>>>>> it.
>>>>> 
>>>>> If the java 1.4 bytecode is too difficult to support for our proxy's,
>>>>> which may be the case, then we'll need to decide which later platform will
>>>>> be the minimum bytecode for our proxy's.
>>>>> 
>>>>> Dennis, do you have any thoughts on how to support platform transitive
>>>>> dependency's?
>>>>> 
>>>> 
>>>> Could it be as simple as a service specific attribute that clients can
>>>> match on?
>>>> 
>>>> 
>>>> 
>>> 
>>> Perhaps, giving the client the opportunity to select the most suitable
>>> codebase from a list?
>>> 
>>> I wonder about other services or exported objects passed to the service
>>> though, they also need to download a suitable codebase.
>>> 
>>> 
>>> 


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Mike McGrady <mm...@topiatechnology.com>.
The multiple-tier architecture and the modular architecture need to be kept separate.  There is a problem scaling modules that are based on tiers.  This will not work for us.  Essentially this says we do not need the Java version to be consistent with Java 1.5, but we do.  Modules except in architectures that do not have quality control criteria (QCC) are inadequate to solve this problem will not work for real-world problems.

Sent from my iPhone

Michael McGrady
Principal investigator AF081_028 SBIR
Chief Architect
Topia Technology, Inc
Work 1.253.572.9712
Cel 1.253.720.3365

On Dec 4, 2010, at 5:49 AM, Tom Hobbs <tv...@googlemail.com> wrote:

> Peter is right, with a modular build we could do absolutely anything.
> Which is why I believe that our next release should just use whatever
> JDK version we used for the last one.  The let's go down the roadmap
> and talk about this again when we start to do something about it (but
> after we've modularised the build, I would guess.)
> 
> I know that supporting many multiple JDKs has been briefly discussed
> and rejected, personally, I am kind of warming to that idea though.
> Yes it is;
> 
> - additional work to add functionality
> - additional work to fix bugs
> - additional work for the modular build stuff
> 
> Consider the following directory structure;
> 
> $RIVER_HOME/component/src/org.apache.river.component.Thing
> $RIVER_HOME/component/jdk1.4/src/org.apache.river.component.Thing
> 
> The first line signifies the River-recommended and most up-to-date
> version, later (and still supported) version then appear in
> subdirectories.  Bugs would be raised against versions and
> bug-exposing tests need only be written in the most up-to-date (and
> supported) JDK; which can then be run across all versions and as long
> as we have sensibly named JAR files runtime confusion can be kept to a
> minimum.
> 
> Also, with a modular build we need only add this complexity when we
> come across a component that would be improved by using a
> non-previous-JDK feature.  And when that happens, the developer
> creates the "component/jdk1.4/src/..." directory duplicates the
> *affected classes only*, modifies the build accordingly and carries
> on.
> 
> As long as we ensure that the build is satisfactory and that tests are
> run against all the supported JDKs we should be good to go.  I accept
> that this is additional work and effort, for each additional
> enhancement and bug fix, but I wonder if it is worth paying that cost
> in order to keep supporting users who are locked (for whatever reason)
> into other JDK versions.
> 
> Just my thoughts.
> 
> On Sat, Dec 4, 2010 at 5:29 AM, Peter Firmstone <ji...@zeus.net.au> wrote:
>> Dennis Reedy wrote:
>>> 
>>> On Dec 2, 2010, at 618AM, Peter Firmstone wrote:
>>> 
>>> 
>>>> 
>>>> Patricia Shanahan wrote:
>>>> 
>>>>> 
>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>> ...
>>>>> 
>>>>>> 
>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>> these platforms have an overriding influence on whether River moves
>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>>>>> 
>>>>> 
>>>>> Is the relevant Java dialect identical to 1.4? If not, we would need a
>>>>> separate project to make portions of River run on it.
>>>>> 
>>>>> Patricia
>>>>> 
>>>>> 
>>>> 
>>>> BDJ is a subset of Java 1.4, the bytecode is Java 1.4 compatible, it has
>>>> Java 1.4 Security, JSSE and JCE.  It lacks Swing, has some AWT and a UI
>>>> suited to television. It has networking, dynamic ClassLoading and
>>>> Serialization but most of RMI is missing.  To gain adequate privileges, an
>>>> application jar file must be signed.
>>>> 
>>>> This would require a separate River release, (Brook?)  It would have
>>>> Service API, but lack service implementations, it could be used as an
>>>> application client or provide services, but could never support the full
>>>> Jini platform.
>>>> 
>>>> However this should not hold back the River Jini platform, which should
>>>> take advantage of newer Java language features.
>>>> 
>>>> The build we have now is monolithic, which means we can't compile proxy's
>>>> separately.  To remain network compatible with Java 1.4 proxy's need to be
>>>> compiled with java 1.4 or a later platform using jsr14 to produce java 1.4
>>>> compatible byte code.  However once we have a modular build,
>>>> 
>>> 
>>> I've been trying to carve out some weekend time to begin the creation of a
>>> River maven project that would provide the level of decomposition required
>>> here (this also would mean the removal of classdepandjar, and use straight
>>> forward dependencies based on the conventions that we have discussed to
>>> resolve intra-service dependencies). If we have api/proxy modules, they can
>>> be targeted for a specific platform. My only excuse to not starting this is
>>> its just tough to carve out the time. I know I should stop whining and just
>>> do it, hopefully soon.
>>> 
>>> 
>> 
>> +1 Peter.
>> 
>>> 
>>>> 
>>>> it may be feasible to introduce the latest version of river, which will
>>>> require a late version of Java to run on, to communicate with earlier
>>>> existing Jini and River installations which to date are still Java 1.4
>>>> compatible.
>>>> 
>>>> This does not mean that the River platform cannot utilise later java
>>>> language features, it doesn't need to run on Java 1.4, just communicate with
>>>> it.
>>>> 
>>>> If the java 1.4 bytecode is too difficult to support for our proxy's,
>>>> which may be the case, then we'll need to decide which later platform will
>>>> be the minimum bytecode for our proxy's.
>>>> 
>>>> Dennis, do you have any thoughts on how to support platform transitive
>>>> dependency's?
>>>> 
>>> 
>>> Could it be as simple as a service specific attribute that clients can
>>> match on?
>>> 
>>> 
>>> 
>> 
>> Perhaps, giving the client the opportunity to select the most suitable
>> codebase from a list?
>> 
>> I wonder about other services or exported objects passed to the service
>> though, they also need to download a suitable codebase.
>> 
>> 
>> 

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Tom Hobbs <tv...@googlemail.com>.
Peter is right, with a modular build we could do absolutely anything.
Which is why I believe that our next release should just use whatever
JDK version we used for the last one.  The let's go down the roadmap
and talk about this again when we start to do something about it (but
after we've modularised the build, I would guess.)

I know that supporting many multiple JDKs has been briefly discussed
and rejected, personally, I am kind of warming to that idea though.
Yes it is;

- additional work to add functionality
- additional work to fix bugs
- additional work for the modular build stuff

Consider the following directory structure;

$RIVER_HOME/component/src/org.apache.river.component.Thing
$RIVER_HOME/component/jdk1.4/src/org.apache.river.component.Thing

The first line signifies the River-recommended and most up-to-date
version, later (and still supported) version then appear in
subdirectories.  Bugs would be raised against versions and
bug-exposing tests need only be written in the most up-to-date (and
supported) JDK; which can then be run across all versions and as long
as we have sensibly named JAR files runtime confusion can be kept to a
minimum.

Also, with a modular build we need only add this complexity when we
come across a component that would be improved by using a
non-previous-JDK feature.  And when that happens, the developer
creates the "component/jdk1.4/src/..." directory duplicates the
*affected classes only*, modifies the build accordingly and carries
on.

As long as we ensure that the build is satisfactory and that tests are
run against all the supported JDKs we should be good to go.  I accept
that this is additional work and effort, for each additional
enhancement and bug fix, but I wonder if it is worth paying that cost
in order to keep supporting users who are locked (for whatever reason)
into other JDK versions.

Just my thoughts.

On Sat, Dec 4, 2010 at 5:29 AM, Peter Firmstone <ji...@zeus.net.au> wrote:
> Dennis Reedy wrote:
>>
>> On Dec 2, 2010, at 618AM, Peter Firmstone wrote:
>>
>>
>>>
>>> Patricia Shanahan wrote:
>>>
>>>>
>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>> ...
>>>>
>>>>>
>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>> these platforms have an overriding influence on whether River moves
>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>>>>
>>>>
>>>> Is the relevant Java dialect identical to 1.4? If not, we would need a
>>>> separate project to make portions of River run on it.
>>>>
>>>> Patricia
>>>>
>>>>
>>>
>>> BDJ is a subset of Java 1.4, the bytecode is Java 1.4 compatible, it has
>>> Java 1.4 Security, JSSE and JCE.  It lacks Swing, has some AWT and a UI
>>> suited to television. It has networking, dynamic ClassLoading and
>>> Serialization but most of RMI is missing.  To gain adequate privileges, an
>>> application jar file must be signed.
>>>
>>> This would require a separate River release, (Brook?)  It would have
>>> Service API, but lack service implementations, it could be used as an
>>> application client or provide services, but could never support the full
>>> Jini platform.
>>>
>>> However this should not hold back the River Jini platform, which should
>>> take advantage of newer Java language features.
>>>
>>> The build we have now is monolithic, which means we can't compile proxy's
>>> separately.  To remain network compatible with Java 1.4 proxy's need to be
>>> compiled with java 1.4 or a later platform using jsr14 to produce java 1.4
>>> compatible byte code.  However once we have a modular build,
>>>
>>
>> I've been trying to carve out some weekend time to begin the creation of a
>> River maven project that would provide the level of decomposition required
>> here (this also would mean the removal of classdepandjar, and use straight
>> forward dependencies based on the conventions that we have discussed to
>> resolve intra-service dependencies). If we have api/proxy modules, they can
>> be targeted for a specific platform. My only excuse to not starting this is
>> its just tough to carve out the time. I know I should stop whining and just
>> do it, hopefully soon.
>>
>>
>
> +1 Peter.
>
>>
>>>
>>> it may be feasible to introduce the latest version of river, which will
>>> require a late version of Java to run on, to communicate with earlier
>>> existing Jini and River installations which to date are still Java 1.4
>>> compatible.
>>>
>>> This does not mean that the River platform cannot utilise later java
>>> language features, it doesn't need to run on Java 1.4, just communicate with
>>> it.
>>>
>>> If the java 1.4 bytecode is too difficult to support for our proxy's,
>>> which may be the case, then we'll need to decide which later platform will
>>> be the minimum bytecode for our proxy's.
>>>
>>> Dennis, do you have any thoughts on how to support platform transitive
>>> dependency's?
>>>
>>
>> Could it be as simple as a service specific attribute that clients can
>> match on?
>>
>>
>>
>
> Perhaps, giving the client the opportunity to select the most suitable
> codebase from a list?
>
> I wonder about other services or exported objects passed to the service
> though, they also need to download a suitable codebase.
>
>
>

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Peter Firmstone <ji...@zeus.net.au>.
Dennis Reedy wrote:
> On Dec 2, 2010, at 618AM, Peter Firmstone wrote:
>
>   
>> Patricia Shanahan wrote:
>>     
>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>> ...
>>>       
>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>> these platforms have an overriding influence on whether River moves
>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>>>         
>>> Is the relevant Java dialect identical to 1.4? If not, we would need a separate project to make portions of River run on it.
>>>
>>> Patricia
>>>
>>>       
>> BDJ is a subset of Java 1.4, the bytecode is Java 1.4 compatible, it has Java 1.4 Security, JSSE and JCE.  It lacks Swing, has some AWT and a UI suited to television. It has networking, dynamic ClassLoading and Serialization but most of RMI is missing.  To gain adequate privileges, an application jar file must be signed.
>>
>> This would require a separate River release, (Brook?)  It would have Service API, but lack service implementations, it could be used as an application client or provide services, but could never support the full Jini platform.
>>
>> However this should not hold back the River Jini platform, which should take advantage of newer Java language features.
>>
>> The build we have now is monolithic, which means we can't compile proxy's separately.  To remain network compatible with Java 1.4 proxy's need to be compiled with java 1.4 or a later platform using jsr14 to produce java 1.4 compatible byte code.  However once we have a modular build,
>>     
>
> I've been trying to carve out some weekend time to begin the creation of a River maven project that would provide the level of decomposition required here (this also would mean the removal of classdepandjar, and use straight forward dependencies based on the conventions that we have discussed to resolve intra-service dependencies). If we have api/proxy modules, they can be targeted for a specific platform. My only excuse to not starting this is its just tough to carve out the time. I know I should stop whining and just do it, hopefully soon.
>
>   

+1 Peter.

>   
>> it may be feasible to introduce the latest version of river, which will require a late version of Java to run on, to communicate with earlier existing Jini and River installations which to date are still Java 1.4 compatible.
>>
>> This does not mean that the River platform cannot utilise later java language features, it doesn't need to run on Java 1.4, just communicate with it.
>>
>> If the java 1.4 bytecode is too difficult to support for our proxy's, which may be the case, then we'll need to decide which later platform will be the minimum bytecode for our proxy's.
>>
>> Dennis, do you have any thoughts on how to support platform transitive dependency's?
>>     
>
> Could it be as simple as a service specific attribute that clients can match on?
>
>
>   

Perhaps, giving the client the opportunity to select the most suitable 
codebase from a list?

I wonder about other services or exported objects passed to the service 
though, they also need to download a suitable codebase.



Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
On Dec 2, 2010, at 618AM, Peter Firmstone wrote:

> Patricia Shanahan wrote:
>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>> ...
>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>> these platforms have an overriding influence on whether River moves
>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>> 
>> Is the relevant Java dialect identical to 1.4? If not, we would need a separate project to make portions of River run on it.
>> 
>> Patricia
>> 
> BDJ is a subset of Java 1.4, the bytecode is Java 1.4 compatible, it has Java 1.4 Security, JSSE and JCE.  It lacks Swing, has some AWT and a UI suited to television. It has networking, dynamic ClassLoading and Serialization but most of RMI is missing.  To gain adequate privileges, an application jar file must be signed.
> 
> This would require a separate River release, (Brook?)  It would have Service API, but lack service implementations, it could be used as an application client or provide services, but could never support the full Jini platform.
> 
> However this should not hold back the River Jini platform, which should take advantage of newer Java language features.
> 
> The build we have now is monolithic, which means we can't compile proxy's separately.  To remain network compatible with Java 1.4 proxy's need to be compiled with java 1.4 or a later platform using jsr14 to produce java 1.4 compatible byte code.  However once we have a modular build,

I've been trying to carve out some weekend time to begin the creation of a River maven project that would provide the level of decomposition required here (this also would mean the removal of classdepandjar, and use straight forward dependencies based on the conventions that we have discussed to resolve intra-service dependencies). If we have api/proxy modules, they can be targeted for a specific platform. My only excuse to not starting this is its just tough to carve out the time. I know I should stop whining and just do it, hopefully soon.


> it may be feasible to introduce the latest version of river, which will require a late version of Java to run on, to communicate with earlier existing Jini and River installations which to date are still Java 1.4 compatible.
> 
> This does not mean that the River platform cannot utilise later java language features, it doesn't need to run on Java 1.4, just communicate with it.
> 
> If the java 1.4 bytecode is too difficult to support for our proxy's, which may be the case, then we'll need to decide which later platform will be the minimum bytecode for our proxy's.
> 
> Dennis, do you have any thoughts on how to support platform transitive dependency's?

Could it be as simple as a service specific attribute that clients can match on?


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Peter Firmstone <ji...@zeus.net.au>.
Patricia Shanahan wrote:
> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
> ...
>> Some of the discussion has referenced Java CDC on BlueRay. Should
>> these platforms have an overriding influence on whether River moves
>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>
> Is the relevant Java dialect identical to 1.4? If not, we would need a 
> separate project to make portions of River run on it.
>
> Patricia
>
BDJ is a subset of Java 1.4, the bytecode is Java 1.4 compatible, it has 
Java 1.4 Security, JSSE and JCE.  It lacks Swing, has some AWT and a UI 
suited to television. It has networking, dynamic ClassLoading and 
Serialization but most of RMI is missing.  To gain adequate privileges, 
an application jar file must be signed.

This would require a separate River release, (Brook?)  It would have 
Service API, but lack service implementations, it could be used as an 
application client or provide services, but could never support the full 
Jini platform.

However this should not hold back the River Jini platform, which should 
take advantage of newer Java language features.

The build we have now is monolithic, which means we can't compile 
proxy's separately.  To remain network compatible with Java 1.4 proxy's 
need to be compiled with java 1.4 or a later platform using jsr14 to 
produce java 1.4 compatible byte code.  However once we have a modular 
build, it may be feasible to introduce the latest version of river, 
which will require a late version of Java to run on, to communicate with 
earlier existing Jini and River installations which to date are still 
Java 1.4 compatible.

This does not mean that the River platform cannot utilise later java 
language features, it doesn't need to run on Java 1.4, just communicate 
with it.

If the java 1.4 bytecode is too difficult to support for our proxy's, 
which may be the case, then we'll need to decide which later platform 
will be the minimum bytecode for our proxy's.

Dennis, do you have any thoughts on how to support platform transitive 
dependency's?

Peter.









Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
Apologies for getting wrapped around the axle here, I wanted to get some specifics on what River components were required in the RTSJ environment. I think it would be helpful to discuss that. 

Below, Greg asks an interesting question, I'd like to expand on it. Is it your requirement that all provided River services run in a RT Java VM? Even if they do not use any specific RTJ APIs? If so why?


On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:

> We do this now with Java 1.5, Greg.  Java RT 2.1 (64 bit) is compatible with Java 1.5.  http://preview.tinyurl.com/2bpjqfh  There would be no other test than works-with-Java-1.5.  The simple answer is that if River does not call real-time threads and uses Java 1.5 there is no issue.  There are other things that impact real-time but we can cover those.
> 
> MG
> 
> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
> 
>> 
>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>> Like I said, Java 1.6 is incompatible with Java RTS and that os very serious in my neighborhood.  We do QoS with Java RTS.
>>> 
>> 
>> That's certainly an interesting comment... I'm curious though: I haven't
>> looked at RT Java for several years, but I recall that the first pass
>> allowed plain Java (i.e. non-real-time) to be executed.  Would River
>> components need some other evaluation or testing to be accepted as
>> "real-time" (which I doubt would be an easy task), or would you just be
>> looking for compatibility with the run-time environment, but without
>> real-time guarantees?
>> 
>> Also, what would be the impact if the RT system called services that
>> were resident in a non-RT virtual machine?  Specifically, would the
>> registrar and/or JavaSpaces implementation need to be hosted in a Java
>> RTS virtual machine?
>> 
>> Cheers,
>> 
>> Greg.
>> 
>> 
>> Sent from my iPhone
>>> 
>>> Michael McGrady
>>> Principal investigator AF081_028 SBIR
>>> Chief Architect
>>> Topia Technology, Inc
>>> Work 1.253.572.9712
>>> Cel 1.253.720.3365
>>> 
>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>> 
>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>> ...
>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>> these platforms have an overriding influence on whether River moves
>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>>> 
>>>> Is the relevant Java dialect identical to 1.4? If not, we would need a separate project to make portions of River run on it.
>>>> 
>>>> Patricia
>> -- 
>> Greg Trasuk, President
>> StratusCom Manufacturing Systems Inc. - We use information technology to
>> solve business problems on your plant floor.
>> http://stratuscom.com
>> 
> 
> Michael McGrady
> Chief Architect
> Topia Technology, Inc.
> Cel 1.253.720.3365
> Work 1.253.572.9712 extension 2037
> mmcgrady@topiatechnology.com
> 
> 
> 


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by MICHAEL MCGRADY <mm...@topiatechnology.com>.
Thanks, Sim.

http://www.devx.com/Java/Article/33475

On Dec 2, 2010, at 7:03 AM, Sim IJskes - QCG wrote:

> On 02-12-10 15:58, MICHAEL MCGRADY wrote:
>> There are no RT requirements for River.  There is only the requirement that, if River wants to be compatible with Java RT that it not go to Java 1.6 but stick at Java 1.5.
> 
> No matter what the outcome is of the version debate, i would like to see/explained a way/method to verify the compatibility.
> 
> You cannot ask a developer to run on anything less then JDK6 nowadays. You can ask a developer to keep to certain compatibility conventions. In order to guard against mistakes, we need a (preferably) automated method of verifying if the code produced is still compatible.
> 
> When we argue for a certain version, shall we include the verification solution with it?
> 
> Gr. Sim
> 
> -- 
> QCG, Software voor het MKB, 071-5890970, http://www.qcg.nl
> Quality Consultancy Group b.v., Leiderdorp, Kvk Den Haag: 28088397

Michael McGrady
Chief Architect
Topia Technology, Inc.
Cel 1.253.720.3365
Work 1.253.572.9712 extension 2037
mmcgrady@topiatechnology.com




Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Mike McGrady <mm...@topiatechnology.com>.
I know of no reason to think this is going to happen.  I think my friends in the industry would have notified me if this was imminent.

Sent from my iPhone

Michael McGrady
Principal investigator AF081_028 SBIR
Chief Architect
Topia Technology, Inc
Work 1.253.572.9712
Cel 1.253.720.3365

On Dec 2, 2010, at 6:04 PM, Dennis Reedy <de...@gmail.com> wrote:

> 
> On Dec 2, 2010, at 840PM, Peter Firmstone wrote:
>>> 
>>> I Spoke to Greg Bollella over the phone about this some time ago, Oracle was quite keen on it, capable of generating lots of data see and well, Oracle have this database...
>>> 
>> Although I haven't heard anything, this problem might solve itself, given 6 months, perhaps there might be a 1.6 release of RTSJ, seeing as JSE 1.6 Embedded has also been released.
>> 
> 
> Interesting ... I saw that as well. Thanks for raising that issue Peter
> 
> Regards
> 
> Dennis
> 
> 
> 
> 

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
On Dec 2, 2010, at 840PM, Peter Firmstone wrote:
>> 
>> I Spoke to Greg Bollella over the phone about this some time ago, Oracle was quite keen on it, capable of generating lots of data see and well, Oracle have this database...
>> 
> Although I haven't heard anything, this problem might solve itself, given 6 months, perhaps there might be a 1.6 release of RTSJ, seeing as JSE 1.6 Embedded has also been released.
> 

Interesting ... I saw that as well. Thanks for raising that issue Peter

Regards

Dennis





Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Peter Firmstone <ji...@zeus.net.au>.
Peter Firmstone wrote:
> Dennis Reedy wrote:
>> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>>
>>  
>>> Perhaps this will help: on the generic question of going to Java 
>>> 1.6, and my plea not to do it.
>>>
>>> http://www.devx.com/Java/Article/33475
>>>     
>>
>> Michael,
>>
>> Thanks for the link. You may also find more information here: 
>> http://java.sun.com/javase/technologies/realtime/faq.jsp
>>
>> One thing on this topic that I am curious about is what Oracle's plan 
>> is for RTJ. We certainly cant answer that in this forum. But... will 
>> they keep it? If so, and if they are given a large enough business 
>> opportunity for it's use, will they move towards supporting 1.6? 
>> While this is a very interesting and compelling technical use of 
>> River, is it enough to prohibit River moving to 1.6 and beyond?
>>
>> Just asking ...
>>
>> Regards
>>
>> Dennis
>>
>>
>>
>>   
>
> I Spoke to Greg Bollella over the phone about this some time ago, 
> Oracle was quite keen on it, capable of generating lots of data see 
> and well, Oracle have this database...
>
Although I haven't heard anything, this problem might solve itself, 
given 6 months, perhaps there might be a 1.6 release of RTSJ, seeing as 
JSE 1.6 Embedded has also been released.

Cheers,

Peter.


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Peter Firmstone <ji...@zeus.net.au>.
Dennis Reedy wrote:
> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>
>   
>> Perhaps this will help: on the generic question of going to Java 1.6, and my plea not to do it.
>>
>> http://www.devx.com/Java/Article/33475
>>     
>
> Michael,
>
> Thanks for the link. You may also find more information here: http://java.sun.com/javase/technologies/realtime/faq.jsp
>
> One thing on this topic that I am curious about is what Oracle's plan is for RTJ. We certainly cant answer that in this forum. But... will they keep it? If so, and if they are given a large enough business opportunity for it's use, will they move towards supporting 1.6? While this is a very interesting and compelling technical use of River, is it enough to prohibit River moving to 1.6 and beyond?
>
> Just asking ...
>
> Regards
>
> Dennis
>
>
>
>   

I Spoke to Greg Bollella over the phone about this some time ago, Oracle 
was quite keen on it, capable of generating lots of data see and well, 
Oracle have this database...

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Mike McGrady <mm...@topiatechnology.com>.
The classloading interrupt issue is unrelated to real-time.

Dennis, what about Patricia's point that the move from 1.5 to 1.6 is not that important and the move to 1.5 from 1.4 is?  This seems to me to be powerful as well as the impact (inconvenience to you) difference (out of the game to me).  

Sent from my iPhone

Michael McGrady
Principal investigator AF081_028 SBIR
Chief Architect
Topia Technology, Inc
Work 1.253.572.9712
Cel 1.253.720.3365

On Dec 2, 2010, at 5:26 PM, Dennis Reedy <de...@gmail.com> wrote:

> Patricia,
> 
> There are many interested and active users. Michael is just one that has expressed his opinions. I am also one, and have expressed mine (I urge others on this list to also express their opinions). The systems that I currently work with (in DoD and beyond) all use River, and all are based on 1.6. I dont see how moving to a baseline that has its Java Technology End of Life (EOL) transition period that ended October 8th, 2009 is a good plan for the future of River. 
> 
> The JSR1 requirements are easily met by the current distribution of River. We do not know the future of Oracle's plan with RTSJ. That combined with the recent post that Thread.interrupt() breaks classloading in 1.5 and that there's no feasible workaround for River seen, why baseline on a technology that is not only EOL, but also has known issues?
> 
> Dennis
> 
> On Dec 2, 2010, at 749PM, Patricia Shanahan wrote:
> 
>> The way I see it, the really big gain is going to 1.5. That gets us the initial implementation of the concurrent and atomic classes in java.util.*, and generics.
>> 
>> Going to 1.6 adds some value, but not as big a step. For example, my TaskManager rewrite would be a bit simpler with the 1.6 version of java.util.TreeSet, but I can work around the missing methods.
>> 
>> I would rather give up the 1.6 features that are not in 1.5, at least for now, than give up an interested, active user.
>> 
>> Patricia
>> 
>> 
>> On 12/2/2010 4:17 PM, MICHAEL MCGRADY wrote:
>>> The status of Real Time Java is not a sentimental matter, but an
>>> instructive fact of Sun culture.
>>> 
>>> The first thing should be to see is where Java 1.6 might be a plus
>>> for River.  Can you list these areas?  That would be very helpful.
>>> 
>>> MG
>>> 
>>> 
>>> On Dec 2, 2010, at 3:58 PM, Dennis Reedy wrote:
>>> 
>>>> Well all sentimentality aside for JSR 1, I still stick with my
>>>> earlier suggestion of:
>>>> 
>>>> I would encourage that as River moves along it's roadmap, once the
>>>> namespace is changed to org.apache.river, that River mandates 1.6
>>>> as a baseline. Migration guides and/or utilities can be provided to
>>>> assist in the transition from legacy Jini to River.
>>>> 
>>>> Regards
>>>> 
>>>> Dennis
>>>> 
>>>> On Dec 2, 2010, at 545PM, MICHAEL MCGRADY wrote:
>>>> 
>>>>> If there is a way to move forward and keep River compatible with
>>>>> Java 1.5, that would be ideal.  We obviously cannot just stand
>>>>> still even though Java RTS might for a time.  It is hard to tell
>>>>> at this stage what is happening because of the Oracle purchase of
>>>>> Sun and speculation is not a thing I like to do.  However, we do
>>>>> know that Java RTS is the first Java Community Process, i.e.
>>>>> literally No. 1, and I cannot believe that Java would abandon
>>>>> this effort to the dustbin of history.  That would not bode well
>>>>> for Java as a platform.
>>>>> 
>>>>> MG
>>>>> 
>>>>> 
>>>>> On Dec 2, 2010, at 2:00 PM, Dennis Reedy wrote:
>>>>> 
>>>>>> If you're fine with River 2.1.1 then you have a platform which
>>>>>> you can move forward with right? That release is baselined at
>>>>>> Java 1.4.
>>>>>> 
>>>>>> As River moves forward with it's roadmap, changing the com.sun
>>>>>> namespace to org.apache, and possibly moving to Java 1.6, you
>>>>>> would still have a platform (2.1.1) that you could use.
>>>>>> 
>>>>>> As RTJ (hopefully) moves forward with eventual 1.6+
>>>>>> interoperability at that point you could move to River,
>>>>>> including product changes to account for the namespace change
>>>>>> as well.
>>>>>> 
>>>>>> Does that suffice?
>>>>>> 
>>>>>> On Dec 2, 2010, at 337PM, MICHAEL MCGRADY wrote:
>>>>>> 
>>>>>>> More on this later, but I am certainly aware that River
>>>>>>> cannot stay stagnant at Java 1.5.  We need to be realistic
>>>>>>> but the real-time Java is going to "hit" in the near term, I
>>>>>>> think.  There might need to be options and tracks and
>>>>>>> whatever makes sense to River.
>>>>>>> 
>>>>>>> MG
>>>>>>> 
>>>>>>> 
>>>>>>> On Dec 2, 2010, at 10:42 AM, Dennis Reedy wrote:
>>>>>>> 
>>>>>>>> 
>>>>>>>> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>>>>>>>> 
>>>>>>>>> Perhaps this will help: on the generic question of going
>>>>>>>>> to Java 1.6, and my plea not to do it.
>>>>>>>>> 
>>>>>>>>> http://www.devx.com/Java/Article/33475
>>>>>>>> 
>>>>>>>> Michael,
>>>>>>>> 
>>>>>>>> Thanks for the link. You may also find more information
>>>>>>>> here:
>>>>>>>> http://java.sun.com/javase/technologies/realtime/faq.jsp
>>>>>>>> 
>>>>>>>> One thing on this topic that I am curious about is what
>>>>>>>> Oracle's plan is for RTJ. We certainly cant answer that in
>>>>>>>> this forum. But... will they keep it? If so, and if they
>>>>>>>> are given a large enough business opportunity for it's use,
>>>>>>>> will they move towards supporting 1.6? While this is a very
>>>>>>>> interesting and compelling technical use of River, is it
>>>>>>>> enough to prohibit River moving to 1.6 and beyond?
>>>>>>>> 
>>>>>>>> Just asking ...
>>>>>>>> 
>>>>>>>> Regards
>>>>>>>> 
>>>>>>>> Dennis
>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>>>>> mmcgrady@topiatechnology.com
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>> 
>>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>>> mmcgrady@topiatechnology.com
>>>>> 
>>>>> 
>>>>> 
>>>> 
>>> 
>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>> mmcgrady@topiatechnology.com
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>> 
> 

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Greg Trasuk <tr...@stratuscom.com>.
On Thu, 2010-12-02 at 21:34, Patricia Shanahan wrote:

> I believe that, in order to use the most relevant features of 1.6 we 
> would have to run with a 1.6 JVM and rt.jar. The question is whether the 
> gains from going to 1.6, rather than 1.5, are worth the cost.
> 
> We know at least some of the cost of compiling to 1.6, abandoning anyone 
> who is stuck on 1.5.
> 
> Now I'm trying to probe the cost of compiling to 1.5, but testing with 
> both 1.5 and 1.6 JVMs. I understand the cost to River developers, 
> especially the loss of the 1.6 java.util enhancements - and I think it 
> is a manageable convenience cost.
> 
> Now I'm asking "Does compiling River to 1.5 impose a cost on 1.6 users, 
> assuming we do QA test against JVM 1.6 as well as JVM 1.5?".
> 
> Patricia

It's probably worth mentioning that int he J2EE world, there are many,
many folks out there on JDK 1.5 or earlier (for instance users of
Websphere Application Server 6).  There's no reason you can't call Jini
services from within a web layer (well, to be totally open I haven't
tried it under WAS6, but certainly have done it with no issues under
Tomcat).  So I can see some justification for not mandating JDK 1.6 just
yet.

Cheers,

Greg.
-- 
Greg Trasuk, President
StratusCom Manufacturing Systems Inc. - We use information technology to
solve business problems on your plant floor.
http://stratuscom.com


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Patricia Shanahan <pa...@acm.org>.
During this sort of discussion you may not be able to combine two or 
more of my messages, from several hours apart, and parse them together 
to get a single coherent position. That won't happen until we have 
finished discussing the subject and there is no more input that might 
change my mind.

I don't know exactly what you mean by "baseline". To me the key 
questions are what is our compilation target, and what versions do we 
test against. If we pick release N as compilation target, we should be 
able to test with JVM N, N+1, N+2, ... . On the other hand, if we don't 
routinely compile targeting N, we won't be able to run on JVM N, because 
N-incompatible source code changes will creep in.

I believe that, in order to use the most relevant features of 1.6 we 
would have to run with a 1.6 JVM and rt.jar. The question is whether the 
gains from going to 1.6, rather than 1.5, are worth the cost.

We know at least some of the cost of compiling to 1.6, abandoning anyone 
who is stuck on 1.5.

Now I'm trying to probe the cost of compiling to 1.5, but testing with 
both 1.5 and 1.6 JVMs. I understand the cost to River developers, 
especially the loss of the 1.6 java.util enhancements - and I think it 
is a manageable convenience cost.

Now I'm asking "Does compiling River to 1.5 impose a cost on 1.6 users, 
assuming we do QA test against JVM 1.6 as well as JVM 1.5?".

Patricia


Dennis Reedy wrote:
> Trying to parse this correctly, let me make sure I understand what you are saying:
> 
> Baseline River on Java 1.6 and have a compile target of 1.5?
> 
> If so, how does this relate to your earlier post?
> 
> On Dec 2, 2010, at 940AM, Patricia Shanahan wrote:
> 
>> In my opinion, the differences between 1.5 and 1.6 that would most benefit River are in java.util and its sub-packages. 1.5 added a good set of concurrency support. 1.6 improved it based on experience.
>>
>> The only way I know to get a 1.6 rt.jar is to run with a 1.6 JVM.
> 
> 
> IMO, as River moves through it's roadmap, move to JDK to 1.6 when you make the namespace change. Branch the 2.1.2 version, keep it JDK 1.4. The 2.1.2 branch will still have the com.sun namepsace. and provide legacy support for those that need it. If possible (and if needed), make changes to that branch as changes and bug fixes are made to trunk. If those that are interested and engaged want to help with that effort, they can certainly become engaged and help make that happen.
> 
> Regards
> 
> Dennis
> 
> On Dec 2, 2010, at 842PM, Patricia Shanahan wrote:
> 
>> Would your use of River be adversely affected by a decision to limit River source code to 1.5 compatible features, compile with target 1.5, and test it with both 1.5 and 1.6?
>>
>> Patricia
>>
>>
>> On 12/2/2010 5:26 PM, Dennis Reedy wrote:
>>> Patricia,
>>>
>>> There are many interested and active users. Michael is just one that has expressed his opinions. I am also one, and have expressed mine (I urge others on this list to also express their opinions). The systems that I currently work with (in DoD and beyond) all use River, and all are based on 1.6. I dont see how moving to a baseline that has its Java Technology End of Life (EOL) transition period that ended October 8th, 2009 is a good plan for the future of River.
>>>
>>> The JSR1 requirements are easily met by the current distribution of River. We do not know the future of Oracle's plan with RTSJ. That combined with the recent post that Thread.interrupt() breaks classloading in 1.5 and that there's no feasible workaround for River seen, why baseline on a technology that is not only EOL, but also has known issues?
>>>
>>> Dennis
>>>
>>> On Dec 2, 2010, at 749PM, Patricia Shanahan wrote:
>>>
>>>> The way I see it, the really big gain is going to 1.5. That gets us the initial implementation of the concurrent and atomic classes in java.util.*, and generics.
>>>>
>>>> Going to 1.6 adds some value, but not as big a step. For example, my TaskManager rewrite would be a bit simpler with the 1.6 version of java.util.TreeSet, but I can work around the missing methods.
>>>>
>>>> I would rather give up the 1.6 features that are not in 1.5, at least for now, than give up an interested, active user.
>>>>
>>>> Patricia
>>>>
>>>>
>>>> On 12/2/2010 4:17 PM, MICHAEL MCGRADY wrote:
>>>>> The status of Real Time Java is not a sentimental matter, but an
>>>>> instructive fact of Sun culture.
>>>>>
>>>>> The first thing should be to see is where Java 1.6 might be a plus
>>>>> for River.  Can you list these areas?  That would be very helpful.
>>>>>
>>>>> MG
>>>>>
>>>>>
>>>>> On Dec 2, 2010, at 3:58 PM, Dennis Reedy wrote:
>>>>>
>>>>>> Well all sentimentality aside for JSR 1, I still stick with my
>>>>>> earlier suggestion of:
>>>>>>
>>>>>> I would encourage that as River moves along it's roadmap, once the
>>>>>> namespace is changed to org.apache.river, that River mandates 1.6
>>>>>> as a baseline. Migration guides and/or utilities can be provided to
>>>>>> assist in the transition from legacy Jini to River.
>>>>>>
>>>>>> Regards
>>>>>>
>>>>>> Dennis
>>>>>>
>>>>>> On Dec 2, 2010, at 545PM, MICHAEL MCGRADY wrote:
>>>>>>
>>>>>>> If there is a way to move forward and keep River compatible with
>>>>>>> Java 1.5, that would be ideal.  We obviously cannot just stand
>>>>>>> still even though Java RTS might for a time.  It is hard to tell
>>>>>>> at this stage what is happening because of the Oracle purchase of
>>>>>>> Sun and speculation is not a thing I like to do.  However, we do
>>>>>>> know that Java RTS is the first Java Community Process, i.e.
>>>>>>> literally No. 1, and I cannot believe that Java would abandon
>>>>>>> this effort to the dustbin of history.  That would not bode well
>>>>>>> for Java as a platform.
>>>>>>>
>>>>>>> MG
>>>>>>>
>>>>>>>
>>>>>>> On Dec 2, 2010, at 2:00 PM, Dennis Reedy wrote:
>>>>>>>
>>>>>>>> If you're fine with River 2.1.1 then you have a platform which
>>>>>>>> you can move forward with right? That release is baselined at
>>>>>>>> Java 1.4.
>>>>>>>>
>>>>>>>> As River moves forward with it's roadmap, changing the com.sun
>>>>>>>> namespace to org.apache, and possibly moving to Java 1.6, you
>>>>>>>> would still have a platform (2.1.1) that you could use.
>>>>>>>>
>>>>>>>> As RTJ (hopefully) moves forward with eventual 1.6+
>>>>>>>> interoperability at that point you could move to River,
>>>>>>>> including product changes to account for the namespace change
>>>>>>>> as well.
>>>>>>>>
>>>>>>>> Does that suffice?
>>>>>>>>
>>>>>>>> On Dec 2, 2010, at 337PM, MICHAEL MCGRADY wrote:
>>>>>>>>
>>>>>>>>> More on this later, but I am certainly aware that River
>>>>>>>>> cannot stay stagnant at Java 1.5.  We need to be realistic
>>>>>>>>> but the real-time Java is going to "hit" in the near term, I
>>>>>>>>> think.  There might need to be options and tracks and
>>>>>>>>> whatever makes sense to River.
>>>>>>>>>
>>>>>>>>> MG
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Dec 2, 2010, at 10:42 AM, Dennis Reedy wrote:
>>>>>>>>>
>>>>>>>>>> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>>>>>>>>>>
>>>>>>>>>>> Perhaps this will help: on the generic question of going
>>>>>>>>>>> to Java 1.6, and my plea not to do it.
>>>>>>>>>>>
>>>>>>>>>>> http://www.devx.com/Java/Article/33475
>>>>>>>>>> Michael,
>>>>>>>>>>
>>>>>>>>>> Thanks for the link. You may also find more information
>>>>>>>>>> here:
>>>>>>>>>> http://java.sun.com/javase/technologies/realtime/faq.jsp
>>>>>>>>>>
>>>>>>>>>> One thing on this topic that I am curious about is what
>>>>>>>>>> Oracle's plan is for RTJ. We certainly cant answer that in
>>>>>>>>>> this forum. But... will they keep it? If so, and if they
>>>>>>>>>> are given a large enough business opportunity for it's use,
>>>>>>>>>> will they move towards supporting 1.6? While this is a very
>>>>>>>>>> interesting and compelling technical use of River, is it
>>>>>>>>>> enough to prohibit River moving to 1.6 and beyond?
>>>>>>>>>>
>>>>>>>>>> Just asking ...
>>>>>>>>>>
>>>>>>>>>> Regards
>>>>>>>>>>
>>>>>>>>>> Dennis
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>>>>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>>>>>>> mmcgrady@topiatechnology.com
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>>>>> mmcgrady@topiatechnology.com
>>>>>>>
>>>>>>>
>>>>>>>
>>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>>> mmcgrady@topiatechnology.com
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>
> 
> 


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
Trying to parse this correctly, let me make sure I understand what you are saying:

Baseline River on Java 1.6 and have a compile target of 1.5?

If so, how does this relate to your earlier post?

On Dec 2, 2010, at 940AM, Patricia Shanahan wrote:

> In my opinion, the differences between 1.5 and 1.6 that would most benefit River are in java.util and its sub-packages. 1.5 added a good set of concurrency support. 1.6 improved it based on experience.
> 
> The only way I know to get a 1.6 rt.jar is to run with a 1.6 JVM.


IMO, as River moves through it's roadmap, move to JDK to 1.6 when you make the namespace change. Branch the 2.1.2 version, keep it JDK 1.4. The 2.1.2 branch will still have the com.sun namepsace. and provide legacy support for those that need it. If possible (and if needed), make changes to that branch as changes and bug fixes are made to trunk. If those that are interested and engaged want to help with that effort, they can certainly become engaged and help make that happen.

Regards

Dennis

On Dec 2, 2010, at 842PM, Patricia Shanahan wrote:

> Would your use of River be adversely affected by a decision to limit River source code to 1.5 compatible features, compile with target 1.5, and test it with both 1.5 and 1.6?
> 
> Patricia
> 
> 
> On 12/2/2010 5:26 PM, Dennis Reedy wrote:
>> Patricia,
>> 
>> There are many interested and active users. Michael is just one that has expressed his opinions. I am also one, and have expressed mine (I urge others on this list to also express their opinions). The systems that I currently work with (in DoD and beyond) all use River, and all are based on 1.6. I dont see how moving to a baseline that has its Java Technology End of Life (EOL) transition period that ended October 8th, 2009 is a good plan for the future of River.
>> 
>> The JSR1 requirements are easily met by the current distribution of River. We do not know the future of Oracle's plan with RTSJ. That combined with the recent post that Thread.interrupt() breaks classloading in 1.5 and that there's no feasible workaround for River seen, why baseline on a technology that is not only EOL, but also has known issues?
>> 
>> Dennis
>> 
>> On Dec 2, 2010, at 749PM, Patricia Shanahan wrote:
>> 
>>> The way I see it, the really big gain is going to 1.5. That gets us the initial implementation of the concurrent and atomic classes in java.util.*, and generics.
>>> 
>>> Going to 1.6 adds some value, but not as big a step. For example, my TaskManager rewrite would be a bit simpler with the 1.6 version of java.util.TreeSet, but I can work around the missing methods.
>>> 
>>> I would rather give up the 1.6 features that are not in 1.5, at least for now, than give up an interested, active user.
>>> 
>>> Patricia
>>> 
>>> 
>>> On 12/2/2010 4:17 PM, MICHAEL MCGRADY wrote:
>>>> The status of Real Time Java is not a sentimental matter, but an
>>>> instructive fact of Sun culture.
>>>> 
>>>> The first thing should be to see is where Java 1.6 might be a plus
>>>> for River.  Can you list these areas?  That would be very helpful.
>>>> 
>>>> MG
>>>> 
>>>> 
>>>> On Dec 2, 2010, at 3:58 PM, Dennis Reedy wrote:
>>>> 
>>>>> Well all sentimentality aside for JSR 1, I still stick with my
>>>>> earlier suggestion of:
>>>>> 
>>>>> I would encourage that as River moves along it's roadmap, once the
>>>>> namespace is changed to org.apache.river, that River mandates 1.6
>>>>> as a baseline. Migration guides and/or utilities can be provided to
>>>>> assist in the transition from legacy Jini to River.
>>>>> 
>>>>> Regards
>>>>> 
>>>>> Dennis
>>>>> 
>>>>> On Dec 2, 2010, at 545PM, MICHAEL MCGRADY wrote:
>>>>> 
>>>>>> If there is a way to move forward and keep River compatible with
>>>>>> Java 1.5, that would be ideal.  We obviously cannot just stand
>>>>>> still even though Java RTS might for a time.  It is hard to tell
>>>>>> at this stage what is happening because of the Oracle purchase of
>>>>>> Sun and speculation is not a thing I like to do.  However, we do
>>>>>> know that Java RTS is the first Java Community Process, i.e.
>>>>>> literally No. 1, and I cannot believe that Java would abandon
>>>>>> this effort to the dustbin of history.  That would not bode well
>>>>>> for Java as a platform.
>>>>>> 
>>>>>> MG
>>>>>> 
>>>>>> 
>>>>>> On Dec 2, 2010, at 2:00 PM, Dennis Reedy wrote:
>>>>>> 
>>>>>>> If you're fine with River 2.1.1 then you have a platform which
>>>>>>> you can move forward with right? That release is baselined at
>>>>>>> Java 1.4.
>>>>>>> 
>>>>>>> As River moves forward with it's roadmap, changing the com.sun
>>>>>>> namespace to org.apache, and possibly moving to Java 1.6, you
>>>>>>> would still have a platform (2.1.1) that you could use.
>>>>>>> 
>>>>>>> As RTJ (hopefully) moves forward with eventual 1.6+
>>>>>>> interoperability at that point you could move to River,
>>>>>>> including product changes to account for the namespace change
>>>>>>> as well.
>>>>>>> 
>>>>>>> Does that suffice?
>>>>>>> 
>>>>>>> On Dec 2, 2010, at 337PM, MICHAEL MCGRADY wrote:
>>>>>>> 
>>>>>>>> More on this later, but I am certainly aware that River
>>>>>>>> cannot stay stagnant at Java 1.5.  We need to be realistic
>>>>>>>> but the real-time Java is going to "hit" in the near term, I
>>>>>>>> think.  There might need to be options and tracks and
>>>>>>>> whatever makes sense to River.
>>>>>>>> 
>>>>>>>> MG
>>>>>>>> 
>>>>>>>> 
>>>>>>>> On Dec 2, 2010, at 10:42 AM, Dennis Reedy wrote:
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>>>>>>>>> 
>>>>>>>>>> Perhaps this will help: on the generic question of going
>>>>>>>>>> to Java 1.6, and my plea not to do it.
>>>>>>>>>> 
>>>>>>>>>> http://www.devx.com/Java/Article/33475
>>>>>>>>> 
>>>>>>>>> Michael,
>>>>>>>>> 
>>>>>>>>> Thanks for the link. You may also find more information
>>>>>>>>> here:
>>>>>>>>> http://java.sun.com/javase/technologies/realtime/faq.jsp
>>>>>>>>> 
>>>>>>>>> One thing on this topic that I am curious about is what
>>>>>>>>> Oracle's plan is for RTJ. We certainly cant answer that in
>>>>>>>>> this forum. But... will they keep it? If so, and if they
>>>>>>>>> are given a large enough business opportunity for it's use,
>>>>>>>>> will they move towards supporting 1.6? While this is a very
>>>>>>>>> interesting and compelling technical use of River, is it
>>>>>>>>> enough to prohibit River moving to 1.6 and beyond?
>>>>>>>>> 
>>>>>>>>> Just asking ...
>>>>>>>>> 
>>>>>>>>> Regards
>>>>>>>>> 
>>>>>>>>> Dennis
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>>>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>>>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>>>>>> mmcgrady@topiatechnology.com
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>>>> mmcgrady@topiatechnology.com
>>>>>> 
>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>> mmcgrady@topiatechnology.com
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>> 
>> 
>> 
> 


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Patricia Shanahan <pa...@acm.org>.
Would your use of River be adversely affected by a decision to limit 
River source code to 1.5 compatible features, compile with target 1.5, 
and test it with both 1.5 and 1.6?

Patricia


On 12/2/2010 5:26 PM, Dennis Reedy wrote:
> Patricia,
>
> There are many interested and active users. Michael is just one that has expressed his opinions. I am also one, and have expressed mine (I urge others on this list to also express their opinions). The systems that I currently work with (in DoD and beyond) all use River, and all are based on 1.6. I dont see how moving to a baseline that has its Java Technology End of Life (EOL) transition period that ended October 8th, 2009 is a good plan for the future of River.
>
> The JSR1 requirements are easily met by the current distribution of River. We do not know the future of Oracle's plan with RTSJ. That combined with the recent post that Thread.interrupt() breaks classloading in 1.5 and that there's no feasible workaround for River seen, why baseline on a technology that is not only EOL, but also has known issues?
>
> Dennis
>
> On Dec 2, 2010, at 749PM, Patricia Shanahan wrote:
>
>> The way I see it, the really big gain is going to 1.5. That gets us the initial implementation of the concurrent and atomic classes in java.util.*, and generics.
>>
>> Going to 1.6 adds some value, but not as big a step. For example, my TaskManager rewrite would be a bit simpler with the 1.6 version of java.util.TreeSet, but I can work around the missing methods.
>>
>> I would rather give up the 1.6 features that are not in 1.5, at least for now, than give up an interested, active user.
>>
>> Patricia
>>
>>
>> On 12/2/2010 4:17 PM, MICHAEL MCGRADY wrote:
>>> The status of Real Time Java is not a sentimental matter, but an
>>> instructive fact of Sun culture.
>>>
>>> The first thing should be to see is where Java 1.6 might be a plus
>>> for River.  Can you list these areas?  That would be very helpful.
>>>
>>> MG
>>>
>>>
>>> On Dec 2, 2010, at 3:58 PM, Dennis Reedy wrote:
>>>
>>>> Well all sentimentality aside for JSR 1, I still stick with my
>>>> earlier suggestion of:
>>>>
>>>> I would encourage that as River moves along it's roadmap, once the
>>>> namespace is changed to org.apache.river, that River mandates 1.6
>>>> as a baseline. Migration guides and/or utilities can be provided to
>>>> assist in the transition from legacy Jini to River.
>>>>
>>>> Regards
>>>>
>>>> Dennis
>>>>
>>>> On Dec 2, 2010, at 545PM, MICHAEL MCGRADY wrote:
>>>>
>>>>> If there is a way to move forward and keep River compatible with
>>>>> Java 1.5, that would be ideal.  We obviously cannot just stand
>>>>> still even though Java RTS might for a time.  It is hard to tell
>>>>> at this stage what is happening because of the Oracle purchase of
>>>>> Sun and speculation is not a thing I like to do.  However, we do
>>>>> know that Java RTS is the first Java Community Process, i.e.
>>>>> literally No. 1, and I cannot believe that Java would abandon
>>>>> this effort to the dustbin of history.  That would not bode well
>>>>> for Java as a platform.
>>>>>
>>>>> MG
>>>>>
>>>>>
>>>>> On Dec 2, 2010, at 2:00 PM, Dennis Reedy wrote:
>>>>>
>>>>>> If you're fine with River 2.1.1 then you have a platform which
>>>>>> you can move forward with right? That release is baselined at
>>>>>> Java 1.4.
>>>>>>
>>>>>> As River moves forward with it's roadmap, changing the com.sun
>>>>>> namespace to org.apache, and possibly moving to Java 1.6, you
>>>>>> would still have a platform (2.1.1) that you could use.
>>>>>>
>>>>>> As RTJ (hopefully) moves forward with eventual 1.6+
>>>>>> interoperability at that point you could move to River,
>>>>>> including product changes to account for the namespace change
>>>>>> as well.
>>>>>>
>>>>>> Does that suffice?
>>>>>>
>>>>>> On Dec 2, 2010, at 337PM, MICHAEL MCGRADY wrote:
>>>>>>
>>>>>>> More on this later, but I am certainly aware that River
>>>>>>> cannot stay stagnant at Java 1.5.  We need to be realistic
>>>>>>> but the real-time Java is going to "hit" in the near term, I
>>>>>>> think.  There might need to be options and tracks and
>>>>>>> whatever makes sense to River.
>>>>>>>
>>>>>>> MG
>>>>>>>
>>>>>>>
>>>>>>> On Dec 2, 2010, at 10:42 AM, Dennis Reedy wrote:
>>>>>>>
>>>>>>>>
>>>>>>>> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>>>>>>>>
>>>>>>>>> Perhaps this will help: on the generic question of going
>>>>>>>>> to Java 1.6, and my plea not to do it.
>>>>>>>>>
>>>>>>>>> http://www.devx.com/Java/Article/33475
>>>>>>>>
>>>>>>>> Michael,
>>>>>>>>
>>>>>>>> Thanks for the link. You may also find more information
>>>>>>>> here:
>>>>>>>> http://java.sun.com/javase/technologies/realtime/faq.jsp
>>>>>>>>
>>>>>>>> One thing on this topic that I am curious about is what
>>>>>>>> Oracle's plan is for RTJ. We certainly cant answer that in
>>>>>>>> this forum. But... will they keep it? If so, and if they
>>>>>>>> are given a large enough business opportunity for it's use,
>>>>>>>> will they move towards supporting 1.6? While this is a very
>>>>>>>> interesting and compelling technical use of River, is it
>>>>>>>> enough to prohibit River moving to 1.6 and beyond?
>>>>>>>>
>>>>>>>> Just asking ...
>>>>>>>>
>>>>>>>> Regards
>>>>>>>>
>>>>>>>> Dennis
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>>>>> mmcgrady@topiatechnology.com
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>>> mmcgrady@topiatechnology.com
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>> mmcgrady@topiatechnology.com
>>>
>>>
>>>
>>>
>>>
>>>
>>
>
>


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
Patricia,

There are many interested and active users. Michael is just one that has expressed his opinions. I am also one, and have expressed mine (I urge others on this list to also express their opinions). The systems that I currently work with (in DoD and beyond) all use River, and all are based on 1.6. I dont see how moving to a baseline that has its Java Technology End of Life (EOL) transition period that ended October 8th, 2009 is a good plan for the future of River. 

The JSR1 requirements are easily met by the current distribution of River. We do not know the future of Oracle's plan with RTSJ. That combined with the recent post that Thread.interrupt() breaks classloading in 1.5 and that there's no feasible workaround for River seen, why baseline on a technology that is not only EOL, but also has known issues?

Dennis

On Dec 2, 2010, at 749PM, Patricia Shanahan wrote:

> The way I see it, the really big gain is going to 1.5. That gets us the initial implementation of the concurrent and atomic classes in java.util.*, and generics.
> 
> Going to 1.6 adds some value, but not as big a step. For example, my TaskManager rewrite would be a bit simpler with the 1.6 version of java.util.TreeSet, but I can work around the missing methods.
> 
> I would rather give up the 1.6 features that are not in 1.5, at least for now, than give up an interested, active user.
> 
> Patricia
> 
> 
> On 12/2/2010 4:17 PM, MICHAEL MCGRADY wrote:
>> The status of Real Time Java is not a sentimental matter, but an
>> instructive fact of Sun culture.
>> 
>> The first thing should be to see is where Java 1.6 might be a plus
>> for River.  Can you list these areas?  That would be very helpful.
>> 
>> MG
>> 
>> 
>> On Dec 2, 2010, at 3:58 PM, Dennis Reedy wrote:
>> 
>>> Well all sentimentality aside for JSR 1, I still stick with my
>>> earlier suggestion of:
>>> 
>>> I would encourage that as River moves along it's roadmap, once the
>>> namespace is changed to org.apache.river, that River mandates 1.6
>>> as a baseline. Migration guides and/or utilities can be provided to
>>> assist in the transition from legacy Jini to River.
>>> 
>>> Regards
>>> 
>>> Dennis
>>> 
>>> On Dec 2, 2010, at 545PM, MICHAEL MCGRADY wrote:
>>> 
>>>> If there is a way to move forward and keep River compatible with
>>>> Java 1.5, that would be ideal.  We obviously cannot just stand
>>>> still even though Java RTS might for a time.  It is hard to tell
>>>> at this stage what is happening because of the Oracle purchase of
>>>> Sun and speculation is not a thing I like to do.  However, we do
>>>> know that Java RTS is the first Java Community Process, i.e.
>>>> literally No. 1, and I cannot believe that Java would abandon
>>>> this effort to the dustbin of history.  That would not bode well
>>>> for Java as a platform.
>>>> 
>>>> MG
>>>> 
>>>> 
>>>> On Dec 2, 2010, at 2:00 PM, Dennis Reedy wrote:
>>>> 
>>>>> If you're fine with River 2.1.1 then you have a platform which
>>>>> you can move forward with right? That release is baselined at
>>>>> Java 1.4.
>>>>> 
>>>>> As River moves forward with it's roadmap, changing the com.sun
>>>>> namespace to org.apache, and possibly moving to Java 1.6, you
>>>>> would still have a platform (2.1.1) that you could use.
>>>>> 
>>>>> As RTJ (hopefully) moves forward with eventual 1.6+
>>>>> interoperability at that point you could move to River,
>>>>> including product changes to account for the namespace change
>>>>> as well.
>>>>> 
>>>>> Does that suffice?
>>>>> 
>>>>> On Dec 2, 2010, at 337PM, MICHAEL MCGRADY wrote:
>>>>> 
>>>>>> More on this later, but I am certainly aware that River
>>>>>> cannot stay stagnant at Java 1.5.  We need to be realistic
>>>>>> but the real-time Java is going to "hit" in the near term, I
>>>>>> think.  There might need to be options and tracks and
>>>>>> whatever makes sense to River.
>>>>>> 
>>>>>> MG
>>>>>> 
>>>>>> 
>>>>>> On Dec 2, 2010, at 10:42 AM, Dennis Reedy wrote:
>>>>>> 
>>>>>>> 
>>>>>>> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>>>>>>> 
>>>>>>>> Perhaps this will help: on the generic question of going
>>>>>>>> to Java 1.6, and my plea not to do it.
>>>>>>>> 
>>>>>>>> http://www.devx.com/Java/Article/33475
>>>>>>> 
>>>>>>> Michael,
>>>>>>> 
>>>>>>> Thanks for the link. You may also find more information
>>>>>>> here:
>>>>>>> http://java.sun.com/javase/technologies/realtime/faq.jsp
>>>>>>> 
>>>>>>> One thing on this topic that I am curious about is what
>>>>>>> Oracle's plan is for RTJ. We certainly cant answer that in
>>>>>>> this forum. But... will they keep it? If so, and if they
>>>>>>> are given a large enough business opportunity for it's use,
>>>>>>> will they move towards supporting 1.6? While this is a very
>>>>>>> interesting and compelling technical use of River, is it
>>>>>>> enough to prohibit River moving to 1.6 and beyond?
>>>>>>> 
>>>>>>> Just asking ...
>>>>>>> 
>>>>>>> Regards
>>>>>>> 
>>>>>>> Dennis
>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>>>> mmcgrady@topiatechnology.com
>>>>>> 
>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>> mmcgrady@topiatechnology.com
>>>> 
>>>> 
>>>> 
>>> 
>> 
>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>> mmcgrady@topiatechnology.com
>> 
>> 
>> 
>> 
>> 
>> 
> 


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Patricia Shanahan <pa...@acm.org>.
The way I see it, the really big gain is going to 1.5. That gets us the 
initial implementation of the concurrent and atomic classes in 
java.util.*, and generics.

Going to 1.6 adds some value, but not as big a step. For example, my 
TaskManager rewrite would be a bit simpler with the 1.6 version of 
java.util.TreeSet, but I can work around the missing methods.

I would rather give up the 1.6 features that are not in 1.5, at least 
for now, than give up an interested, active user.

Patricia


On 12/2/2010 4:17 PM, MICHAEL MCGRADY wrote:
> The status of Real Time Java is not a sentimental matter, but an
> instructive fact of Sun culture.
>
> The first thing should be to see is where Java 1.6 might be a plus
> for River.  Can you list these areas?  That would be very helpful.
>
> MG
>
>
> On Dec 2, 2010, at 3:58 PM, Dennis Reedy wrote:
>
>> Well all sentimentality aside for JSR 1, I still stick with my
>> earlier suggestion of:
>>
>> I would encourage that as River moves along it's roadmap, once the
>> namespace is changed to org.apache.river, that River mandates 1.6
>> as a baseline. Migration guides and/or utilities can be provided to
>> assist in the transition from legacy Jini to River.
>>
>> Regards
>>
>> Dennis
>>
>> On Dec 2, 2010, at 545PM, MICHAEL MCGRADY wrote:
>>
>>> If there is a way to move forward and keep River compatible with
>>> Java 1.5, that would be ideal.  We obviously cannot just stand
>>> still even though Java RTS might for a time.  It is hard to tell
>>> at this stage what is happening because of the Oracle purchase of
>>> Sun and speculation is not a thing I like to do.  However, we do
>>> know that Java RTS is the first Java Community Process, i.e.
>>> literally No. 1, and I cannot believe that Java would abandon
>>> this effort to the dustbin of history.  That would not bode well
>>> for Java as a platform.
>>>
>>> MG
>>>
>>>
>>> On Dec 2, 2010, at 2:00 PM, Dennis Reedy wrote:
>>>
>>>> If you're fine with River 2.1.1 then you have a platform which
>>>> you can move forward with right? That release is baselined at
>>>> Java 1.4.
>>>>
>>>> As River moves forward with it's roadmap, changing the com.sun
>>>> namespace to org.apache, and possibly moving to Java 1.6, you
>>>> would still have a platform (2.1.1) that you could use.
>>>>
>>>> As RTJ (hopefully) moves forward with eventual 1.6+
>>>> interoperability at that point you could move to River,
>>>> including product changes to account for the namespace change
>>>> as well.
>>>>
>>>> Does that suffice?
>>>>
>>>> On Dec 2, 2010, at 337PM, MICHAEL MCGRADY wrote:
>>>>
>>>>> More on this later, but I am certainly aware that River
>>>>> cannot stay stagnant at Java 1.5.  We need to be realistic
>>>>> but the real-time Java is going to "hit" in the near term, I
>>>>> think.  There might need to be options and tracks and
>>>>> whatever makes sense to River.
>>>>>
>>>>> MG
>>>>>
>>>>>
>>>>> On Dec 2, 2010, at 10:42 AM, Dennis Reedy wrote:
>>>>>
>>>>>>
>>>>>> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>>>>>>
>>>>>>> Perhaps this will help: on the generic question of going
>>>>>>> to Java 1.6, and my plea not to do it.
>>>>>>>
>>>>>>> http://www.devx.com/Java/Article/33475
>>>>>>
>>>>>> Michael,
>>>>>>
>>>>>> Thanks for the link. You may also find more information
>>>>>> here:
>>>>>> http://java.sun.com/javase/technologies/realtime/faq.jsp
>>>>>>
>>>>>> One thing on this topic that I am curious about is what
>>>>>> Oracle's plan is for RTJ. We certainly cant answer that in
>>>>>> this forum. But... will they keep it? If so, and if they
>>>>>> are given a large enough business opportunity for it's use,
>>>>>> will they move towards supporting 1.6? While this is a very
>>>>>> interesting and compelling technical use of River, is it
>>>>>> enough to prohibit River moving to 1.6 and beyond?
>>>>>>
>>>>>> Just asking ...
>>>>>>
>>>>>> Regards
>>>>>>
>>>>>> Dennis
>>>>>>
>>>>>>
>>>>>
>>>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>>>> mmcgrady@topiatechnology.com
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>> Michael McGrady Chief Architect Topia Technology, Inc. Cel
>>> 1.253.720.3365 Work 1.253.572.9712 extension 2037
>>> mmcgrady@topiatechnology.com
>>>
>>>
>>>
>>
>
> Michael McGrady Chief Architect Topia Technology, Inc. Cel
> 1.253.720.3365 Work 1.253.572.9712 extension 2037
> mmcgrady@topiatechnology.com
>
>
>
>
>
>


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by MICHAEL MCGRADY <mm...@topiatechnology.com>.
The status of Real Time Java is not a sentimental matter, but an instructive fact of Sun culture.  

The first thing should be to see is where Java 1.6 might be a plus for River.  Can you list these areas?  That would be very helpful.

MG


On Dec 2, 2010, at 3:58 PM, Dennis Reedy wrote:

> Well all sentimentality aside for JSR 1, I still stick with my earlier suggestion of:
> 
> I would encourage that as River moves along it's roadmap, once the namespace is changed to org.apache.river, that River mandates 1.6 as a baseline. Migration guides and/or utilities can be provided to assist in the transition from legacy Jini to River. 
> 
> Regards
> 
> Dennis
> 
> On Dec 2, 2010, at 545PM, MICHAEL MCGRADY wrote:
> 
>> If there is a way to move forward and keep River compatible with Java 1.5, that would be ideal.  We obviously cannot just stand still even though Java RTS might for a time.  It is hard to tell at this stage what is happening because of the Oracle purchase of Sun and speculation is not a thing I like to do.  However, we do know that Java RTS is the first Java Community Process, i.e. literally No. 1, and I cannot believe that Java would abandon this effort to the dustbin of history.  That would not bode well for Java as a platform.  
>> 
>> MG
>> 
>> 
>> On Dec 2, 2010, at 2:00 PM, Dennis Reedy wrote:
>> 
>>> If you're fine with River 2.1.1 then you have a platform which you can move forward with right? That release is baselined at Java 1.4.
>>> 
>>> As River moves forward with it's roadmap, changing the com.sun namespace to org.apache, and possibly moving to Java 1.6, you would still have a platform (2.1.1) that you could use.
>>> 
>>> As RTJ (hopefully) moves forward with eventual 1.6+ interoperability at that point you could move to River, including product changes to account for the namespace change as well.
>>> 
>>> Does that suffice?
>>> 
>>> On Dec 2, 2010, at 337PM, MICHAEL MCGRADY wrote:
>>> 
>>>> More on this later, but I am certainly aware that River cannot stay stagnant at Java 1.5.  We need to be realistic but the real-time Java is going to "hit" in the near term, I think.  There might need to be options and tracks and whatever makes sense to River.
>>>> 
>>>> MG
>>>> 
>>>> 
>>>> On Dec 2, 2010, at 10:42 AM, Dennis Reedy wrote:
>>>> 
>>>>> 
>>>>> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>>>>> 
>>>>>> Perhaps this will help: on the generic question of going to Java 1.6, and my plea not to do it.
>>>>>> 
>>>>>> http://www.devx.com/Java/Article/33475
>>>>> 
>>>>> Michael,
>>>>> 
>>>>> Thanks for the link. You may also find more information here: http://java.sun.com/javase/technologies/realtime/faq.jsp
>>>>> 
>>>>> One thing on this topic that I am curious about is what Oracle's plan is for RTJ. We certainly cant answer that in this forum. But... will they keep it? If so, and if they are given a large enough business opportunity for it's use, will they move towards supporting 1.6? While this is a very interesting and compelling technical use of River, is it enough to prohibit River moving to 1.6 and beyond?
>>>>> 
>>>>> Just asking ...
>>>>> 
>>>>> Regards
>>>>> 
>>>>> Dennis
>>>>> 
>>>>> 
>>>> 
>>>> Michael McGrady
>>>> Chief Architect
>>>> Topia Technology, Inc.
>>>> Cel 1.253.720.3365
>>>> Work 1.253.572.9712 extension 2037
>>>> mmcgrady@topiatechnology.com
>>>> 
>>>> 
>>>> 
>>> 
>> 
>> Michael McGrady
>> Chief Architect
>> Topia Technology, Inc.
>> Cel 1.253.720.3365
>> Work 1.253.572.9712 extension 2037
>> mmcgrady@topiatechnology.com
>> 
>> 
>> 
> 

Michael McGrady
Chief Architect
Topia Technology, Inc.
Cel 1.253.720.3365
Work 1.253.572.9712 extension 2037
mmcgrady@topiatechnology.com


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
Well all sentimentality aside for JSR 1, I still stick with my earlier suggestion of:

I would encourage that as River moves along it's roadmap, once the namespace is changed to org.apache.river, that River mandates 1.6 as a baseline. Migration guides and/or utilities can be provided to assist in the transition from legacy Jini to River. 

Regards

Dennis

On Dec 2, 2010, at 545PM, MICHAEL MCGRADY wrote:

> If there is a way to move forward and keep River compatible with Java 1.5, that would be ideal.  We obviously cannot just stand still even though Java RTS might for a time.  It is hard to tell at this stage what is happening because of the Oracle purchase of Sun and speculation is not a thing I like to do.  However, we do know that Java RTS is the first Java Community Process, i.e. literally No. 1, and I cannot believe that Java would abandon this effort to the dustbin of history.  That would not bode well for Java as a platform.  
> 
> MG
> 
> 
> On Dec 2, 2010, at 2:00 PM, Dennis Reedy wrote:
> 
>> If you're fine with River 2.1.1 then you have a platform which you can move forward with right? That release is baselined at Java 1.4.
>> 
>> As River moves forward with it's roadmap, changing the com.sun namespace to org.apache, and possibly moving to Java 1.6, you would still have a platform (2.1.1) that you could use.
>> 
>> As RTJ (hopefully) moves forward with eventual 1.6+ interoperability at that point you could move to River, including product changes to account for the namespace change as well.
>> 
>> Does that suffice?
>> 
>> On Dec 2, 2010, at 337PM, MICHAEL MCGRADY wrote:
>> 
>>> More on this later, but I am certainly aware that River cannot stay stagnant at Java 1.5.  We need to be realistic but the real-time Java is going to "hit" in the near term, I think.  There might need to be options and tracks and whatever makes sense to River.
>>> 
>>> MG
>>> 
>>> 
>>> On Dec 2, 2010, at 10:42 AM, Dennis Reedy wrote:
>>> 
>>>> 
>>>> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>>>> 
>>>>> Perhaps this will help: on the generic question of going to Java 1.6, and my plea not to do it.
>>>>> 
>>>>> http://www.devx.com/Java/Article/33475
>>>> 
>>>> Michael,
>>>> 
>>>> Thanks for the link. You may also find more information here: http://java.sun.com/javase/technologies/realtime/faq.jsp
>>>> 
>>>> One thing on this topic that I am curious about is what Oracle's plan is for RTJ. We certainly cant answer that in this forum. But... will they keep it? If so, and if they are given a large enough business opportunity for it's use, will they move towards supporting 1.6? While this is a very interesting and compelling technical use of River, is it enough to prohibit River moving to 1.6 and beyond?
>>>> 
>>>> Just asking ...
>>>> 
>>>> Regards
>>>> 
>>>> Dennis
>>>> 
>>>> 
>>> 
>>> Michael McGrady
>>> Chief Architect
>>> Topia Technology, Inc.
>>> Cel 1.253.720.3365
>>> Work 1.253.572.9712 extension 2037
>>> mmcgrady@topiatechnology.com
>>> 
>>> 
>>> 
>> 
> 
> Michael McGrady
> Chief Architect
> Topia Technology, Inc.
> Cel 1.253.720.3365
> Work 1.253.572.9712 extension 2037
> mmcgrady@topiatechnology.com
> 
> 
> 


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by MICHAEL MCGRADY <mm...@topiatechnology.com>.
If there is a way to move forward and keep River compatible with Java 1.5, that would be ideal.  We obviously cannot just stand still even though Java RTS might for a time.  It is hard to tell at this stage what is happening because of the Oracle purchase of Sun and speculation is not a thing I like to do.  However, we do know that Java RTS is the first Java Community Process, i.e. literally No. 1, and I cannot believe that Java would abandon this effort to the dustbin of history.  That would not bode well for Java as a platform.  

MG


On Dec 2, 2010, at 2:00 PM, Dennis Reedy wrote:

> If you're fine with River 2.1.1 then you have a platform which you can move forward with right? That release is baselined at Java 1.4.
> 
> As River moves forward with it's roadmap, changing the com.sun namespace to org.apache, and possibly moving to Java 1.6, you would still have a platform (2.1.1) that you could use.
> 
> As RTJ (hopefully) moves forward with eventual 1.6+ interoperability at that point you could move to River, including product changes to account for the namespace change as well.
> 
> Does that suffice?
> 
> On Dec 2, 2010, at 337PM, MICHAEL MCGRADY wrote:
> 
>> More on this later, but I am certainly aware that River cannot stay stagnant at Java 1.5.  We need to be realistic but the real-time Java is going to "hit" in the near term, I think.  There might need to be options and tracks and whatever makes sense to River.
>> 
>> MG
>> 
>> 
>> On Dec 2, 2010, at 10:42 AM, Dennis Reedy wrote:
>> 
>>> 
>>> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>>> 
>>>> Perhaps this will help: on the generic question of going to Java 1.6, and my plea not to do it.
>>>> 
>>>> http://www.devx.com/Java/Article/33475
>>> 
>>> Michael,
>>> 
>>> Thanks for the link. You may also find more information here: http://java.sun.com/javase/technologies/realtime/faq.jsp
>>> 
>>> One thing on this topic that I am curious about is what Oracle's plan is for RTJ. We certainly cant answer that in this forum. But... will they keep it? If so, and if they are given a large enough business opportunity for it's use, will they move towards supporting 1.6? While this is a very interesting and compelling technical use of River, is it enough to prohibit River moving to 1.6 and beyond?
>>> 
>>> Just asking ...
>>> 
>>> Regards
>>> 
>>> Dennis
>>> 
>>> 
>> 
>> Michael McGrady
>> Chief Architect
>> Topia Technology, Inc.
>> Cel 1.253.720.3365
>> Work 1.253.572.9712 extension 2037
>> mmcgrady@topiatechnology.com
>> 
>> 
>> 
> 

Michael McGrady
Chief Architect
Topia Technology, Inc.
Cel 1.253.720.3365
Work 1.253.572.9712 extension 2037
mmcgrady@topiatechnology.com


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
If you're fine with River 2.1.1 then you have a platform which you can move forward with right? That release is baselined at Java 1.4.

As River moves forward with it's roadmap, changing the com.sun namespace to org.apache, and possibly moving to Java 1.6, you would still have a platform (2.1.1) that you could use.

As RTJ (hopefully) moves forward with eventual 1.6+ interoperability at that point you could move to River, including product changes to account for the namespace change as well.

Does that suffice?

On Dec 2, 2010, at 337PM, MICHAEL MCGRADY wrote:

> More on this later, but I am certainly aware that River cannot stay stagnant at Java 1.5.  We need to be realistic but the real-time Java is going to "hit" in the near term, I think.  There might need to be options and tracks and whatever makes sense to River.
> 
> MG
> 
> 
> On Dec 2, 2010, at 10:42 AM, Dennis Reedy wrote:
> 
>> 
>> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>> 
>>> Perhaps this will help: on the generic question of going to Java 1.6, and my plea not to do it.
>>> 
>>> http://www.devx.com/Java/Article/33475
>> 
>> Michael,
>> 
>> Thanks for the link. You may also find more information here: http://java.sun.com/javase/technologies/realtime/faq.jsp
>> 
>> One thing on this topic that I am curious about is what Oracle's plan is for RTJ. We certainly cant answer that in this forum. But... will they keep it? If so, and if they are given a large enough business opportunity for it's use, will they move towards supporting 1.6? While this is a very interesting and compelling technical use of River, is it enough to prohibit River moving to 1.6 and beyond?
>> 
>> Just asking ...
>> 
>> Regards
>> 
>> Dennis
>> 
>> 
> 
> Michael McGrady
> Chief Architect
> Topia Technology, Inc.
> Cel 1.253.720.3365
> Work 1.253.572.9712 extension 2037
> mmcgrady@topiatechnology.com
> 
> 
> 


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by MICHAEL MCGRADY <mm...@topiatechnology.com>.
More on this later, but I am certainly aware that River cannot stay stagnant at Java 1.5.  We need to be realistic but the real-time Java is going to "hit" in the near term, I think.  There might need to be options and tracks and whatever makes sense to River.

MG


On Dec 2, 2010, at 10:42 AM, Dennis Reedy wrote:

> 
> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
> 
>> Perhaps this will help: on the generic question of going to Java 1.6, and my plea not to do it.
>> 
>> http://www.devx.com/Java/Article/33475
> 
> Michael,
> 
> Thanks for the link. You may also find more information here: http://java.sun.com/javase/technologies/realtime/faq.jsp
> 
> One thing on this topic that I am curious about is what Oracle's plan is for RTJ. We certainly cant answer that in this forum. But... will they keep it? If so, and if they are given a large enough business opportunity for it's use, will they move towards supporting 1.6? While this is a very interesting and compelling technical use of River, is it enough to prohibit River moving to 1.6 and beyond?
> 
> Just asking ...
> 
> Regards
> 
> Dennis
> 
> 

Michael McGrady
Chief Architect
Topia Technology, Inc.
Cel 1.253.720.3365
Work 1.253.572.9712 extension 2037
mmcgrady@topiatechnology.com


Re: JVM version policy

Posted by Gregg Wonderly <gr...@wonderly.org>.
In relation to "which JVMs are interesting", the article at

<http://terrencebarr.wordpress.com/2010/11/15/java-se-for-embedded-devices-new-release-new-features-better-performance/#comment-661>

has some information about more stuff brewing.  This type of environment could 
be a primary target for Jini enabled applications, and a ServiceUI based 
delivery mechanism.

Gregg Wonderly

On 12/2/2010 12:42 PM, Dennis Reedy wrote:
>
> On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:
>
>> Perhaps this will help: on the generic question of going to Java 1.6, and my plea not to do it.
>>
>> http://www.devx.com/Java/Article/33475
>
> Michael,
>
> Thanks for the link. You may also find more information here: http://java.sun.com/javase/technologies/realtime/faq.jsp
>
> One thing on this topic that I am curious about is what Oracle's plan is for RTJ. We certainly cant answer that in this forum. But... will they keep it? If so, and if they are given a large enough business opportunity for it's use, will they move towards supporting 1.6? While this is a very interesting and compelling technical use of River, is it enough to prohibit River moving to 1.6 and beyond?
>
> Just asking ...
>
> Regards
>
> Dennis
>
>
>


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
On Dec 2, 2010, at 127PM, MICHAEL MCGRADY wrote:

> Perhaps this will help: on the generic question of going to Java 1.6, and my plea not to do it.
> 
> http://www.devx.com/Java/Article/33475

Michael,

Thanks for the link. You may also find more information here: http://java.sun.com/javase/technologies/realtime/faq.jsp

One thing on this topic that I am curious about is what Oracle's plan is for RTJ. We certainly cant answer that in this forum. But... will they keep it? If so, and if they are given a large enough business opportunity for it's use, will they move towards supporting 1.6? While this is a very interesting and compelling technical use of River, is it enough to prohibit River moving to 1.6 and beyond?

Just asking ...

Regards

Dennis



Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by MICHAEL MCGRADY <mm...@topiatechnology.com>.
Perhaps this will help: on the generic question of going to Java 1.6, and my plea not to do it.

http://www.devx.com/Java/Article/33475

We use River and I meant that we will have to find a River substitute or fork the code, if River goes to Java 1.6.

See within for more comments.

MG


On Dec 2, 2010, at 7:27 AM, Dennis Reedy wrote:

> 
> On Dec 2, 2010, at 958AM, MICHAEL MCGRADY wrote:
> 
>> There are no RT requirements for River.  
> 
> Ok, good.
> 
>> There is only the requirement that, if River wants to be compatible with Java RT that it not go to Java 1.6 but stick at Java 1.5.  
> 
> Define compatible? In what specific areas must River be compatible with RTJ? Serialization? Where? Can you be specific? Apologies, but I'm having a hard time parsing through your statements since they are somewhat vague to me. Can you enumerate exactly what River capabilities need to be 'compatible' with 1.5? The entire stack? Portions of it?

See cite above to the URL.

> 
>> Once you touch the network real-time QoS does not go out the window.  
> 
> How so? Are you saying that the network is reliable enough to deliver your request/response in a guaranteed way? Have you developed a specific protocol that is part of the JERI stack that ensure your transport has some real time context? Is River involved in this (other than from a configuration point of view), or is it similar to whats described in this paper: http://www.cs.wustl.edu/~schmidt/PDF/RT-POA.pdf


We have a solution to this which has been highly vetted. and it is not appropriate to discuss it here.  You are welcome to contact me offline.  I am behind on contacts to a number of people on this list because I am so busy but I am interested in all these conversations offline.  Thanks.

> 
>> 
>> We are bound to River-like functionality (JINI) and JavaSpaces and RT in a network context.
> 
> This statement has a ton of hidden implications. River-like functionality? This implies to me that you are doing River (Jini) like things but not using River. Is that right? 
> 
> JavaSpaces and RT in a network context? What does that mean?


There are really no hidden meanings.  We do use River.  Network contexts are a context in which computers are networked.  ;-)  I think you are over thinking what I am saying, Dennis.  Pay no attention to the man behind the curtain because he is not there. ;-)


> 

Michael McGrady
Chief Architect
Topia Technology, Inc.
Cel 1.253.720.3365
Work 1.253.572.9712 extension 2037
mmcgrady@topiatechnology.com


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
On Dec 2, 2010, at 958AM, MICHAEL MCGRADY wrote:

> There are no RT requirements for River.  

Ok, good.

> There is only the requirement that, if River wants to be compatible with Java RT that it not go to Java 1.6 but stick at Java 1.5.  

Define compatible? In what specific areas must River be compatible with RTJ? Serialization? Where? Can you be specific? Apologies, but I'm having a hard time parsing through your statements since they are somewhat vague to me. Can you enumerate exactly what River capabilities need to be 'compatible' with 1.5? The entire stack? Portions of it?

> Once you touch the network real-time QoS does not go out the window.  

How so? Are you saying that the network is reliable enough to deliver your request/response in a guaranteed way? Have you developed a specific protocol that is part of the JERI stack that ensure your transport has some real time context? Is River involved in this (other than from a configuration point of view), or is it similar to whats described in this paper: http://www.cs.wustl.edu/~schmidt/PDF/RT-POA.pdf

> 
> We are bound to River-like functionality (JINI) and JavaSpaces and RT in a network context.

This statement has a ton of hidden implications. River-like functionality? This implies to me that you are doing River (Jini) like things but not using River. Is that right? 

JavaSpaces and RT in a network context? What does that mean?


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Gerard Fulton <cg...@gmail.com>.
I think that Peter correct. River can potentially support both Java 1.5 and
1.6 in the future by implementing a modular build environment and using a
profile/API approach. In my opinion the fact that the Jini community refused
to address this issue was a serious black eye for the project.

Gerard



On Thu, Dec 2, 2010 at 7:03 AM, Sim IJskes - QCG <si...@qcg.nl> wrote:

> On 02-12-10 15:58, MICHAEL MCGRADY wrote:
>
>> There are no RT requirements for River.  There is only the requirement
>> that, if River wants to be compatible with Java RT that it not go to Java
>> 1.6 but stick at Java 1.5.
>>
>
> No matter what the outcome is of the version debate, i would like to
> see/explained a way/method to verify the compatibility.
>
> You cannot ask a developer to run on anything less then JDK6 nowadays. You
> can ask a developer to keep to certain compatibility conventions. In order
> to guard against mistakes, we need a (preferably) automated method of
> verifying if the code produced is still compatible.
>
> When we argue for a certain version, shall we include the verification
> solution with it?
>
> Gr. Sim
>
> --
> QCG, Software voor het MKB, 071-5890970, http://www.qcg.nl
> Quality Consultancy Group b.v., Leiderdorp, Kvk Den Haag: 28088397
>

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Sim IJskes - QCG <si...@qcg.nl>.
On 02-12-10 15:58, MICHAEL MCGRADY wrote:
> There are no RT requirements for River.  There is only the requirement that, if River wants to be compatible with Java RT that it not go to Java 1.6 but stick at Java 1.5.

No matter what the outcome is of the version debate, i would like to 
see/explained a way/method to verify the compatibility.

You cannot ask a developer to run on anything less then JDK6 nowadays. 
You can ask a developer to keep to certain compatibility conventions. In 
order to guard against mistakes, we need a (preferably) automated method 
of verifying if the code produced is still compatible.

When we argue for a certain version, shall we include the verification 
solution with it?

Gr. Sim

-- 
QCG, Software voor het MKB, 071-5890970, http://www.qcg.nl
Quality Consultancy Group b.v., Leiderdorp, Kvk Den Haag: 28088397

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by MICHAEL MCGRADY <mm...@topiatechnology.com>.
There are no RT requirements for River.  There is only the requirement that, if River wants to be compatible with Java RT that it not go to Java 1.6 but stick at Java 1.5.  

However, what boggles your mind is not accurate.  Once you touch the network real-time QoS does not go out the window.  And, your definition of the problem is one way to use real-time but it is not the way we use it and is irrelevant to what we do.  Essentially, and I cannot go into detail here, we use real-time functionality for converting various ways of structuring the importance of data to the ubiquitous standard of deadlines.  Believe me the government sees great value in what we do.  We are, among other things, a QoS solution for networking.

We are bound to River-like functionality (JINI) and JavaSpaces and RT in a network context.

MG


On Dec 2, 2010, at 5:15 AM, Dennis Reedy wrote:

> What boggles my mind here is adding real-time requirements in the same context of Jini. While you may have real-time threads, once you touch the network your real-time QoS goes out the window. You may be able to guarantee that the amount of time it takes to perform an operation will be done within a bounded time, but you will not be able to guarantee (in a real-time context) that the result of that operation will be transmitted over the media to a requesting client.
> 
> What I'd like to find out from Michael here is what exactly are the RT requirements for River?
> 
> Service Infrastructure (JoinManager and the like...)
> Services (Reggie, Mercury, Outrigger, etc...)
> 
> Other?
> 
> 
> On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:
> 
>> We do this now with Java 1.5, Greg.  Java RT 2.1 (64 bit) is compatible with Java 1.5.  http://preview.tinyurl.com/2bpjqfh  There would be no other test than works-with-Java-1.5.  The simple answer is that if River does not call real-time threads and uses Java 1.5 there is no issue.  There are other things that impact real-time but we can cover those.
>> 
>> MG
>> 
>> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
>> 
>>> 
>>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>>> Like I said, Java 1.6 is incompatible with Java RTS and that os very serious in my neighborhood.  We do QoS with Java RTS.
>>>> 
>>> 
>>> That's certainly an interesting comment... I'm curious though: I haven't
>>> looked at RT Java for several years, but I recall that the first pass
>>> allowed plain Java (i.e. non-real-time) to be executed.  Would River
>>> components need some other evaluation or testing to be accepted as
>>> "real-time" (which I doubt would be an easy task), or would you just be
>>> looking for compatibility with the run-time environment, but without
>>> real-time guarantees?
>>> 
>>> Also, what would be the impact if the RT system called services that
>>> were resident in a non-RT virtual machine?  Specifically, would the
>>> registrar and/or JavaSpaces implementation need to be hosted in a Java
>>> RTS virtual machine?
>>> 
>>> Cheers,
>>> 
>>> Greg.
>>> 
>>> 
>>> Sent from my iPhone
>>>> 
>>>> Michael McGrady
>>>> Principal investigator AF081_028 SBIR
>>>> Chief Architect
>>>> Topia Technology, Inc
>>>> Work 1.253.572.9712
>>>> Cel 1.253.720.3365
>>>> 
>>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>>> 
>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>> ...
>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>> these platforms have an overriding influence on whether River moves
>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>>>> 
>>>>> Is the relevant Java dialect identical to 1.4? If not, we would need a separate project to make portions of River run on it.
>>>>> 
>>>>> Patricia
>>> -- 
>>> Greg Trasuk, President
>>> StratusCom Manufacturing Systems Inc. - We use information technology to
>>> solve business problems on your plant floor.
>>> http://stratuscom.com
>>> 
>> 
>> Michael McGrady
>> Chief Architect
>> Topia Technology, Inc.
>> Cel 1.253.720.3365
>> Work 1.253.572.9712 extension 2037
>> mmcgrady@topiatechnology.com
>> 
>> 
>> 
> 

Michael McGrady
Chief Architect
Topia Technology, Inc.
Cel 1.253.720.3365
Work 1.253.572.9712 extension 2037
mmcgrady@topiatechnology.com


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Patricia Shanahan <pa...@acm.org>.
Those seem to me to be very good reasons to run with a 1.6 JVM if at all 
possible. I think that should be our strong recommendation, for the 
reasons you state.

Are there any negatives, other than not being able to use "Since 1.6" 
API features in the River source code, to keeping the code 1.5 
compatible, and compiling with 1.5? A 1.5 classfile can be used with a 
1.5 or 1.6 JVM.

Patricia


Christopher Dolan wrote:
> I would list bug fixes (specifically "no Thread.interrupt() classloader
> corruption") or maybe performance enhancements as the major reason for
> JDK 6 rather than newer features.  Outside of Swing and JAXB, there
> aren't very many compelling new features in JDK 6 that I'm aware of, and
> certainly not many that River would care about.
> 
> Chris
> 
> -----Original Message-----
> From: Sim IJskes - QCG [mailto:sim@qcg.nl] 
> Sent: Friday, December 03, 2010 2:33 AM
> To: river-dev@incubator.apache.org
> Subject: Re: JVM version policy Was: Re: Build failed in Hudson:
> River-trunk-jdk1.5 #3
> 
> On 03-12-10 09:25, Jeff Ramsdale wrote:
>> Given the (significant) benefits of moving to 1.5 and the (relative)
>> lack of opposition, could we agree to:
>>
>> 1) do our little current release
>> 2) graduate
>> 3) do a new release with package renames and move to 1.5
>> 4) revisit the roadmap to prioritize 1.6 and the more significant
>> changes we've been putting off
> 
> Excellent! In order to make it possible for the discussion to resume 
> it's full amplitude at a later stage i've got the following condensed 
> version of the discussion:
> 
> # Compatibility requirements
> 
> JDK | Reason
> - | -
> 1.4 | CDC/BlueRay depends on it.
> 1.5 | RealTime Java (RTJ) depends on it.
> 6 | Newer features
> 
> I will document this on the website.
> 
> Gr. Sim
> 


RE: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Christopher Dolan <ch...@avid.com>.
I would list bug fixes (specifically "no Thread.interrupt() classloader
corruption") or maybe performance enhancements as the major reason for
JDK 6 rather than newer features.  Outside of Swing and JAXB, there
aren't very many compelling new features in JDK 6 that I'm aware of, and
certainly not many that River would care about.

Chris

-----Original Message-----
From: Sim IJskes - QCG [mailto:sim@qcg.nl] 
Sent: Friday, December 03, 2010 2:33 AM
To: river-dev@incubator.apache.org
Subject: Re: JVM version policy Was: Re: Build failed in Hudson:
River-trunk-jdk1.5 #3

On 03-12-10 09:25, Jeff Ramsdale wrote:
> Given the (significant) benefits of moving to 1.5 and the (relative)
> lack of opposition, could we agree to:
>
> 1) do our little current release
> 2) graduate
> 3) do a new release with package renames and move to 1.5
> 4) revisit the roadmap to prioritize 1.6 and the more significant
> changes we've been putting off

Excellent! In order to make it possible for the discussion to resume 
it's full amplitude at a later stage i've got the following condensed 
version of the discussion:

# Compatibility requirements

JDK | Reason
- | -
1.4 | CDC/BlueRay depends on it.
1.5 | RealTime Java (RTJ) depends on it.
6 | Newer features

I will document this on the website.

Gr. Sim

-- 
QCG, Software voor het MKB, 071-5890970, http://www.qcg.nl
Quality Consultancy Group b.v., Leiderdorp, Kvk Den Haag: 28088397

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Sim IJskes - QCG <si...@qcg.nl>.
On 03-12-10 09:25, Jeff Ramsdale wrote:
> Given the (significant) benefits of moving to 1.5 and the (relative)
> lack of opposition, could we agree to:
>
> 1) do our little current release
> 2) graduate
> 3) do a new release with package renames and move to 1.5
> 4) revisit the roadmap to prioritize 1.6 and the more significant
> changes we've been putting off

Excellent! In order to make it possible for the discussion to resume 
it's full amplitude at a later stage i've got the following condensed 
version of the discussion:

# Compatibility requirements

JDK | Reason
- | -
1.4 | CDC/BlueRay depends on it.
1.5 | RealTime Java (RTJ) depends on it.
6 | Newer features

I will document this on the website.

Gr. Sim

-- 
QCG, Software voor het MKB, 071-5890970, http://www.qcg.nl
Quality Consultancy Group b.v., Leiderdorp, Kvk Den Haag: 28088397

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Jeff Ramsdale <je...@gmail.com>.
Given the (significant) benefits of moving to 1.5 and the (relative)
lack of opposition, could we agree to:

1) do our little current release
2) graduate
3) do a new release with package renames and move to 1.5
4) revisit the roadmap to prioritize 1.6 and the more significant
changes we've been putting off

I see a code restructuring as being possible with either step 3 or 4.

I know all of these things have been said, I'm just gauging whether
we're converging on agreement...

-jeff

On Thu, Dec 2, 2010 at 11:38 PM, Patricia Shanahan <pa...@acm.org> wrote:
> I think we may be getting distracted from the key objective if this thread,
> nailing down our JVM version policy for the next few releases.
>
> Do we have any indication of a need for real time constraints in River? I
> don't think Michael has asked for anything beyond keeping River JVM version
> compatible with Java RT.
>
> Patricia
>
>
> On 12/2/2010 10:50 PM, Peter Firmstone wrote:
>>
>> What I'm trying to say is, that a Service and Client each running on
>> RTSJ, could set real time constraints, as we now might set a
>> ServerMinPrincipal constraint, meaning that if real time was required
>> over EtherCAT, this could be supported by some services and clients that
>> require it while others may not require it in the same environment.
>>
>> Currently constraints are used to enforce:
>>
>> 1. Confidentiality
>> 2. Integrity
>> 3. Authentication
>> 4. Authorization
>>
>> If we supported RTSJ we could add:
>>
>> 5. Real Time
>>
>> Just a thought.
>>
>>
>>
>> Mike McGrady wrote:
>>>
>>> Abandoning Java RT is not in the cards for us.
>>>
>>> Sent from my iPhone
>>>
>>> Michael McGrady
>>> Principal investigator AF081_028 SBIR
>>> Chief Architect
>>> Topia Technology, Inc
>>> Work 1.253.572.9712
>>> Cel 1.253.720.3365
>>>
>>> On Dec 2, 2010, at 10:12 PM, Peter Firmstone <ji...@zeus.net.au> wrote:
>>>
>>>> It may be possible to add real time constraints.
>>>>
>>>> For example, EtherCAT supports real time networking, a client and
>>>> server could set a real time constraint and communicate over EtherCAT.
>>>>
>>>> The question that Dennis has posed though is how much do you need?
>>>> This doesn't have to be decided now, perhaps you can set up an issue
>>>> on jira so we can track it.
>>>>
>>>> The current release still runs on Java 5. The next release due soon
>>>> will too, the following release may not, but time will help us decide
>>>> how solve this problem.
>>>>
>>>> Cheers,
>>>>
>>>> Peter.
>>>>
>>>>
>>>> Dennis Reedy wrote:
>>>>>
>>>>> What boggles my mind here is adding real-time requirements in the
>>>>> same context of Jini. While you may have real-time threads, once you
>>>>> touch the network your real-time QoS goes out the window. You may be
>>>>> able to guarantee that the amount of time it takes to perform an
>>>>> operation will be done within a bounded time, but you will not be
>>>>> able to guarantee (in a real-time context) that the result of that
>>>>> operation will be transmitted over the media to a requesting client.
>>>>>
>>>>> What I'd like to find out from Michael here is what exactly are the
>>>>> RT requirements for River?
>>>>>
>>>>> Service Infrastructure (JoinManager and the like...)
>>>>> Services (Reggie, Mercury, Outrigger, etc...)
>>>>>
>>>>> Other?
>>>>>
>>>>>
>>>>> On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:
>>>>>
>>>>>
>>>>>> We do this now with Java 1.5, Greg. Java RT 2.1 (64 bit) is
>>>>>> compatible with Java 1.5. http://preview.tinyurl.com/2bpjqfh There
>>>>>> would be no other test than works-with-Java-1.5. The simple answer
>>>>>> is that if River does not call real-time threads and uses Java 1.5
>>>>>> there is no issue. There are other things that impact real-time but
>>>>>> we can cover those.
>>>>>>
>>>>>> MG
>>>>>>
>>>>>> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
>>>>>>
>>>>>>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>>>>>>>
>>>>>>>> Like I said, Java 1.6 is incompatible with Java RTS and that os
>>>>>>>> very serious in my neighborhood. We do QoS with Java RTS.
>>>>>>>>
>>>>>>> That's certainly an interesting comment... I'm curious though: I
>>>>>>> haven't
>>>>>>> looked at RT Java for several years, but I recall that the first pass
>>>>>>> allowed plain Java (i.e. non-real-time) to be executed. Would River
>>>>>>> components need some other evaluation or testing to be accepted as
>>>>>>> "real-time" (which I doubt would be an easy task), or would you
>>>>>>> just be
>>>>>>> looking for compatibility with the run-time environment, but without
>>>>>>> real-time guarantees?
>>>>>>>
>>>>>>> Also, what would be the impact if the RT system called services that
>>>>>>> were resident in a non-RT virtual machine? Specifically, would the
>>>>>>> registrar and/or JavaSpaces implementation need to be hosted in a
>>>>>>> Java
>>>>>>> RTS virtual machine?
>>>>>>>
>>>>>>> Cheers,
>>>>>>>
>>>>>>> Greg.
>>>>>>>
>>>>>>>
>>>>>>> Sent from my iPhone
>>>>>>>>
>>>>>>>> Michael McGrady
>>>>>>>> Principal investigator AF081_028 SBIR
>>>>>>>> Chief Architect
>>>>>>>> Topia Technology, Inc
>>>>>>>> Work 1.253.572.9712
>>>>>>>> Cel 1.253.720.3365
>>>>>>>>
>>>>>>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>>>>>>>
>>>>>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>>>>>> ...
>>>>>>>>>>
>>>>>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>>>>>> these platforms have an overriding influence on whether River
>>>>>>>>>> moves
>>>>>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this
>>>>>>>>>> point.
>>>>>>>>>
>>>>>>>>> Is the relevant Java dialect identical to 1.4? If not, we would
>>>>>>>>> need a separate project to make portions of River run on it.
>>>>>>>>>
>>>>>>>>> Patricia
>>>>>>>
>>>>>>> --
>>>>>>> Greg Trasuk, President
>>>>>>> StratusCom Manufacturing Systems Inc. - We use information
>>>>>>> technology to
>>>>>>> solve business problems on your plant floor.
>>>>>>> http://stratuscom.com
>>>>>>>
>>>>>> Michael McGrady
>>>>>> Chief Architect
>>>>>> Topia Technology, Inc.
>>>>>> Cel 1.253.720.3365
>>>>>> Work 1.253.572.9712 extension 2037
>>>>>> mmcgrady@topiatechnology.com
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>
>>
>>
>
>

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Patricia Shanahan <pa...@acm.org>.
On 12/4/2010 7:22 AM, Mike McGrady wrote:
> We could not tolerate JavaSpaces running on Java 1.6.  That is for
> sure.  This is a mistaken conclusion if you think this is a corollary
> or implication of what I said.

In any case, 1.6 does not really help JavaSpaces. The requirements for 
the main JavaSpaces data structure are unusual. It must allow rapid 
lookup by the combination of type and a template with some fields masked 
out, not just exact match.

The combination of performance requirements and special lookup rules 
calls for a custom data structure. There is no magic in 
ConcurrentHashMap, just fairly standard techniques that could also be 
applied in a custom data structure targeting JavaSpaces, as long as it 
can use the 1.5 memory model. A JavaSpaces data structure may also 
benefit from e.g. some of the atomic operations in 1.5, but I don't know 
for sure yet.

I need to do some reading, both to understand the current outrigger data 
structures, and to get up to date on the latest developments in 
concurrent data structures. The JavaSpaces lookup has some features in 
common with a relational database select operation, so I may look at 
some of the data structures used for that.

As far as I can tell, the only fully reliable technique for safe 
concurrent data access on 1.4 is synchronization, which could have very 
bad effects on performance.

Patricia


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Mike McGrady <mm...@topiatechnology.com>.
We could not tolerate JavaSpaces running on Java 1.6.  That is for sure.  This is a mistaken conclusion if you think this is a corollary or implication of what I said. 

Sent from my iPhone

Michael McGrady
Principal investigator AF081_028 SBIR
Chief Architect
Topia Technology, Inc
Work 1.253.572.9712
Cel 1.253.720.3365

On Dec 3, 2010, at 6:45 PM, Peter Firmstone <ji...@zeus.net.au> wrote:

> As I suspected the suggestion would reveal Michael's needs for RTSJ.
> 
> We've established no one needs a real time server PLATFORM service, this means that the existing service implementations don't need to run on RTSJ, only the proxy's and a core platform for producing application services.
> 
> If we make River modular, Patricia can work on the Javaspace server implementation so it can utilise the latest platform concurrency features.  Therefore to run a Javaspace server, it must be installed the Java 1.6 platform.  The same can apply for Reggie, Mahalo and all the other service servers.
> 
> You can still use a Javaspace service on a RTSJ client, to produce information for the Javaspace cloud, where it can be processed using the producer consumer pattern.
> 
> Modularity is the Solution to multi platform support.
> 
> Where earlier Java platforms can participate, but don't provide platform services, only consume them.
> 
> The Service Implementations need to be separated from the River Jini Platform codebase.
> 
> This massively reduces the maintenance required to support earlier platforms.
> 
> I don't need to run any Platform service on BlueRay either.
> 
> Even if we don't call it modularity, River should be broken up, all the services can be subprojects, they can evolve at their own pace and needs, without being held back by earlier Java platform support requirements.
> 
> Cheers,
> 
> Peter.
> 
> MICHAEL MCGRADY wrote:
>> That is correct.  I do not think that River would be interested at this time in real-time constraints.  It is too big a jump for this place in the history and I am just asking for an incremental move to Java 1.5 from Java 1.4 to remain consistent with real-time JVMs.
>> 
>> MG
>> 
>> On Dec 2, 2010, at 11:38 PM, Patricia Shanahan wrote:
>> 
>>  
>>> I think we may be getting distracted from the key objective if this thread, nailing down our JVM version policy for the next few releases.
>>> 
>>> Do we have any indication of a need for real time constraints in River? I don't think Michael has asked for anything beyond keeping River JVM version compatible with Java RT.
>>> 
>>> Patricia
>>> 
>>> 
>>> On 12/2/2010 10:50 PM, Peter Firmstone wrote:
>>>    
>>>> What I'm trying to say is, that a Service and Client each running on
>>>> RTSJ, could set real time constraints, as we now might set a
>>>> ServerMinPrincipal constraint, meaning that if real time was required
>>>> over EtherCAT, this could be supported by some services and clients that
>>>> require it while others may not require it in the same environment.
>>>> 
>>>> Currently constraints are used to enforce:
>>>> 
>>>> 1. Confidentiality
>>>> 2. Integrity
>>>> 3. Authentication
>>>> 4. Authorization
>>>> 
>>>> If we supported RTSJ we could add:
>>>> 
>>>> 5. Real Time
>>>> 
>>>> Just a thought.
>>>> 
>>>> 
>>>> 
>>>> Mike McGrady wrote:
>>>>      
>>>>> Abandoning Java RT is not in the cards for us.
>>>>> 
>>>>> Sent from my iPhone
>>>>> 
>>>>> Michael McGrady
>>>>> Principal investigator AF081_028 SBIR
>>>>> Chief Architect
>>>>> Topia Technology, Inc
>>>>> Work 1.253.572.9712
>>>>> Cel 1.253.720.3365
>>>>> 
>>>>> On Dec 2, 2010, at 10:12 PM, Peter Firmstone <ji...@zeus.net.au> wrote:
>>>>> 
>>>>>        
>>>>>> It may be possible to add real time constraints.
>>>>>> 
>>>>>> For example, EtherCAT supports real time networking, a client and
>>>>>> server could set a real time constraint and communicate over EtherCAT.
>>>>>> 
>>>>>> The question that Dennis has posed though is how much do you need?
>>>>>> This doesn't have to be decided now, perhaps you can set up an issue
>>>>>> on jira so we can track it.
>>>>>> 
>>>>>> The current release still runs on Java 5. The next release due soon
>>>>>> will too, the following release may not, but time will help us decide
>>>>>> how solve this problem.
>>>>>> 
>>>>>> Cheers,
>>>>>> 
>>>>>> Peter.
>>>>>> 
>>>>>> 
>>>>>> Dennis Reedy wrote:
>>>>>>          
>>>>>>> What boggles my mind here is adding real-time requirements in the
>>>>>>> same context of Jini. While you may have real-time threads, once you
>>>>>>> touch the network your real-time QoS goes out the window. You may be
>>>>>>> able to guarantee that the amount of time it takes to perform an
>>>>>>> operation will be done within a bounded time, but you will not be
>>>>>>> able to guarantee (in a real-time context) that the result of that
>>>>>>> operation will be transmitted over the media to a requesting client.
>>>>>>> 
>>>>>>> What I'd like to find out from Michael here is what exactly are the
>>>>>>> RT requirements for River?
>>>>>>> 
>>>>>>> Service Infrastructure (JoinManager and the like...)
>>>>>>> Services (Reggie, Mercury, Outrigger, etc...)
>>>>>>> 
>>>>>>> Other?
>>>>>>> 
>>>>>>> 
>>>>>>> On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:
>>>>>>> 
>>>>>>> 
>>>>>>>            
>>>>>>>> We do this now with Java 1.5, Greg. Java RT 2.1 (64 bit) is
>>>>>>>> compatible with Java 1.5. http://preview.tinyurl.com/2bpjqfh There
>>>>>>>> would be no other test than works-with-Java-1.5. The simple answer
>>>>>>>> is that if River does not call real-time threads and uses Java 1.5
>>>>>>>> there is no issue. There are other things that impact real-time but
>>>>>>>> we can cover those.
>>>>>>>> 
>>>>>>>> MG
>>>>>>>> 
>>>>>>>> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
>>>>>>>> 
>>>>>>>>              
>>>>>>>>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>>>>>>>>                
>>>>>>>>>> Like I said, Java 1.6 is incompatible with Java RTS and that os
>>>>>>>>>> very serious in my neighborhood. We do QoS with Java RTS.
>>>>>>>>>> 
>>>>>>>>>>                  
>>>>>>>>> That's certainly an interesting comment... I'm curious though: I
>>>>>>>>> haven't
>>>>>>>>> looked at RT Java for several years, but I recall that the first pass
>>>>>>>>> allowed plain Java (i.e. non-real-time) to be executed. Would River
>>>>>>>>> components need some other evaluation or testing to be accepted as
>>>>>>>>> "real-time" (which I doubt would be an easy task), or would you
>>>>>>>>> just be
>>>>>>>>> looking for compatibility with the run-time environment, but without
>>>>>>>>> real-time guarantees?
>>>>>>>>> 
>>>>>>>>> Also, what would be the impact if the RT system called services that
>>>>>>>>> were resident in a non-RT virtual machine? Specifically, would the
>>>>>>>>> registrar and/or JavaSpaces implementation need to be hosted in a
>>>>>>>>> Java
>>>>>>>>> RTS virtual machine?
>>>>>>>>> 
>>>>>>>>> Cheers,
>>>>>>>>> 
>>>>>>>>> Greg.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> Sent from my iPhone
>>>>>>>>>                
>>>>>>>>>> Michael McGrady
>>>>>>>>>> Principal investigator AF081_028 SBIR
>>>>>>>>>> Chief Architect
>>>>>>>>>> Topia Technology, Inc
>>>>>>>>>> Work 1.253.572.9712
>>>>>>>>>> Cel 1.253.720.3365
>>>>>>>>>> 
>>>>>>>>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>>>>>>>>> 
>>>>>>>>>>                  
>>>>>>>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>>>>>>>> ...
>>>>>>>>>>>                    
>>>>>>>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>>>>>>>> these platforms have an overriding influence on whether River
>>>>>>>>>>>> moves
>>>>>>>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this
>>>>>>>>>>>> point.
>>>>>>>>>>>>                      
>>>>>>>>>>> Is the relevant Java dialect identical to 1.4? If not, we would
>>>>>>>>>>> need a separate project to make portions of River run on it.
>>>>>>>>>>> 
>>>>>>>>>>> Patricia
>>>>>>>>>>>                    
>>>>>>>>> --
>>>>>>>>> Greg Trasuk, President
>>>>>>>>> StratusCom Manufacturing Systems Inc. - We use information
>>>>>>>>> technology to
>>>>>>>>> solve business problems on your plant floor.
>>>>>>>>> http://stratuscom.com
>>>>>>>>> 
>>>>>>>>>                
>>>>>>>> Michael McGrady
>>>>>>>> Chief Architect
>>>>>>>> Topia Technology, Inc.
>>>>>>>> Cel 1.253.720.3365
>>>>>>>> Work 1.253.572.9712 extension 2037
>>>>>>>> mmcgrady@topiatechnology.com
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>              
>>>>      
>> 
>> Michael McGrady
>> Chief Architect
>> Topia Technology, Inc.
>> Cel 1.253.720.3365
>> Work 1.253.572.9712 extension 2037
>> mmcgrady@topiatechnology.com
>> 
>>  ------------------------------------------------------------------------
>> 
>> 
>> 
>>  
> 

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Mike McGrady <mm...@topiatechnology.com>.
Peter, I think this is not the conclusion.  Let me think about what you are saying but one thing is clear that ultimately we cannot assume real-time applications processes are not separate from River services.

Sent from my iPhone

Michael McGrady
Principal investigator AF081_028 SBIR
Chief Architect
Topia Technology, Inc
Work 1.253.572.9712
Cel 1.253.720.3365

On Dec 3, 2010, at 6:45 PM, Peter Firmstone <ji...@zeus.net.au> wrote:

> As I suspected the suggestion would reveal Michael's needs for RTSJ.
> 
> We've established no one needs a real time server PLATFORM service, this means that the existing service implementations don't need to run on RTSJ, only the proxy's and a core platform for producing application services.
> 
> If we make River modular, Patricia can work on the Javaspace server implementation so it can utilise the latest platform concurrency features.  Therefore to run a Javaspace server, it must be installed the Java 1.6 platform.  The same can apply for Reggie, Mahalo and all the other service servers.
> 
> You can still use a Javaspace service on a RTSJ client, to produce information for the Javaspace cloud, where it can be processed using the producer consumer pattern.
> 
> Modularity is the Solution to multi platform support.
> 
> Where earlier Java platforms can participate, but don't provide platform services, only consume them.
> 
> The Service Implementations need to be separated from the River Jini Platform codebase.
> 
> This massively reduces the maintenance required to support earlier platforms.
> 
> I don't need to run any Platform service on BlueRay either.
> 
> Even if we don't call it modularity, River should be broken up, all the services can be subprojects, they can evolve at their own pace and needs, without being held back by earlier Java platform support requirements.
> 
> Cheers,
> 
> Peter.
> 
> MICHAEL MCGRADY wrote:
>> That is correct.  I do not think that River would be interested at this time in real-time constraints.  It is too big a jump for this place in the history and I am just asking for an incremental move to Java 1.5 from Java 1.4 to remain consistent with real-time JVMs.
>> 
>> MG
>> 
>> On Dec 2, 2010, at 11:38 PM, Patricia Shanahan wrote:
>> 
>>  
>>> I think we may be getting distracted from the key objective if this thread, nailing down our JVM version policy for the next few releases.
>>> 
>>> Do we have any indication of a need for real time constraints in River? I don't think Michael has asked for anything beyond keeping River JVM version compatible with Java RT.
>>> 
>>> Patricia
>>> 
>>> 
>>> On 12/2/2010 10:50 PM, Peter Firmstone wrote:
>>>    
>>>> What I'm trying to say is, that a Service and Client each running on
>>>> RTSJ, could set real time constraints, as we now might set a
>>>> ServerMinPrincipal constraint, meaning that if real time was required
>>>> over EtherCAT, this could be supported by some services and clients that
>>>> require it while others may not require it in the same environment.
>>>> 
>>>> Currently constraints are used to enforce:
>>>> 
>>>> 1. Confidentiality
>>>> 2. Integrity
>>>> 3. Authentication
>>>> 4. Authorization
>>>> 
>>>> If we supported RTSJ we could add:
>>>> 
>>>> 5. Real Time
>>>> 
>>>> Just a thought.
>>>> 
>>>> 
>>>> 
>>>> Mike McGrady wrote:
>>>>      
>>>>> Abandoning Java RT is not in the cards for us.
>>>>> 
>>>>> Sent from my iPhone
>>>>> 
>>>>> Michael McGrady
>>>>> Principal investigator AF081_028 SBIR
>>>>> Chief Architect
>>>>> Topia Technology, Inc
>>>>> Work 1.253.572.9712
>>>>> Cel 1.253.720.3365
>>>>> 
>>>>> On Dec 2, 2010, at 10:12 PM, Peter Firmstone <ji...@zeus.net.au> wrote:
>>>>> 
>>>>>        
>>>>>> It may be possible to add real time constraints.
>>>>>> 
>>>>>> For example, EtherCAT supports real time networking, a client and
>>>>>> server could set a real time constraint and communicate over EtherCAT.
>>>>>> 
>>>>>> The question that Dennis has posed though is how much do you need?
>>>>>> This doesn't have to be decided now, perhaps you can set up an issue
>>>>>> on jira so we can track it.
>>>>>> 
>>>>>> The current release still runs on Java 5. The next release due soon
>>>>>> will too, the following release may not, but time will help us decide
>>>>>> how solve this problem.
>>>>>> 
>>>>>> Cheers,
>>>>>> 
>>>>>> Peter.
>>>>>> 
>>>>>> 
>>>>>> Dennis Reedy wrote:
>>>>>>          
>>>>>>> What boggles my mind here is adding real-time requirements in the
>>>>>>> same context of Jini. While you may have real-time threads, once you
>>>>>>> touch the network your real-time QoS goes out the window. You may be
>>>>>>> able to guarantee that the amount of time it takes to perform an
>>>>>>> operation will be done within a bounded time, but you will not be
>>>>>>> able to guarantee (in a real-time context) that the result of that
>>>>>>> operation will be transmitted over the media to a requesting client.
>>>>>>> 
>>>>>>> What I'd like to find out from Michael here is what exactly are the
>>>>>>> RT requirements for River?
>>>>>>> 
>>>>>>> Service Infrastructure (JoinManager and the like...)
>>>>>>> Services (Reggie, Mercury, Outrigger, etc...)
>>>>>>> 
>>>>>>> Other?
>>>>>>> 
>>>>>>> 
>>>>>>> On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:
>>>>>>> 
>>>>>>> 
>>>>>>>            
>>>>>>>> We do this now with Java 1.5, Greg. Java RT 2.1 (64 bit) is
>>>>>>>> compatible with Java 1.5. http://preview.tinyurl.com/2bpjqfh There
>>>>>>>> would be no other test than works-with-Java-1.5. The simple answer
>>>>>>>> is that if River does not call real-time threads and uses Java 1.5
>>>>>>>> there is no issue. There are other things that impact real-time but
>>>>>>>> we can cover those.
>>>>>>>> 
>>>>>>>> MG
>>>>>>>> 
>>>>>>>> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
>>>>>>>> 
>>>>>>>>              
>>>>>>>>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>>>>>>>>                
>>>>>>>>>> Like I said, Java 1.6 is incompatible with Java RTS and that os
>>>>>>>>>> very serious in my neighborhood. We do QoS with Java RTS.
>>>>>>>>>> 
>>>>>>>>>>                  
>>>>>>>>> That's certainly an interesting comment... I'm curious though: I
>>>>>>>>> haven't
>>>>>>>>> looked at RT Java for several years, but I recall that the first pass
>>>>>>>>> allowed plain Java (i.e. non-real-time) to be executed. Would River
>>>>>>>>> components need some other evaluation or testing to be accepted as
>>>>>>>>> "real-time" (which I doubt would be an easy task), or would you
>>>>>>>>> just be
>>>>>>>>> looking for compatibility with the run-time environment, but without
>>>>>>>>> real-time guarantees?
>>>>>>>>> 
>>>>>>>>> Also, what would be the impact if the RT system called services that
>>>>>>>>> were resident in a non-RT virtual machine? Specifically, would the
>>>>>>>>> registrar and/or JavaSpaces implementation need to be hosted in a
>>>>>>>>> Java
>>>>>>>>> RTS virtual machine?
>>>>>>>>> 
>>>>>>>>> Cheers,
>>>>>>>>> 
>>>>>>>>> Greg.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> Sent from my iPhone
>>>>>>>>>                
>>>>>>>>>> Michael McGrady
>>>>>>>>>> Principal investigator AF081_028 SBIR
>>>>>>>>>> Chief Architect
>>>>>>>>>> Topia Technology, Inc
>>>>>>>>>> Work 1.253.572.9712
>>>>>>>>>> Cel 1.253.720.3365
>>>>>>>>>> 
>>>>>>>>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>>>>>>>>> 
>>>>>>>>>>                  
>>>>>>>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>>>>>>>> ...
>>>>>>>>>>>                    
>>>>>>>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>>>>>>>> these platforms have an overriding influence on whether River
>>>>>>>>>>>> moves
>>>>>>>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this
>>>>>>>>>>>> point.
>>>>>>>>>>>>                      
>>>>>>>>>>> Is the relevant Java dialect identical to 1.4? If not, we would
>>>>>>>>>>> need a separate project to make portions of River run on it.
>>>>>>>>>>> 
>>>>>>>>>>> Patricia
>>>>>>>>>>>                    
>>>>>>>>> --
>>>>>>>>> Greg Trasuk, President
>>>>>>>>> StratusCom Manufacturing Systems Inc. - We use information
>>>>>>>>> technology to
>>>>>>>>> solve business problems on your plant floor.
>>>>>>>>> http://stratuscom.com
>>>>>>>>> 
>>>>>>>>>                
>>>>>>>> Michael McGrady
>>>>>>>> Chief Architect
>>>>>>>> Topia Technology, Inc.
>>>>>>>> Cel 1.253.720.3365
>>>>>>>> Work 1.253.572.9712 extension 2037
>>>>>>>> mmcgrady@topiatechnology.com
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>              
>>>>      
>> 
>> Michael McGrady
>> Chief Architect
>> Topia Technology, Inc.
>> Cel 1.253.720.3365
>> Work 1.253.572.9712 extension 2037
>> mmcgrady@topiatechnology.com
>> 
>>  ------------------------------------------------------------------------
>> 
>> 
>> 
>>  
> 

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
On Dec 4, 2010, at 1024AM, Mike McGrady wrote:

> We cannot throw our functionality into a client.  We are resident in the space.

I dont understand what you mean by "resident in the space". You move things through a JavaSpace, you dont execute things in a JavaSpace. Most likely I think you are mixing having a service in the same JVM as a JavaSpace (i.e. in a JVM that is hosting multiple services), as opposed to resident in the space.



Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Mike McGrady <mm...@topiatechnology.com>.
We cannot throw our functionality into a client.  We are resident in the space.

Sent from my iPhone

Michael McGrady
Principal investigator AF081_028 SBIR
Chief Architect
Topia Technology, Inc
Work 1.253.572.9712
Cel 1.253.720.3365

On Dec 3, 2010, at 6:45 PM, Peter Firmstone <ji...@zeus.net.au> wrote:

> As I suspected the suggestion would reveal Michael's needs for RTSJ.
> 
> We've established no one needs a real time server PLATFORM service, this means that the existing service implementations don't need to run on RTSJ, only the proxy's and a core platform for producing application services.
> 
> If we make River modular, Patricia can work on the Javaspace server implementation so it can utilise the latest platform concurrency features.  Therefore to run a Javaspace server, it must be installed the Java 1.6 platform.  The same can apply for Reggie, Mahalo and all the other service servers.
> 
> You can still use a Javaspace service on a RTSJ client, to produce information for the Javaspace cloud, where it can be processed using the producer consumer pattern.
> 
> Modularity is the Solution to multi platform support.
> 
> Where earlier Java platforms can participate, but don't provide platform services, only consume them.
> 
> The Service Implementations need to be separated from the River Jini Platform codebase.
> 
> This massively reduces the maintenance required to support earlier platforms.
> 
> I don't need to run any Platform service on BlueRay either.
> 
> Even if we don't call it modularity, River should be broken up, all the services can be subprojects, they can evolve at their own pace and needs, without being held back by earlier Java platform support requirements.
> 
> Cheers,
> 
> Peter.
> 
> MICHAEL MCGRADY wrote:
>> That is correct.  I do not think that River would be interested at this time in real-time constraints.  It is too big a jump for this place in the history and I am just asking for an incremental move to Java 1.5 from Java 1.4 to remain consistent with real-time JVMs.
>> 
>> MG
>> 
>> On Dec 2, 2010, at 11:38 PM, Patricia Shanahan wrote:
>> 
>>  
>>> I think we may be getting distracted from the key objective if this thread, nailing down our JVM version policy for the next few releases.
>>> 
>>> Do we have any indication of a need for real time constraints in River? I don't think Michael has asked for anything beyond keeping River JVM version compatible with Java RT.
>>> 
>>> Patricia
>>> 
>>> 
>>> On 12/2/2010 10:50 PM, Peter Firmstone wrote:
>>>    
>>>> What I'm trying to say is, that a Service and Client each running on
>>>> RTSJ, could set real time constraints, as we now might set a
>>>> ServerMinPrincipal constraint, meaning that if real time was required
>>>> over EtherCAT, this could be supported by some services and clients that
>>>> require it while others may not require it in the same environment.
>>>> 
>>>> Currently constraints are used to enforce:
>>>> 
>>>> 1. Confidentiality
>>>> 2. Integrity
>>>> 3. Authentication
>>>> 4. Authorization
>>>> 
>>>> If we supported RTSJ we could add:
>>>> 
>>>> 5. Real Time
>>>> 
>>>> Just a thought.
>>>> 
>>>> 
>>>> 
>>>> Mike McGrady wrote:
>>>>      
>>>>> Abandoning Java RT is not in the cards for us.
>>>>> 
>>>>> Sent from my iPhone
>>>>> 
>>>>> Michael McGrady
>>>>> Principal investigator AF081_028 SBIR
>>>>> Chief Architect
>>>>> Topia Technology, Inc
>>>>> Work 1.253.572.9712
>>>>> Cel 1.253.720.3365
>>>>> 
>>>>> On Dec 2, 2010, at 10:12 PM, Peter Firmstone <ji...@zeus.net.au> wrote:
>>>>> 
>>>>>        
>>>>>> It may be possible to add real time constraints.
>>>>>> 
>>>>>> For example, EtherCAT supports real time networking, a client and
>>>>>> server could set a real time constraint and communicate over EtherCAT.
>>>>>> 
>>>>>> The question that Dennis has posed though is how much do you need?
>>>>>> This doesn't have to be decided now, perhaps you can set up an issue
>>>>>> on jira so we can track it.
>>>>>> 
>>>>>> The current release still runs on Java 5. The next release due soon
>>>>>> will too, the following release may not, but time will help us decide
>>>>>> how solve this problem.
>>>>>> 
>>>>>> Cheers,
>>>>>> 
>>>>>> Peter.
>>>>>> 
>>>>>> 
>>>>>> Dennis Reedy wrote:
>>>>>>          
>>>>>>> What boggles my mind here is adding real-time requirements in the
>>>>>>> same context of Jini. While you may have real-time threads, once you
>>>>>>> touch the network your real-time QoS goes out the window. You may be
>>>>>>> able to guarantee that the amount of time it takes to perform an
>>>>>>> operation will be done within a bounded time, but you will not be
>>>>>>> able to guarantee (in a real-time context) that the result of that
>>>>>>> operation will be transmitted over the media to a requesting client.
>>>>>>> 
>>>>>>> What I'd like to find out from Michael here is what exactly are the
>>>>>>> RT requirements for River?
>>>>>>> 
>>>>>>> Service Infrastructure (JoinManager and the like...)
>>>>>>> Services (Reggie, Mercury, Outrigger, etc...)
>>>>>>> 
>>>>>>> Other?
>>>>>>> 
>>>>>>> 
>>>>>>> On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:
>>>>>>> 
>>>>>>> 
>>>>>>>            
>>>>>>>> We do this now with Java 1.5, Greg. Java RT 2.1 (64 bit) is
>>>>>>>> compatible with Java 1.5. http://preview.tinyurl.com/2bpjqfh There
>>>>>>>> would be no other test than works-with-Java-1.5. The simple answer
>>>>>>>> is that if River does not call real-time threads and uses Java 1.5
>>>>>>>> there is no issue. There are other things that impact real-time but
>>>>>>>> we can cover those.
>>>>>>>> 
>>>>>>>> MG
>>>>>>>> 
>>>>>>>> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
>>>>>>>> 
>>>>>>>>              
>>>>>>>>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>>>>>>>>                
>>>>>>>>>> Like I said, Java 1.6 is incompatible with Java RTS and that os
>>>>>>>>>> very serious in my neighborhood. We do QoS with Java RTS.
>>>>>>>>>> 
>>>>>>>>>>                  
>>>>>>>>> That's certainly an interesting comment... I'm curious though: I
>>>>>>>>> haven't
>>>>>>>>> looked at RT Java for several years, but I recall that the first pass
>>>>>>>>> allowed plain Java (i.e. non-real-time) to be executed. Would River
>>>>>>>>> components need some other evaluation or testing to be accepted as
>>>>>>>>> "real-time" (which I doubt would be an easy task), or would you
>>>>>>>>> just be
>>>>>>>>> looking for compatibility with the run-time environment, but without
>>>>>>>>> real-time guarantees?
>>>>>>>>> 
>>>>>>>>> Also, what would be the impact if the RT system called services that
>>>>>>>>> were resident in a non-RT virtual machine? Specifically, would the
>>>>>>>>> registrar and/or JavaSpaces implementation need to be hosted in a
>>>>>>>>> Java
>>>>>>>>> RTS virtual machine?
>>>>>>>>> 
>>>>>>>>> Cheers,
>>>>>>>>> 
>>>>>>>>> Greg.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> Sent from my iPhone
>>>>>>>>>                
>>>>>>>>>> Michael McGrady
>>>>>>>>>> Principal investigator AF081_028 SBIR
>>>>>>>>>> Chief Architect
>>>>>>>>>> Topia Technology, Inc
>>>>>>>>>> Work 1.253.572.9712
>>>>>>>>>> Cel 1.253.720.3365
>>>>>>>>>> 
>>>>>>>>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>>>>>>>>> 
>>>>>>>>>>                  
>>>>>>>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>>>>>>>> ...
>>>>>>>>>>>                    
>>>>>>>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>>>>>>>> these platforms have an overriding influence on whether River
>>>>>>>>>>>> moves
>>>>>>>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this
>>>>>>>>>>>> point.
>>>>>>>>>>>>                      
>>>>>>>>>>> Is the relevant Java dialect identical to 1.4? If not, we would
>>>>>>>>>>> need a separate project to make portions of River run on it.
>>>>>>>>>>> 
>>>>>>>>>>> Patricia
>>>>>>>>>>>                    
>>>>>>>>> --
>>>>>>>>> Greg Trasuk, President
>>>>>>>>> StratusCom Manufacturing Systems Inc. - We use information
>>>>>>>>> technology to
>>>>>>>>> solve business problems on your plant floor.
>>>>>>>>> http://stratuscom.com
>>>>>>>>> 
>>>>>>>>>                
>>>>>>>> Michael McGrady
>>>>>>>> Chief Architect
>>>>>>>> Topia Technology, Inc.
>>>>>>>> Cel 1.253.720.3365
>>>>>>>> Work 1.253.572.9712 extension 2037
>>>>>>>> mmcgrady@topiatechnology.com
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>              
>>>>      
>> 
>> Michael McGrady
>> Chief Architect
>> Topia Technology, Inc.
>> Cel 1.253.720.3365
>> Work 1.253.572.9712 extension 2037
>> mmcgrady@topiatechnology.com
>> 
>>  ------------------------------------------------------------------------
>> 
>> 
>> 
>>  
> 

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Peter Firmstone <ji...@zeus.net.au>.
As I suspected the suggestion would reveal Michael's needs for RTSJ.

We've established no one needs a real time server PLATFORM service, this 
means that the existing service implementations don't need to run on 
RTSJ, only the proxy's and a core platform for producing application 
services.

If we make River modular, Patricia can work on the Javaspace server 
implementation so it can utilise the latest platform concurrency 
features.  Therefore to run a Javaspace server, it must be installed the 
Java 1.6 platform.  The same can apply for Reggie, Mahalo and all the 
other service servers.

You can still use a Javaspace service on a RTSJ client, to produce 
information for the Javaspace cloud, where it can be processed using the 
producer consumer pattern.

Modularity is the Solution to multi platform support.

Where earlier Java platforms can participate, but don't provide platform 
services, only consume them.

The Service Implementations need to be separated from the River Jini 
Platform codebase.

This massively reduces the maintenance required to support earlier 
platforms.

I don't need to run any Platform service on BlueRay either.

Even if we don't call it modularity, River should be broken up, all the 
services can be subprojects, they can evolve at their own pace and 
needs, without being held back by earlier Java platform support 
requirements.

Cheers,

Peter.

MICHAEL MCGRADY wrote:
> That is correct.  I do not think that River would be interested at this time in real-time constraints.  It is too big a jump for this place in the history and I am just asking for an incremental move to Java 1.5 from Java 1.4 to remain consistent with real-time JVMs.
>
> MG
>
> On Dec 2, 2010, at 11:38 PM, Patricia Shanahan wrote:
>
>   
>> I think we may be getting distracted from the key objective if this thread, nailing down our JVM version policy for the next few releases.
>>
>> Do we have any indication of a need for real time constraints in River? I don't think Michael has asked for anything beyond keeping River JVM version compatible with Java RT.
>>
>> Patricia
>>
>>
>> On 12/2/2010 10:50 PM, Peter Firmstone wrote:
>>     
>>> What I'm trying to say is, that a Service and Client each running on
>>> RTSJ, could set real time constraints, as we now might set a
>>> ServerMinPrincipal constraint, meaning that if real time was required
>>> over EtherCAT, this could be supported by some services and clients that
>>> require it while others may not require it in the same environment.
>>>
>>> Currently constraints are used to enforce:
>>>
>>> 1. Confidentiality
>>> 2. Integrity
>>> 3. Authentication
>>> 4. Authorization
>>>
>>> If we supported RTSJ we could add:
>>>
>>> 5. Real Time
>>>
>>> Just a thought.
>>>
>>>
>>>
>>> Mike McGrady wrote:
>>>       
>>>> Abandoning Java RT is not in the cards for us.
>>>>
>>>> Sent from my iPhone
>>>>
>>>> Michael McGrady
>>>> Principal investigator AF081_028 SBIR
>>>> Chief Architect
>>>> Topia Technology, Inc
>>>> Work 1.253.572.9712
>>>> Cel 1.253.720.3365
>>>>
>>>> On Dec 2, 2010, at 10:12 PM, Peter Firmstone <ji...@zeus.net.au> wrote:
>>>>
>>>>         
>>>>> It may be possible to add real time constraints.
>>>>>
>>>>> For example, EtherCAT supports real time networking, a client and
>>>>> server could set a real time constraint and communicate over EtherCAT.
>>>>>
>>>>> The question that Dennis has posed though is how much do you need?
>>>>> This doesn't have to be decided now, perhaps you can set up an issue
>>>>> on jira so we can track it.
>>>>>
>>>>> The current release still runs on Java 5. The next release due soon
>>>>> will too, the following release may not, but time will help us decide
>>>>> how solve this problem.
>>>>>
>>>>> Cheers,
>>>>>
>>>>> Peter.
>>>>>
>>>>>
>>>>> Dennis Reedy wrote:
>>>>>           
>>>>>> What boggles my mind here is adding real-time requirements in the
>>>>>> same context of Jini. While you may have real-time threads, once you
>>>>>> touch the network your real-time QoS goes out the window. You may be
>>>>>> able to guarantee that the amount of time it takes to perform an
>>>>>> operation will be done within a bounded time, but you will not be
>>>>>> able to guarantee (in a real-time context) that the result of that
>>>>>> operation will be transmitted over the media to a requesting client.
>>>>>>
>>>>>> What I'd like to find out from Michael here is what exactly are the
>>>>>> RT requirements for River?
>>>>>>
>>>>>> Service Infrastructure (JoinManager and the like...)
>>>>>> Services (Reggie, Mercury, Outrigger, etc...)
>>>>>>
>>>>>> Other?
>>>>>>
>>>>>>
>>>>>> On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:
>>>>>>
>>>>>>
>>>>>>             
>>>>>>> We do this now with Java 1.5, Greg. Java RT 2.1 (64 bit) is
>>>>>>> compatible with Java 1.5. http://preview.tinyurl.com/2bpjqfh There
>>>>>>> would be no other test than works-with-Java-1.5. The simple answer
>>>>>>> is that if River does not call real-time threads and uses Java 1.5
>>>>>>> there is no issue. There are other things that impact real-time but
>>>>>>> we can cover those.
>>>>>>>
>>>>>>> MG
>>>>>>>
>>>>>>> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
>>>>>>>
>>>>>>>               
>>>>>>>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>>>>>>>                 
>>>>>>>>> Like I said, Java 1.6 is incompatible with Java RTS and that os
>>>>>>>>> very serious in my neighborhood. We do QoS with Java RTS.
>>>>>>>>>
>>>>>>>>>                   
>>>>>>>> That's certainly an interesting comment... I'm curious though: I
>>>>>>>> haven't
>>>>>>>> looked at RT Java for several years, but I recall that the first pass
>>>>>>>> allowed plain Java (i.e. non-real-time) to be executed. Would River
>>>>>>>> components need some other evaluation or testing to be accepted as
>>>>>>>> "real-time" (which I doubt would be an easy task), or would you
>>>>>>>> just be
>>>>>>>> looking for compatibility with the run-time environment, but without
>>>>>>>> real-time guarantees?
>>>>>>>>
>>>>>>>> Also, what would be the impact if the RT system called services that
>>>>>>>> were resident in a non-RT virtual machine? Specifically, would the
>>>>>>>> registrar and/or JavaSpaces implementation need to be hosted in a
>>>>>>>> Java
>>>>>>>> RTS virtual machine?
>>>>>>>>
>>>>>>>> Cheers,
>>>>>>>>
>>>>>>>> Greg.
>>>>>>>>
>>>>>>>>
>>>>>>>> Sent from my iPhone
>>>>>>>>                 
>>>>>>>>> Michael McGrady
>>>>>>>>> Principal investigator AF081_028 SBIR
>>>>>>>>> Chief Architect
>>>>>>>>> Topia Technology, Inc
>>>>>>>>> Work 1.253.572.9712
>>>>>>>>> Cel 1.253.720.3365
>>>>>>>>>
>>>>>>>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>>>>>>>>
>>>>>>>>>                   
>>>>>>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>>>>>>> ...
>>>>>>>>>>                     
>>>>>>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>>>>>>> these platforms have an overriding influence on whether River
>>>>>>>>>>> moves
>>>>>>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this
>>>>>>>>>>> point.
>>>>>>>>>>>                       
>>>>>>>>>> Is the relevant Java dialect identical to 1.4? If not, we would
>>>>>>>>>> need a separate project to make portions of River run on it.
>>>>>>>>>>
>>>>>>>>>> Patricia
>>>>>>>>>>                     
>>>>>>>> --
>>>>>>>> Greg Trasuk, President
>>>>>>>> StratusCom Manufacturing Systems Inc. - We use information
>>>>>>>> technology to
>>>>>>>> solve business problems on your plant floor.
>>>>>>>> http://stratuscom.com
>>>>>>>>
>>>>>>>>                 
>>>>>>> Michael McGrady
>>>>>>> Chief Architect
>>>>>>> Topia Technology, Inc.
>>>>>>> Cel 1.253.720.3365
>>>>>>> Work 1.253.572.9712 extension 2037
>>>>>>> mmcgrady@topiatechnology.com
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>               
>>>       
>
> Michael McGrady
> Chief Architect
> Topia Technology, Inc.
> Cel 1.253.720.3365
> Work 1.253.572.9712 extension 2037
> mmcgrady@topiatechnology.com
>
>   
> ------------------------------------------------------------------------
>
>
>
>   


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by MICHAEL MCGRADY <mm...@topiatechnology.com>.
That is correct.  I do not think that River would be interested at this time in real-time constraints.  It is too big a jump for this place in the history and I am just asking for an incremental move to Java 1.5 from Java 1.4 to remain consistent with real-time JVMs.

MG

On Dec 2, 2010, at 11:38 PM, Patricia Shanahan wrote:

> I think we may be getting distracted from the key objective if this thread, nailing down our JVM version policy for the next few releases.
> 
> Do we have any indication of a need for real time constraints in River? I don't think Michael has asked for anything beyond keeping River JVM version compatible with Java RT.
> 
> Patricia
> 
> 
> On 12/2/2010 10:50 PM, Peter Firmstone wrote:
>> What I'm trying to say is, that a Service and Client each running on
>> RTSJ, could set real time constraints, as we now might set a
>> ServerMinPrincipal constraint, meaning that if real time was required
>> over EtherCAT, this could be supported by some services and clients that
>> require it while others may not require it in the same environment.
>> 
>> Currently constraints are used to enforce:
>> 
>> 1. Confidentiality
>> 2. Integrity
>> 3. Authentication
>> 4. Authorization
>> 
>> If we supported RTSJ we could add:
>> 
>> 5. Real Time
>> 
>> Just a thought.
>> 
>> 
>> 
>> Mike McGrady wrote:
>>> Abandoning Java RT is not in the cards for us.
>>> 
>>> Sent from my iPhone
>>> 
>>> Michael McGrady
>>> Principal investigator AF081_028 SBIR
>>> Chief Architect
>>> Topia Technology, Inc
>>> Work 1.253.572.9712
>>> Cel 1.253.720.3365
>>> 
>>> On Dec 2, 2010, at 10:12 PM, Peter Firmstone <ji...@zeus.net.au> wrote:
>>> 
>>>> It may be possible to add real time constraints.
>>>> 
>>>> For example, EtherCAT supports real time networking, a client and
>>>> server could set a real time constraint and communicate over EtherCAT.
>>>> 
>>>> The question that Dennis has posed though is how much do you need?
>>>> This doesn't have to be decided now, perhaps you can set up an issue
>>>> on jira so we can track it.
>>>> 
>>>> The current release still runs on Java 5. The next release due soon
>>>> will too, the following release may not, but time will help us decide
>>>> how solve this problem.
>>>> 
>>>> Cheers,
>>>> 
>>>> Peter.
>>>> 
>>>> 
>>>> Dennis Reedy wrote:
>>>>> What boggles my mind here is adding real-time requirements in the
>>>>> same context of Jini. While you may have real-time threads, once you
>>>>> touch the network your real-time QoS goes out the window. You may be
>>>>> able to guarantee that the amount of time it takes to perform an
>>>>> operation will be done within a bounded time, but you will not be
>>>>> able to guarantee (in a real-time context) that the result of that
>>>>> operation will be transmitted over the media to a requesting client.
>>>>> 
>>>>> What I'd like to find out from Michael here is what exactly are the
>>>>> RT requirements for River?
>>>>> 
>>>>> Service Infrastructure (JoinManager and the like...)
>>>>> Services (Reggie, Mercury, Outrigger, etc...)
>>>>> 
>>>>> Other?
>>>>> 
>>>>> 
>>>>> On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:
>>>>> 
>>>>> 
>>>>>> We do this now with Java 1.5, Greg. Java RT 2.1 (64 bit) is
>>>>>> compatible with Java 1.5. http://preview.tinyurl.com/2bpjqfh There
>>>>>> would be no other test than works-with-Java-1.5. The simple answer
>>>>>> is that if River does not call real-time threads and uses Java 1.5
>>>>>> there is no issue. There are other things that impact real-time but
>>>>>> we can cover those.
>>>>>> 
>>>>>> MG
>>>>>> 
>>>>>> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
>>>>>> 
>>>>>>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>>>>>>> Like I said, Java 1.6 is incompatible with Java RTS and that os
>>>>>>>> very serious in my neighborhood. We do QoS with Java RTS.
>>>>>>>> 
>>>>>>> That's certainly an interesting comment... I'm curious though: I
>>>>>>> haven't
>>>>>>> looked at RT Java for several years, but I recall that the first pass
>>>>>>> allowed plain Java (i.e. non-real-time) to be executed. Would River
>>>>>>> components need some other evaluation or testing to be accepted as
>>>>>>> "real-time" (which I doubt would be an easy task), or would you
>>>>>>> just be
>>>>>>> looking for compatibility with the run-time environment, but without
>>>>>>> real-time guarantees?
>>>>>>> 
>>>>>>> Also, what would be the impact if the RT system called services that
>>>>>>> were resident in a non-RT virtual machine? Specifically, would the
>>>>>>> registrar and/or JavaSpaces implementation need to be hosted in a
>>>>>>> Java
>>>>>>> RTS virtual machine?
>>>>>>> 
>>>>>>> Cheers,
>>>>>>> 
>>>>>>> Greg.
>>>>>>> 
>>>>>>> 
>>>>>>> Sent from my iPhone
>>>>>>>> Michael McGrady
>>>>>>>> Principal investigator AF081_028 SBIR
>>>>>>>> Chief Architect
>>>>>>>> Topia Technology, Inc
>>>>>>>> Work 1.253.572.9712
>>>>>>>> Cel 1.253.720.3365
>>>>>>>> 
>>>>>>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>>>>>>> 
>>>>>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>>>>>> ...
>>>>>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>>>>>> these platforms have an overriding influence on whether River
>>>>>>>>>> moves
>>>>>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this
>>>>>>>>>> point.
>>>>>>>>> Is the relevant Java dialect identical to 1.4? If not, we would
>>>>>>>>> need a separate project to make portions of River run on it.
>>>>>>>>> 
>>>>>>>>> Patricia
>>>>>>> --
>>>>>>> Greg Trasuk, President
>>>>>>> StratusCom Manufacturing Systems Inc. - We use information
>>>>>>> technology to
>>>>>>> solve business problems on your plant floor.
>>>>>>> http://stratuscom.com
>>>>>>> 
>>>>>> Michael McGrady
>>>>>> Chief Architect
>>>>>> Topia Technology, Inc.
>>>>>> Cel 1.253.720.3365
>>>>>> Work 1.253.572.9712 extension 2037
>>>>>> mmcgrady@topiatechnology.com
>>>>>> 
>>>>>> 
>>>>>> 
>>>>> 
>>> 
>> 
>> 
> 

Michael McGrady
Chief Architect
Topia Technology, Inc.
Cel 1.253.720.3365
Work 1.253.572.9712 extension 2037
mmcgrady@topiatechnology.com


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Patricia Shanahan <pa...@acm.org>.
I think we may be getting distracted from the key objective if this 
thread, nailing down our JVM version policy for the next few releases.

Do we have any indication of a need for real time constraints in River? 
I don't think Michael has asked for anything beyond keeping River JVM 
version compatible with Java RT.

Patricia


On 12/2/2010 10:50 PM, Peter Firmstone wrote:
> What I'm trying to say is, that a Service and Client each running on
> RTSJ, could set real time constraints, as we now might set a
> ServerMinPrincipal constraint, meaning that if real time was required
> over EtherCAT, this could be supported by some services and clients that
> require it while others may not require it in the same environment.
>
> Currently constraints are used to enforce:
>
> 1. Confidentiality
> 2. Integrity
> 3. Authentication
> 4. Authorization
>
> If we supported RTSJ we could add:
>
> 5. Real Time
>
> Just a thought.
>
>
>
> Mike McGrady wrote:
>> Abandoning Java RT is not in the cards for us.
>>
>> Sent from my iPhone
>>
>> Michael McGrady
>> Principal investigator AF081_028 SBIR
>> Chief Architect
>> Topia Technology, Inc
>> Work 1.253.572.9712
>> Cel 1.253.720.3365
>>
>> On Dec 2, 2010, at 10:12 PM, Peter Firmstone <ji...@zeus.net.au> wrote:
>>
>>> It may be possible to add real time constraints.
>>>
>>> For example, EtherCAT supports real time networking, a client and
>>> server could set a real time constraint and communicate over EtherCAT.
>>>
>>> The question that Dennis has posed though is how much do you need?
>>> This doesn't have to be decided now, perhaps you can set up an issue
>>> on jira so we can track it.
>>>
>>> The current release still runs on Java 5. The next release due soon
>>> will too, the following release may not, but time will help us decide
>>> how solve this problem.
>>>
>>> Cheers,
>>>
>>> Peter.
>>>
>>>
>>> Dennis Reedy wrote:
>>>> What boggles my mind here is adding real-time requirements in the
>>>> same context of Jini. While you may have real-time threads, once you
>>>> touch the network your real-time QoS goes out the window. You may be
>>>> able to guarantee that the amount of time it takes to perform an
>>>> operation will be done within a bounded time, but you will not be
>>>> able to guarantee (in a real-time context) that the result of that
>>>> operation will be transmitted over the media to a requesting client.
>>>>
>>>> What I'd like to find out from Michael here is what exactly are the
>>>> RT requirements for River?
>>>>
>>>> Service Infrastructure (JoinManager and the like...)
>>>> Services (Reggie, Mercury, Outrigger, etc...)
>>>>
>>>> Other?
>>>>
>>>>
>>>> On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:
>>>>
>>>>
>>>>> We do this now with Java 1.5, Greg. Java RT 2.1 (64 bit) is
>>>>> compatible with Java 1.5. http://preview.tinyurl.com/2bpjqfh There
>>>>> would be no other test than works-with-Java-1.5. The simple answer
>>>>> is that if River does not call real-time threads and uses Java 1.5
>>>>> there is no issue. There are other things that impact real-time but
>>>>> we can cover those.
>>>>>
>>>>> MG
>>>>>
>>>>> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
>>>>>
>>>>>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>>>>>> Like I said, Java 1.6 is incompatible with Java RTS and that os
>>>>>>> very serious in my neighborhood. We do QoS with Java RTS.
>>>>>>>
>>>>>> That's certainly an interesting comment... I'm curious though: I
>>>>>> haven't
>>>>>> looked at RT Java for several years, but I recall that the first pass
>>>>>> allowed plain Java (i.e. non-real-time) to be executed. Would River
>>>>>> components need some other evaluation or testing to be accepted as
>>>>>> "real-time" (which I doubt would be an easy task), or would you
>>>>>> just be
>>>>>> looking for compatibility with the run-time environment, but without
>>>>>> real-time guarantees?
>>>>>>
>>>>>> Also, what would be the impact if the RT system called services that
>>>>>> were resident in a non-RT virtual machine? Specifically, would the
>>>>>> registrar and/or JavaSpaces implementation need to be hosted in a
>>>>>> Java
>>>>>> RTS virtual machine?
>>>>>>
>>>>>> Cheers,
>>>>>>
>>>>>> Greg.
>>>>>>
>>>>>>
>>>>>> Sent from my iPhone
>>>>>>> Michael McGrady
>>>>>>> Principal investigator AF081_028 SBIR
>>>>>>> Chief Architect
>>>>>>> Topia Technology, Inc
>>>>>>> Work 1.253.572.9712
>>>>>>> Cel 1.253.720.3365
>>>>>>>
>>>>>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>>>>>>
>>>>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>>>>> ...
>>>>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>>>>> these platforms have an overriding influence on whether River
>>>>>>>>> moves
>>>>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this
>>>>>>>>> point.
>>>>>>>> Is the relevant Java dialect identical to 1.4? If not, we would
>>>>>>>> need a separate project to make portions of River run on it.
>>>>>>>>
>>>>>>>> Patricia
>>>>>> --
>>>>>> Greg Trasuk, President
>>>>>> StratusCom Manufacturing Systems Inc. - We use information
>>>>>> technology to
>>>>>> solve business problems on your plant floor.
>>>>>> http://stratuscom.com
>>>>>>
>>>>> Michael McGrady
>>>>> Chief Architect
>>>>> Topia Technology, Inc.
>>>>> Cel 1.253.720.3365
>>>>> Work 1.253.572.9712 extension 2037
>>>>> mmcgrady@topiatechnology.com
>>>>>
>>>>>
>>>>>
>>>>
>>
>
>


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Peter Firmstone <ji...@zeus.net.au>.
What I'm trying to say is, that a Service and Client each running on 
RTSJ, could set real time constraints, as we now might set a 
ServerMinPrincipal constraint, meaning that if real time was required 
over EtherCAT, this could be supported by some services and clients that 
require it while others may not require it in the same environment.

Currently constraints are used to enforce:

   1. Confidentiality
   2. Integrity
   3. Authentication
   4. Authorization

If we supported RTSJ we could add:

    5. Real Time

Just a thought.



Mike McGrady wrote:
> Abandoning Java RT is not in the cards for us.
>
> Sent from my iPhone
>
> Michael McGrady
> Principal investigator AF081_028 SBIR
> Chief Architect
> Topia Technology, Inc
> Work 1.253.572.9712
> Cel 1.253.720.3365
>
> On Dec 2, 2010, at 10:12 PM, Peter Firmstone <ji...@zeus.net.au> wrote:
>
>   
>> It may be possible to add real time constraints.
>>
>> For example, EtherCAT supports real time networking, a client and server could set a real time constraint and communicate over EtherCAT.
>>
>> The question that Dennis has posed though is how much do you need?  This doesn't have to be decided now, perhaps you can set up an issue on jira so we can track it.
>>
>> The current release still runs on Java 5.  The next release due soon will too, the following release may not, but time will help us decide how solve this problem.
>>
>> Cheers,
>>
>> Peter.
>>
>>
>> Dennis Reedy wrote:
>>     
>>> What boggles my mind here is adding real-time requirements in the same context of Jini. While you may have real-time threads, once you touch the network your real-time QoS goes out the window. You may be able to guarantee that the amount of time it takes to perform an operation will be done within a bounded time, but you will not be able to guarantee (in a real-time context) that the result of that operation will be transmitted over the media to a requesting client.
>>>
>>> What I'd like to find out from Michael here is what exactly are the RT requirements for River?
>>>
>>> Service Infrastructure (JoinManager and the like...)
>>> Services (Reggie, Mercury, Outrigger, etc...)
>>>
>>> Other?
>>>
>>>
>>> On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:
>>>
>>>  
>>>       
>>>> We do this now with Java 1.5, Greg.  Java RT 2.1 (64 bit) is compatible with Java 1.5.  http://preview.tinyurl.com/2bpjqfh  There would be no other test than works-with-Java-1.5.  The simple answer is that if River does not call real-time threads and uses Java 1.5 there is no issue.  There are other things that impact real-time but we can cover those.
>>>>
>>>> MG
>>>>
>>>> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
>>>>
>>>>    
>>>>         
>>>>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>>>>      
>>>>>           
>>>>>> Like I said, Java 1.6 is incompatible with Java RTS and that os very serious in my neighborhood.  We do QoS with Java RTS.
>>>>>>
>>>>>>        
>>>>>>             
>>>>> That's certainly an interesting comment... I'm curious though: I haven't
>>>>> looked at RT Java for several years, but I recall that the first pass
>>>>> allowed plain Java (i.e. non-real-time) to be executed.  Would River
>>>>> components need some other evaluation or testing to be accepted as
>>>>> "real-time" (which I doubt would be an easy task), or would you just be
>>>>> looking for compatibility with the run-time environment, but without
>>>>> real-time guarantees?
>>>>>
>>>>> Also, what would be the impact if the RT system called services that
>>>>> were resident in a non-RT virtual machine?  Specifically, would the
>>>>> registrar and/or JavaSpaces implementation need to be hosted in a Java
>>>>> RTS virtual machine?
>>>>>
>>>>> Cheers,
>>>>>
>>>>> Greg.
>>>>>
>>>>>
>>>>> Sent from my iPhone
>>>>>      
>>>>>           
>>>>>> Michael McGrady
>>>>>> Principal investigator AF081_028 SBIR
>>>>>> Chief Architect
>>>>>> Topia Technology, Inc
>>>>>> Work 1.253.572.9712
>>>>>> Cel 1.253.720.3365
>>>>>>
>>>>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>>>>>
>>>>>>        
>>>>>>             
>>>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>>>> ...
>>>>>>>          
>>>>>>>               
>>>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>>>> these platforms have an overriding influence on whether River moves
>>>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>>>>>>>            
>>>>>>>>                 
>>>>>>> Is the relevant Java dialect identical to 1.4? If not, we would need a separate project to make portions of River run on it.
>>>>>>>
>>>>>>> Patricia
>>>>>>>          
>>>>>>>               
>>>>> -- 
>>>>> Greg Trasuk, President
>>>>> StratusCom Manufacturing Systems Inc. - We use information technology to
>>>>> solve business problems on your plant floor.
>>>>> http://stratuscom.com
>>>>>
>>>>>      
>>>>>           
>>>> Michael McGrady
>>>> Chief Architect
>>>> Topia Technology, Inc.
>>>> Cel 1.253.720.3365
>>>> Work 1.253.572.9712 extension 2037
>>>> mmcgrady@topiatechnology.com
>>>>
>>>>
>>>>
>>>>    
>>>>         
>>>  
>>>       
>
>   


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Mike McGrady <mm...@topiatechnology.com>.
Abandoning Java RT is not in the cards for us.

Sent from my iPhone

Michael McGrady
Principal investigator AF081_028 SBIR
Chief Architect
Topia Technology, Inc
Work 1.253.572.9712
Cel 1.253.720.3365

On Dec 2, 2010, at 10:12 PM, Peter Firmstone <ji...@zeus.net.au> wrote:

> It may be possible to add real time constraints.
> 
> For example, EtherCAT supports real time networking, a client and server could set a real time constraint and communicate over EtherCAT.
> 
> The question that Dennis has posed though is how much do you need?  This doesn't have to be decided now, perhaps you can set up an issue on jira so we can track it.
> 
> The current release still runs on Java 5.  The next release due soon will too, the following release may not, but time will help us decide how solve this problem.
> 
> Cheers,
> 
> Peter.
> 
> 
> Dennis Reedy wrote:
>> What boggles my mind here is adding real-time requirements in the same context of Jini. While you may have real-time threads, once you touch the network your real-time QoS goes out the window. You may be able to guarantee that the amount of time it takes to perform an operation will be done within a bounded time, but you will not be able to guarantee (in a real-time context) that the result of that operation will be transmitted over the media to a requesting client.
>> 
>> What I'd like to find out from Michael here is what exactly are the RT requirements for River?
>> 
>> Service Infrastructure (JoinManager and the like...)
>> Services (Reggie, Mercury, Outrigger, etc...)
>> 
>> Other?
>> 
>> 
>> On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:
>> 
>>  
>>> We do this now with Java 1.5, Greg.  Java RT 2.1 (64 bit) is compatible with Java 1.5.  http://preview.tinyurl.com/2bpjqfh  There would be no other test than works-with-Java-1.5.  The simple answer is that if River does not call real-time threads and uses Java 1.5 there is no issue.  There are other things that impact real-time but we can cover those.
>>> 
>>> MG
>>> 
>>> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
>>> 
>>>    
>>>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>>>      
>>>>> Like I said, Java 1.6 is incompatible with Java RTS and that os very serious in my neighborhood.  We do QoS with Java RTS.
>>>>> 
>>>>>        
>>>> That's certainly an interesting comment... I'm curious though: I haven't
>>>> looked at RT Java for several years, but I recall that the first pass
>>>> allowed plain Java (i.e. non-real-time) to be executed.  Would River
>>>> components need some other evaluation or testing to be accepted as
>>>> "real-time" (which I doubt would be an easy task), or would you just be
>>>> looking for compatibility with the run-time environment, but without
>>>> real-time guarantees?
>>>> 
>>>> Also, what would be the impact if the RT system called services that
>>>> were resident in a non-RT virtual machine?  Specifically, would the
>>>> registrar and/or JavaSpaces implementation need to be hosted in a Java
>>>> RTS virtual machine?
>>>> 
>>>> Cheers,
>>>> 
>>>> Greg.
>>>> 
>>>> 
>>>> Sent from my iPhone
>>>>      
>>>>> Michael McGrady
>>>>> Principal investigator AF081_028 SBIR
>>>>> Chief Architect
>>>>> Topia Technology, Inc
>>>>> Work 1.253.572.9712
>>>>> Cel 1.253.720.3365
>>>>> 
>>>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>>>> 
>>>>>        
>>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>>> ...
>>>>>>          
>>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>>> these platforms have an overriding influence on whether River moves
>>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>>>>>>            
>>>>>> Is the relevant Java dialect identical to 1.4? If not, we would need a separate project to make portions of River run on it.
>>>>>> 
>>>>>> Patricia
>>>>>>          
>>>> -- 
>>>> Greg Trasuk, President
>>>> StratusCom Manufacturing Systems Inc. - We use information technology to
>>>> solve business problems on your plant floor.
>>>> http://stratuscom.com
>>>> 
>>>>      
>>> Michael McGrady
>>> Chief Architect
>>> Topia Technology, Inc.
>>> Cel 1.253.720.3365
>>> Work 1.253.572.9712 extension 2037
>>> mmcgrady@topiatechnology.com
>>> 
>>> 
>>> 
>>>    
>> 
>> 
>>  
> 

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Peter Firmstone <ji...@zeus.net.au>.
It may be possible to add real time constraints.

For example, EtherCAT supports real time networking, a client and server 
could set a real time constraint and communicate over EtherCAT.

The question that Dennis has posed though is how much do you need?  This 
doesn't have to be decided now, perhaps you can set up an issue on jira 
so we can track it.

The current release still runs on Java 5.  The next release due soon 
will too, the following release may not, but time will help us decide 
how solve this problem.

Cheers,

Peter.


Dennis Reedy wrote:
> What boggles my mind here is adding real-time requirements in the same context of Jini. While you may have real-time threads, once you touch the network your real-time QoS goes out the window. You may be able to guarantee that the amount of time it takes to perform an operation will be done within a bounded time, but you will not be able to guarantee (in a real-time context) that the result of that operation will be transmitted over the media to a requesting client.
>
> What I'd like to find out from Michael here is what exactly are the RT requirements for River?
>
> Service Infrastructure (JoinManager and the like...)
> Services (Reggie, Mercury, Outrigger, etc...)
>
> Other?
>
>
> On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:
>
>   
>> We do this now with Java 1.5, Greg.  Java RT 2.1 (64 bit) is compatible with Java 1.5.  http://preview.tinyurl.com/2bpjqfh  There would be no other test than works-with-Java-1.5.  The simple answer is that if River does not call real-time threads and uses Java 1.5 there is no issue.  There are other things that impact real-time but we can cover those.
>>
>> MG
>>
>> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
>>
>>     
>>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>>       
>>>> Like I said, Java 1.6 is incompatible with Java RTS and that os very serious in my neighborhood.  We do QoS with Java RTS.
>>>>
>>>>         
>>> That's certainly an interesting comment... I'm curious though: I haven't
>>> looked at RT Java for several years, but I recall that the first pass
>>> allowed plain Java (i.e. non-real-time) to be executed.  Would River
>>> components need some other evaluation or testing to be accepted as
>>> "real-time" (which I doubt would be an easy task), or would you just be
>>> looking for compatibility with the run-time environment, but without
>>> real-time guarantees?
>>>
>>> Also, what would be the impact if the RT system called services that
>>> were resident in a non-RT virtual machine?  Specifically, would the
>>> registrar and/or JavaSpaces implementation need to be hosted in a Java
>>> RTS virtual machine?
>>>
>>> Cheers,
>>>
>>> Greg.
>>>
>>>
>>> Sent from my iPhone
>>>       
>>>> Michael McGrady
>>>> Principal investigator AF081_028 SBIR
>>>> Chief Architect
>>>> Topia Technology, Inc
>>>> Work 1.253.572.9712
>>>> Cel 1.253.720.3365
>>>>
>>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>>>
>>>>         
>>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>>> ...
>>>>>           
>>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>>> these platforms have an overriding influence on whether River moves
>>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>>>>>             
>>>>> Is the relevant Java dialect identical to 1.4? If not, we would need a separate project to make portions of River run on it.
>>>>>
>>>>> Patricia
>>>>>           
>>> -- 
>>> Greg Trasuk, President
>>> StratusCom Manufacturing Systems Inc. - We use information technology to
>>> solve business problems on your plant floor.
>>> http://stratuscom.com
>>>
>>>       
>> Michael McGrady
>> Chief Architect
>> Topia Technology, Inc.
>> Cel 1.253.720.3365
>> Work 1.253.572.9712 extension 2037
>> mmcgrady@topiatechnology.com
>>
>>
>>
>>     
>
>
>   


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
What boggles my mind here is adding real-time requirements in the same context of Jini. While you may have real-time threads, once you touch the network your real-time QoS goes out the window. You may be able to guarantee that the amount of time it takes to perform an operation will be done within a bounded time, but you will not be able to guarantee (in a real-time context) that the result of that operation will be transmitted over the media to a requesting client.

What I'd like to find out from Michael here is what exactly are the RT requirements for River?

Service Infrastructure (JoinManager and the like...)
Services (Reggie, Mercury, Outrigger, etc...)

Other?


On Dec 2, 2010, at 104AM, MICHAEL MCGRADY wrote:

> We do this now with Java 1.5, Greg.  Java RT 2.1 (64 bit) is compatible with Java 1.5.  http://preview.tinyurl.com/2bpjqfh  There would be no other test than works-with-Java-1.5.  The simple answer is that if River does not call real-time threads and uses Java 1.5 there is no issue.  There are other things that impact real-time but we can cover those.
> 
> MG
> 
> On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:
> 
>> 
>> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>>> Like I said, Java 1.6 is incompatible with Java RTS and that os very serious in my neighborhood.  We do QoS with Java RTS.
>>> 
>> 
>> That's certainly an interesting comment... I'm curious though: I haven't
>> looked at RT Java for several years, but I recall that the first pass
>> allowed plain Java (i.e. non-real-time) to be executed.  Would River
>> components need some other evaluation or testing to be accepted as
>> "real-time" (which I doubt would be an easy task), or would you just be
>> looking for compatibility with the run-time environment, but without
>> real-time guarantees?
>> 
>> Also, what would be the impact if the RT system called services that
>> were resident in a non-RT virtual machine?  Specifically, would the
>> registrar and/or JavaSpaces implementation need to be hosted in a Java
>> RTS virtual machine?
>> 
>> Cheers,
>> 
>> Greg.
>> 
>> 
>> Sent from my iPhone
>>> 
>>> Michael McGrady
>>> Principal investigator AF081_028 SBIR
>>> Chief Architect
>>> Topia Technology, Inc
>>> Work 1.253.572.9712
>>> Cel 1.253.720.3365
>>> 
>>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>>> 
>>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>>> ...
>>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>>> these platforms have an overriding influence on whether River moves
>>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>>> 
>>>> Is the relevant Java dialect identical to 1.4? If not, we would need a separate project to make portions of River run on it.
>>>> 
>>>> Patricia
>> -- 
>> Greg Trasuk, President
>> StratusCom Manufacturing Systems Inc. - We use information technology to
>> solve business problems on your plant floor.
>> http://stratuscom.com
>> 
> 
> Michael McGrady
> Chief Architect
> Topia Technology, Inc.
> Cel 1.253.720.3365
> Work 1.253.572.9712 extension 2037
> mmcgrady@topiatechnology.com
> 
> 
> 


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by MICHAEL MCGRADY <mm...@topiatechnology.com>.
We do this now with Java 1.5, Greg.  Java RT 2.1 (64 bit) is compatible with Java 1.5.  http://preview.tinyurl.com/2bpjqfh  There would be no other test than works-with-Java-1.5.  The simple answer is that if River does not call real-time threads and uses Java 1.5 there is no issue.  There are other things that impact real-time but we can cover those.

MG

On Dec 1, 2010, at 9:00 PM, Greg Trasuk wrote:

> 
> On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
>> Like I said, Java 1.6 is incompatible with Java RTS and that os very serious in my neighborhood.  We do QoS with Java RTS.
>> 
> 
> That's certainly an interesting comment... I'm curious though: I haven't
> looked at RT Java for several years, but I recall that the first pass
> allowed plain Java (i.e. non-real-time) to be executed.  Would River
> components need some other evaluation or testing to be accepted as
> "real-time" (which I doubt would be an easy task), or would you just be
> looking for compatibility with the run-time environment, but without
> real-time guarantees?
> 
> Also, what would be the impact if the RT system called services that
> were resident in a non-RT virtual machine?  Specifically, would the
> registrar and/or JavaSpaces implementation need to be hosted in a Java
> RTS virtual machine?
> 
> Cheers,
> 
> Greg.
> 
> 
> Sent from my iPhone
>> 
>> Michael McGrady
>> Principal investigator AF081_028 SBIR
>> Chief Architect
>> Topia Technology, Inc
>> Work 1.253.572.9712
>> Cel 1.253.720.3365
>> 
>> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
>> 
>>> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
>>> ...
>>>> Some of the discussion has referenced Java CDC on BlueRay. Should
>>>> these platforms have an overriding influence on whether River moves
>>>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
>>> 
>>> Is the relevant Java dialect identical to 1.4? If not, we would need a separate project to make portions of River run on it.
>>> 
>>> Patricia
> -- 
> Greg Trasuk, President
> StratusCom Manufacturing Systems Inc. - We use information technology to
> solve business problems on your plant floor.
> http://stratuscom.com
> 

Michael McGrady
Chief Architect
Topia Technology, Inc.
Cel 1.253.720.3365
Work 1.253.572.9712 extension 2037
mmcgrady@topiatechnology.com


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Patricia Shanahan <pa...@acm.org>.
Dennis Reedy wrote:
> On Dec 1, 2010, at 1133PM, Mike McGrady wrote:
> 
>> Like I said, Java 1.6 is incompatible with Java RTS and that os very serious in my neighborhood.  
> 
> Java 1.6 compiled to 1.5? 

In my opinion, the differences between 1.5 and 1.6 that would most 
benefit River are in java.util and its sub-packages. 1.5 added a good 
set of concurrency support. 1.6 improved it based on experience.

The only way I know to get a 1.6 rt.jar is to run with a 1.6 JVM.

Patricia

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
On Dec 1, 2010, at 1133PM, Mike McGrady wrote:

> Like I said, Java 1.6 is incompatible with Java RTS and that os very serious in my neighborhood.  

Java 1.6 compiled to 1.5? 


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Greg Trasuk <tr...@stratuscom.com>.
On Wed, 2010-12-01 at 23:33, Mike McGrady wrote:
> Like I said, Java 1.6 is incompatible with Java RTS and that os very serious in my neighborhood.  We do QoS with Java RTS.
> 

That's certainly an interesting comment... I'm curious though: I haven't
looked at RT Java for several years, but I recall that the first pass
allowed plain Java (i.e. non-real-time) to be executed.  Would River
components need some other evaluation or testing to be accepted as
"real-time" (which I doubt would be an easy task), or would you just be
looking for compatibility with the run-time environment, but without
real-time guarantees?

Also, what would be the impact if the RT system called services that
were resident in a non-RT virtual machine?  Specifically, would the
registrar and/or JavaSpaces implementation need to be hosted in a Java
RTS virtual machine?

Cheers,

Greg.


Sent from my iPhone
> 
> Michael McGrady
> Principal investigator AF081_028 SBIR
> Chief Architect
> Topia Technology, Inc
> Work 1.253.572.9712
> Cel 1.253.720.3365
> 
> On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:
> 
> > On 12/1/2010 4:53 PM, Dennis Reedy wrote:
> > ...
> >> Some of the discussion has referenced Java CDC on BlueRay. Should
> >> these platforms have an overriding influence on whether River moves
> >> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
> > 
> > Is the relevant Java dialect identical to 1.4? If not, we would need a separate project to make portions of River run on it.
> > 
> > Patricia
-- 
Greg Trasuk, President
StratusCom Manufacturing Systems Inc. - We use information technology to
solve business problems on your plant floor.
http://stratuscom.com


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Mike McGrady <mm...@topiatechnology.com>.
Like I said, Java 1.6 is incompatible with Java RTS and that os very serious in my neighborhood.  We do QoS with Java RTS.

Sent from my iPhone

Michael McGrady
Principal investigator AF081_028 SBIR
Chief Architect
Topia Technology, Inc
Work 1.253.572.9712
Cel 1.253.720.3365

On Dec 1, 2010, at 5:03 PM, Patricia Shanahan <pa...@acm.org> wrote:

> On 12/1/2010 4:53 PM, Dennis Reedy wrote:
> ...
>> Some of the discussion has referenced Java CDC on BlueRay. Should
>> these platforms have an overriding influence on whether River moves
>> forward and adopts 1.6 as a baseline? I'm not so sure at this point.
> 
> Is the relevant Java dialect identical to 1.4? If not, we would need a separate project to make portions of River run on it.
> 
> Patricia

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Patricia Shanahan <pa...@acm.org>.
On 12/1/2010 4:53 PM, Dennis Reedy wrote:
...
> Some of the discussion has referenced Java CDC on BlueRay. Should
> these platforms have an overriding influence on whether River moves
> forward and adopts 1.6 as a baseline? I'm not so sure at this point.

Is the relevant Java dialect identical to 1.4? If not, we would need a 
separate project to make portions of River run on it.

Patricia

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Dennis Reedy <de...@gmail.com>.
I would encourage that as you move along your roadmap, once the namespace is changed to org.apache.river, that River mandates 1.6 as a baseline. Migration guides and/or utilities can be provided to assist in the transition from legacy Jini to River. I dont think it's unreasonable to draw this line in the sand.

From my point of view backwards (pre 1.6) compatibility is required for client's that are not running on a 1.6 JVM. Service implementation does not seem to be the issue. If a wholesale replacement of the distribution is required, the requirements of the new distribution (River) must be met by those wanting to use the technology. Going forward, perhaps River should consider providing semantics for obtaining proxies that support specific versions of not only direct dependencies but also transitive dependencies (including JVM version requirements). In this way service producers can ensure that they support legacy clients that require outdated platform technology.

Some of the discussion has referenced Java CDC on BlueRay. Should these platforms have an overriding influence on whether River moves forward and adopts 1.6 as a baseline? I'm not so sure at this point.

Regards

Dennis

On Dec 1, 2010, at 707PM, Patricia Shanahan wrote:

> Peter Firmstone wrote:
> ...
>> The use of concurrent language features should be part of implementation rather than our public API, so in theory at least, the
>> jvm local components can utilise the latest language features and
>> run on the latest java platform while remaining network compatible
>> with older platforms and releases.
> 
> If everyone where running the current Java version, then whether we used
> particular API classes or not would indeed be implementation. The
> problem is getting the current Java version installed and available to
> us on *every* River-running system. Until we can do that, we can't use
> its features.
> 
> I'm scared that we are not QA testing with 1.4, and so may have
> accidentally introduced things that don't work with 1.4, but have not
> made a decision to abandon it.
> 
> ...
>> Concurrency is the future, at some point we've got a bullet to bite.
> ...
> 
> From my point of view concurrency is also the present and the past.
> 
> I remember my delight, in about 1983, when I switched from working on a
> multi-processor operating system to a compiler, and found I could do
> things like single stepping through code with the program doing exactly
> what it would have done at full speed, with no interrupts, timeouts, or
> other asynchronous changes in state. Amazingly, delightfully convenient.
> 
> But, yes, concurrency is spreading, and is not just for servers and
> professional workstations any more.
> 
> Patricia


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Patricia Shanahan <pa...@acm.org>.
Peter Firmstone wrote:
...
> The use of concurrent language features should be part of 
> implementation rather than our public API, so in theory at least, the
>  jvm local components can utilise the latest language features and
> run on the latest java platform while remaining network compatible
> with older platforms and releases.

If everyone where running the current Java version, then whether we used
particular API classes or not would indeed be implementation. The
problem is getting the current Java version installed and available to
us on *every* River-running system. Until we can do that, we can't use
its features.

I'm scared that we are not QA testing with 1.4, and so may have
accidentally introduced things that don't work with 1.4, but have not
made a decision to abandon it.

...
> Concurrency is the future, at some point we've got a bullet to bite.
...

 From my point of view concurrency is also the present and the past.

I remember my delight, in about 1983, when I switched from working on a
multi-processor operating system to a compiler, and found I could do
things like single stepping through code with the program doing exactly
what it would have done at full speed, with no interrupts, timeouts, or
other asynchronous changes in state. Amazingly, delightfully convenient.

But, yes, concurrency is spreading, and is not just for servers and
professional workstations any more.

Patricia

Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Peter Firmstone <ji...@zeus.net.au>.
I think like that too.

Once we have a modular build, hopefully this will be easier to 
determine, I'd like to have my cake & eat it too. :-)

The use of concurrent language features should be part of implementation 
rather than our public API, so in theory at least, the jvm local 
components can utilise the latest language features and run on the 
latest java platform while remaining network compatible with older 
platforms and releases.

I guess it depends on how much work will be required.

I'm hoping we'll gain a better understanding as we work towards a 
modular release.

Concurrency is the future, at some point we've got a bullet to bite.

Cheers,

Peter.

Patricia Shanahan wrote:
> I have a constant tension between two ways of thinking.
>
> As a programmer, looking only at the best way to fix bugs and make the 
> software faster and more reliable, I sorely miss JDK 1.5 and 1.6 
> features, especially java.util.concurrent etc., which makes concurrent 
> programming much cleaner.
>
> On the other hand, I've interacted with people managing large 
> networks, and software developers who distribute their products to 
> organizations with large networks. Those two audiences tend to be 
> extremely conservative. Supporting an infrastructure software release 
> is a big deal, with enormous testing costs. Moving to a new release, 
> especially if it has to be done simultaneously on multiple systems, is 
> a major project, with months of planning and preparation.
>
> I am having a lot of trouble even deciding on my own position on which 
> releases to support.
>
> I would like to start a sub-project, perhaps as a Wiki page, on 
> writing a migration guide. If we can't come up with a good plan for 
> using our release strategy in a large network, we need to rethink the 
> release strategy. If we can, we should document it and ask the user 
> mailing list to review it.
>
> Patricia
>
>
> Gregg Wonderly wrote:
>> River's primary feature is network based communications and long 
>> running services with "compatibility" as a "key behavior" that makes 
>> things continue to work.  The original RMI implementation was 
>> unchangable from the outside.  The addition of JERI made 
>> "communication protocols" a deployment decision.  However, discovery 
>> still has to be "compatible" and we need to make real effort on 
>> "namespace" compatibility after the "switch to org.apache".  People 
>> will be forking river right and left and contributing nothing if we 
>> don't try very hard to "worry about compatibility" and "make it 
>> happen when at all possible".
>>
>> These are not desktop applications that get replaced by individual 
>> users randomly so they can take advantage of upgrades when they 
>> want.  This is about network based services with broadcast client 
>> deployment via ServiceUI, much like a web page is.  Since river is 
>> "infrastructure" and not "the service", we need to help users 
>> experience minimum impact on their deployments so that they can 
>> easily adopt new releases of river that include bug fixes for 
>> example.  The work that Patricia is doing to shake out transaction 
>> manager misbehaviors and probably leasing issues too, is the kind of 
>> "fixes" that we want everyone to be able to "accept" with "trivial 
>> compatibility issues".
>>
>> Gregg Wonderly
>>
>> On 11/24/2010 8:40 AM, Sim IJskes - QCG wrote:
>>> On 11/24/2010 03:11 PM, Patricia Shanahan wrote:
>>>
>>>> If we had started a formal vote, the qualification might indicate that
>>>> we had not yet done enough discussing. I suggest we continue 
>>>> discussing
>>>> a little longer, and then call a vote. We will probably be able to 
>>>> reach
>>>> a consensus proposal that will get a lot of definite positive votes.
>>>
>>> I'm aware off the differences between a formal and a informal vote. 
>>> A informal
>>> vote however is a clear indication how one will vote when a formal 
>>> vote is called.
>>>
>>> I can understand you want to go throught due process in determining 
>>> what we are
>>> going to do. But my personal impression from the mailing list 
>>> archives, is that
>>> the river project is completely gridlocked in subtleties. I'm not 
>>> saying that
>>> something agreed has a lifetime of infinity, but we have to start 
>>> somewhere.
>>> That means quick, decisive action, while keeping our options open.
>>>
>>> Suppose we declare to support 1.4, 1.5, 1.6 and CDC. How do we 
>>> validate this? I
>>> don't see us building a compatibity verification on short notice.
>>>
>>> If you want to go for river worlddomination, by keeping everything 
>>> compatible,
>>> you should bring a large suitcase of money. Then you can checkout an 
>>> older
>>> revision from the repo and build something with the horde of 
>>> programmers you are
>>> hiring.
>>>
>>> River has to grow from spurts from contributors, we are not going to 
>>> win a race
>>> by creating a swamp. I strongly believe that the current failure of 
>>> river is
>>> because of this longwinding process. We are not going to attract 
>>> more young
>>> eager bright committers if we keep on discussing the future of river 
>>> or the
>>> subtleties of compatibility.
>>>
>>> Gr. Sim
>>>
>>>
>>
>>
>
>


Re: JVM version policy Was: Re: Build failed in Hudson: River-trunk-jdk1.5 #3

Posted by Patricia Shanahan <pa...@acm.org>.
I have a constant tension between two ways of thinking.

As a programmer, looking only at the best way to fix bugs and make the 
software faster and more reliable, I sorely miss JDK 1.5 and 1.6 
features, especially java.util.concurrent etc., which makes concurrent 
programming much cleaner.

On the other hand, I've interacted with people managing large networks, 
and software developers who distribute their products to organizations 
with large networks. Those two audiences tend to be extremely 
conservative. Supporting an infrastructure software release is a big 
deal, with enormous testing costs. Moving to a new release, especially 
if it has to be done simultaneously on multiple systems, is a major 
project, with months of planning and preparation.

I am having a lot of trouble even deciding on my own position on which 
releases to support.

I would like to start a sub-project, perhaps as a Wiki page, on writing 
a migration guide. If we can't come up with a good plan for using our 
release strategy in a large network, we need to rethink the release 
strategy. If we can, we should document it and ask the user mailing list 
to review it.

Patricia


Gregg Wonderly wrote:
> River's primary feature is network based communications and long running 
> services with "compatibility" as a "key behavior" that makes things 
> continue to work.  The original RMI implementation was unchangable from 
> the outside.  The addition of JERI made "communication protocols" a 
> deployment decision.  However, discovery still has to be "compatible" 
> and we need to make real effort on "namespace" compatibility after the 
> "switch to org.apache".  People will be forking river right and left and 
> contributing nothing if we don't try very hard to "worry about 
> compatibility" and "make it happen when at all possible".
> 
> These are not desktop applications that get replaced by individual users 
> randomly so they can take advantage of upgrades when they want.  This is 
> about network based services with broadcast client deployment via 
> ServiceUI, much like a web page is.  Since river is "infrastructure" and 
> not "the service", we need to help users experience minimum impact on 
> their deployments so that they can easily adopt new releases of river 
> that include bug fixes for example.  The work that Patricia is doing to 
> shake out transaction manager misbehaviors and probably leasing issues 
> too, is the kind of "fixes" that we want everyone to be able to "accept" 
> with "trivial compatibility issues".
> 
> Gregg Wonderly
> 
> On 11/24/2010 8:40 AM, Sim IJskes - QCG wrote:
>> On 11/24/2010 03:11 PM, Patricia Shanahan wrote:
>>
>>> If we had started a formal vote, the qualification might indicate that
>>> we had not yet done enough discussing. I suggest we continue discussing
>>> a little longer, and then call a vote. We will probably be able to reach
>>> a consensus proposal that will get a lot of definite positive votes.
>>
>> I'm aware off the differences between a formal and a informal vote. A 
>> informal
>> vote however is a clear indication how one will vote when a formal 
>> vote is called.
>>
>> I can understand you want to go throught due process in determining 
>> what we are
>> going to do. But my personal impression from the mailing list 
>> archives, is that
>> the river project is completely gridlocked in subtleties. I'm not 
>> saying that
>> something agreed has a lifetime of infinity, but we have to start 
>> somewhere.
>> That means quick, decisive action, while keeping our options open.
>>
>> Suppose we declare to support 1.4, 1.5, 1.6 and CDC. How do we 
>> validate this? I
>> don't see us building a compatibity verification on short notice.
>>
>> If you want to go for river worlddomination, by keeping everything 
>> compatible,
>> you should bring a large suitcase of money. Then you can checkout an 
>> older
>> revision from the repo and build something with the horde of 
>> programmers you are
>> hiring.
>>
>> River has to grow from spurts from contributors, we are not going to 
>> win a race
>> by creating a swamp. I strongly believe that the current failure of 
>> river is
>> because of this longwinding process. We are not going to attract more 
>> young
>> eager bright committers if we keep on discussing the future of river 
>> or the
>> subtleties of compatibility.
>>
>> Gr. Sim
>>
>>
> 
>