Re: Entries, ServiceTemplates, and JavaSpaces

Calum Shaw-Mackay <[email protected]>
Newsgroups gmane.comp.java.sun.javaspaces
Message-ID <[email protected]>
> We do have a base Entry class with some always-present values. From
> there, though, it's possible for the user to configure the build
> master with entries that don't have corresponding build agents. These
> build requests should languish and eventually get cleaned up (would
> love to use http://autot.jini.org to boot a new machine with the
> correct features--that'd be awesome) and logged as unbuildable. The
> agents should usually have many properties describing their features
> (e.g. "os.name=Windows XP", "fixpack=1.1", "service.pack=SP2"), most
> of which won't matter for most builds. (For instance, most of the time
> with our Java projects we don't care if they are built on Linux or
> Windows.) So, in summary, the build master's property requirements
> MUST be met and the agent must not have any conflicting properties.
> With the entries of service registration this worked fine.
>
> Incidentally, I don't think I made clear that the point of the whole
> project is to run unit tests every time a change is committed to CVS.
> CruiseControl currently can't distribute its builds and subsequent
> unit tests, so if CVS has been busy there could potentially be enough
> simultaneous builds going on to dog the build machine. We hope to be
> able to distribute the work and accumulate the results on the build
> master.
>
> Hope that at least clears up our use-case!

Going off at a tangent for a moment,a lot of this environment
suitability stuff could be done using Neon. Essentially the master
node could attach to agents running on other nodes and call methods on
the agents that are spread across the network.

There are a couple of possibilities for dynamic properties - one a
hashmap asa field in your entry where the keys are recognised by the
masters, or add a reference to something like a configuration file,
that can be parsed and evaluated by the worker. As an issue, you have
to deal with the case that no worker on your network fits your
requirements and thus the entry may remain in the space

From what it looks from your use cases, you want to use some form of
asynchronous request-reply, using ID's in the entries to re-establish
context in your master, when a reply from your workers arrive. Is the
order important - for instance if two changes are placed into CVS for
the same file, is it important to get back the test result for the
first CVS change, prior to getting the result for the second change?

--Calum

===========================================================================
To unsubscribe, send email to [email protected] and include in the body
of the message "signoff JAVASPACES-USERS".  For general help, send email to
[email protected] and include in the body of the message "help".

To view past JAVASPACES-USERS postings, please see:
http://archives.java.sun.com/archives/javaspaces-users.html

JDC members can download the JavaSpaces(tm) Technology from:
http://developer.java.sun.com/developer/products/jini/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.