[DALI] posting parameters to a DAI-async (aka UWS) job
Patrick Dowler
patrick.dowler at nrc-cnrc.gc.ca
Wed Apr 24 09:43:17 PDT 2013
The PR-DALI and the UWS spec (interpretting the latter liberally) allow
the caller to POST job parameters in three ways:
1. included with the initial post to the job list (eg during job
creation). This is useful and efficient as it allows one to completely
specify a job in one POST and (for DALI) it makes sync and async that
much more similar to use. We definitely want this.
2. to the parameters resource (eg /srv/joblist/<jobid>/parameters). This
is unambiguous: you are modifying that list of parameters.
3. directly to the job url (eg /srv/joblist/<jobid>). This is kind of
sketchy to implement, especially if one starts thinking about allowing
the UWS job control params here (and in #1) and then "putting things
where they belong"...
*** TODO ***
What we can do right now in DALI is restrict what the UWS-1.0 spec
allows. The suggestion is to completely forbid #3 and only allow #1 and #2.
Disclosure: The OpenCADC library (cadcUWS) does make all of these work,
but while we do use feature #3 I'm willing to make that change as I did
always consider it overly complex (to implement) and lazy (on the caller
side).
Notes on #2: For this to be really purely RESTful, one should require
PUT to add a parameter to the list and POST (to
/srv/joblist/<jobid>/parameters/FOO) would be used to modify an existing
param. DALI allows multiple instances of a param so the current
UWS/interpretation does not have a way to distinguish between adding a
param and modifying one. BUT: I think this is something for a future UWS
spec.
--
Patrick Dowler
Canadian Astronomy Data Centre
National Research Council Canada
5071 West Saanich Road
Victoria, BC V9A 2L9
250-363-0044 (office) 250-363-0045 (fax)
More information about the dal
mailing list