272 | | Query the status of a set of batches. |
273 | | {{{ |
274 | | extern int query_batches( |
275 | | const char* project_url, |
276 | | const char* authenticator, |
277 | | vector<string> &batch_names, |
278 | | QUERY_BATCH_REPLY& reply, |
279 | | string& error_msg |
280 | | ); |
281 | | |
282 | | struct QUERY_BATCH_JOB { |
283 | | string job_name; |
284 | | string status; // DONE, ERROR, or IN_PROGRESS |
285 | | QUERY_BATCH_JOB(){} |
286 | | }; |
287 | | |
288 | | struct QUERY_BATCH_REPLY { |
289 | | vector<int> batch_sizes; // how many jobs in each of the queried batches |
290 | | vector<QUERY_BATCH_JOB> jobs; // the jobs, sequentially |
| 272 | Query the status of this user's batches. |
| 273 | |
| 274 | {{{ |
| 275 | int query_batches( |
| 276 | const char* project_url, |
| 277 | const char* authenticator, |
| 278 | vector<BATCH_STATUS>& batches, |
| 279 | string& error_msg |
| 280 | ); |
| 281 | |
| 282 | struct BATCH_STATUS { |
| 283 | int id; |
| 284 | char name[256]; // name of batch |
| 285 | char app_name[256]; |
| 286 | int state; // see lib/common_defs.h |
| 287 | int njobs; // how many jobs in batch |
| 288 | int nerror_jobs; // how many jobs errored out |
| 289 | double fraction_done; // how much of batch is done (0..1) |
| 290 | double create_time; // when batch was created |
| 291 | double expire_time; // when it will expire |
| 292 | double est_completion_time; // estimated completion time |
| 293 | double completion_time; // if completed, actual completion time |
| 294 | double credit_estimate; // original estimate for credit |
| 295 | double credit_canonical; // if completed, granted credit |
| 296 | |
| 297 | int parse(XML_PARSER&); |
| 298 | void print(); |
| 299 | }; |
| 300 | }}} |
| 301 | |
| 302 | === query_batch() === |
| 303 | |
| 304 | Return the detailed status of jobs in a given batch (can specify by either ID or name). |
| 305 | |
| 306 | {{{ |
| 307 | extern int query_batch( |
| 308 | const char* project_url, |
| 309 | const char* authenticator, |
| 310 | int batch_id, |
| 311 | const char batch_name[256], |
| 312 | vector<JOB_STATE>& jobs, |
| 313 | string& error_msg |
| 314 | ); |
| 315 | |
| 316 | struct JOB_STATE { |
| 317 | int id; |
| 318 | char name[256]; |
| 319 | int canonical_instance_id; // it job completed successfully, |
| 320 | // the ID of the canonical instance |
| 321 | int n_outfiles; // number of output files |
| 407 | === query_batch_set() === |
| 408 | |
| 409 | Return the status of the jobs in a given set of batches. |
| 410 | This is used by the Condor interface; it's probably not useful outside of that. |
| 411 | {{{ |
| 412 | extern int query_batch_set( |
| 413 | const char* project_url, |
| 414 | const char* authenticator, |
| 415 | vector<string> &batch_names, |
| 416 | QUERY_BATCH_REPLY& reply, |
| 417 | string& error_msg |
| 418 | ); |
| 419 | |
| 420 | struct JOB_STATUS { |
| 421 | string job_name; |
| 422 | string status; // DONE, ERROR, or IN_PROGRESS |
| 423 | }; |
| 424 | |
| 425 | struct QUERY_BATCH_SET_REPLY { |
| 426 | vector<int> batch_sizes; // how many jobs in each of the queried batches |
| 427 | vector<JOB_STATUS> jobs; // the jobs, sequentially |
| 428 | }; |
| 429 | |
| 430 | }}} |