Chris:

I understand your use case.

Let me summarize my understanding of where I think we are:

Andrew has argued that BES should mandate the use of WS-Names, which are required to have the property of being globally unique in time and space. I asked about the use cases that motivated this requirement, and you replied with a use case in which you want names, but you explicitly do NOT want to be obliged that these names have the global uniqueness property. (As you point out, all you care about is that the names be unique within the context of your LSF system.) That's a perfectly fine use case, but we need to be clear that the names that you propose are NOT WS-Names according to the WS-Naming definition. Thus, if BES was written to require WS-Names, you'd have to include two name fields in your EPR: the WS-Name globally unique address field, and a second field for your LSF jobid.

Two further comments:

1) Your use case illustrates exactly why I am not in favor of the WS-Name requirement for BES. As your example illustrates, different situations demand different sorts of names, with different scopes and semantics. No one approach can meet all requirements. Indeed, in most cases I suspect this WS-Name field will be passed around and never used.

2) This exchange also suggests to me that there may be some lack of clarity in the requirements that motivate this aspect of the BES design.

Ian.


At 04:57 PM 11/10/2005 -0800, Christopher Smith wrote:
>
> I'm concerned that the following two notions may be inconsistent:
>
> a) WS-Names should be globally unique (Andrew)
>
> b) The WS-Name can be used to pass a LSF jobid (Chris)
>
> Or is Chris proposing that LSF be changed to generate its jobids with
> whatever scheme WS-Naming proposes to ensure global uniqueness? (If it
> doesn't, then I don't think that Chris can guarantee that the names that
> LSF generates and the names that someone else generates will not collide.)
>
For me, these names are all about context. Within an LSF environment
(including an LSF multicluster environment), the LSF jobid is sufficient,
and generating another globally unique identifier doesn't really add much
value.

If I'm in a context where I'm dealing with multiple systems that will be
providing me EPRs for interacting with "jobs", then I'll need a higher level
software layer to shield me from the lower level details, and here globally
unique (well ... at least contextual globally unique) identifiers are
required, and add more value.

So let's circle back on this discussion for a moment. You asked for some use
cases for the use of abstract names, and I provided one (perhaps you don't
agree with my usage of abstract names, but that's this side discussion).

This use case is one that we see all the time. Imagine an application
"workbench" (e.g. something like Fluent or Sybyl), that exports a special
BES service to run and manage domain specific jobs through its own "gateway"
to LSF. Imagine then, if you will, a higher level job "viewer" interface
that then produces another EPR for watching jobs (maybe so I can aggregate
my job views from multiple workbenches). A job submitted through the
workbench is viewable through the viewer, but they have different EPRs. The
LSF jobid in this case is the abstract name that let's me know they are the
same thing. And this jobid is as unique as it needs to be within this
context. If I embed this identity information in the EPR, then how do the
two gateways share this information? How can they if they are hosted at
different SOAP endpoints?

-- Chris

_______________________________________________________________
Ian Foster                    www.mcs.anl.gov/~foster
Math & Computer Science Div.  Dept of Computer Science
Argonne National Laboratory   The University of Chicago   
Argonne, IL 60439, U.S.A.     Chicago, IL 60637, U.S.A.
Tel: 630 252 4619             Fax: 630 252 1997
        Globus Alliance, www.globus.org