[SAGA-RG] missing(?) method reporting last modification time
Andre Merzky
andre at merzky.net
Thu Jun 4 08:41:35 CDT 2009
Quoting [Thilo Kielmann] (Jun 04 2009):
>
> Dear Sylvain,
>
> > >
> > I raised it at OGF23 (see slide 34 of my talk).
>
> sorry, I must have missed this within your list of modifications.
>
> > Our deviations from the SAGA specification are listed here
> > http://grid.in2p3.fr/jsaga-dev/SAGA-delta.html
>
> I just had a look. This is quite a list. Would you, from your experience
> as of today, recommend more/some/all for inclusion in a "fixed" SAGA
> standard?
Dear Sylvain,
we should have given you more detailed feedback on your list
earlier on *blush* Most of the items have been discussed at
one point or the other, however. Here is a detailed list.
Thilo is right: we should resolve the items soonish.
AmbiguityException:
The spec does not define if saga::exceptions can be
extended. I guess legally that can only happen outside
the saga namespace, so, IMHO, that is a conflict. OTOH,
its closely related to the implementation semantics
(retry), so, to some extent, its an implementation
detail. Not sure how to handle in the spec.
BTW: 'avoid account locking' is an interesting use
case...
context.toString():
Thats a language binding issue. In C++, we also have a
get_string () on the URL, for example.
URL:
Query interpreted as adaptor parameters: thats an
implementation specific behaviour: SAGA does not define
URL semantics. It breaks application portability though
I assume.
FLAGS_BYPASSEXIST=4096
I would think this is better solved on configuration
level, in Java as a saga.property for example? Again,
that breaks portability.
additional method copyFrom():
I don't understand the use case for this. How is
saga::file f (url_1);
f.copy_from (url_2);
different from
saga::file tmp (url_2);
tmp.copy (url_1);
saga::file f (url_1);
Is it about saving one line of code, and one temp object?
additional method getLastModified():
as discussed, should make it into the spec.
NSEntry.remove() allows !Recursive flag:
The is actually in the spec, as
saga::directory d (url);
d.remove (0); // 0: empty flag set, i.e. Recursive is not set
I think what you want is to change the semantics, from
- a âBadParameterâ exception is thrown if the
entry is a directory and the âRecursiveâ flag
is not set.
- a âBadParameterâ exception is thrown if the
entry is a *nonempty* directory and the
âRecursiveâ flag is not set.
Would that solve your use case?
Job description JobName attribute added
This is not in the spec. Well, we had to draw a line
somewhere, and as it was optional in JSDL, and noone
really had a compelling use case, it was left out. Do
you have applications which require that one?
Job description CPUArchitecture attribute added
has been added in the spec meanwhile
Job description OperatingSystemType attribute added
has been added in the spec meanwhile
Job description JobStartTime and JobContact attributes not supported
That is no problem.
job attribute 'NativeJobDescription' added
I assume that is a read-only attribute? What is the use
case for this one? Debugging?
job.sub_state metric added:
saga::job already has a metric 'job.state_detail' - what
is the difference?
method allocateResource added:
Is that method on job, or on the job_service? What is
the semantics?
I think that this would not go into the job managament
in SAGA, but rather into the resource
discovery/management extension Thilo's group is working
on (within XtreemOS). You might want to check with them
if their extension proposal fits your requirements...
--
Nothing is ever easy.
More information about the saga-rg
mailing list