Revision e91cfc2a
b/doc/rapi.rst | ||
---|---|---|
515 | 515 |
- ops: involved OpCodes as a list of dictionaries for each opcodes in |
516 | 516 |
the job |
517 | 517 |
- opstatus: OpCodes status as a list |
518 |
- opresult: OpCodes results as a list of lists |
|
518 |
- opresult: OpCodes results as a list |
|
519 |
|
|
520 |
For a successful opcode, the ``opresult`` field corresponding to it will |
|
521 |
contain the raw result from its :term:`LogicalUnit`. In case an opcode |
|
522 |
has failed, its element in the opresult list will be a list of two |
|
523 |
elements: |
|
524 |
|
|
525 |
- first element the error type (the Ganeti internal error name) |
|
526 |
- second element a list of either one or two elements: |
|
527 |
|
|
528 |
- the first element is the textual error description |
|
529 |
- the second element, if any, will hold an error classification |
|
530 |
|
|
531 |
The error classification is most useful for the ``OpPrereqError`` |
|
532 |
error type - these errors happen before the OpCode has started |
|
533 |
executing, so it's possible to retry the OpCode without side |
|
534 |
effects. But whether it make sense to retry depends on the error |
|
535 |
classification: |
|
536 |
|
|
537 |
``resolver_error`` |
|
538 |
Resolver errors. This usually means that a name doesn't exist in DNS, |
|
539 |
so if it's a case of slow DNS propagation the operation can be retried |
|
540 |
later. |
|
541 |
|
|
542 |
``insufficient_resources`` |
|
543 |
Not enough resources (iallocator failure, disk space, memory, |
|
544 |
etc.). If the resources on the cluster increase, the operation might |
|
545 |
succeed. |
|
546 |
|
|
547 |
``wrong_input`` |
|
548 |
Wrong arguments (at syntax level). The operation will not ever be |
|
549 |
accepted unless the arguments change. |
|
550 |
|
|
551 |
``wrong_state`` |
|
552 |
Wrong entity state. For example, live migration has been requested for |
|
553 |
a down instance, or instance creation on an offline node. The |
|
554 |
operation can be retried once the resource has changed state. |
|
555 |
|
|
556 |
``unknown_entity`` |
|
557 |
Entity not found. For example, information has been requested for an |
|
558 |
unknown instance. |
|
559 |
|
|
560 |
``already_exists`` |
|
561 |
Entity already exists. For example, instance creation has been |
|
562 |
requested for an already-existing instance. |
|
563 |
|
|
564 |
``resource_not_unique`` |
|
565 |
Resource not unique (e.g. MAC or IP duplication). |
|
566 |
|
|
567 |
``internal_error`` |
|
568 |
Internal cluster error. For example, a node is unreachable but not set |
|
569 |
offline, or the ganeti node daemons are not working, etc. A |
|
570 |
``gnt-cluster verify`` should be run. |
|
571 |
|
|
572 |
``environment_error`` |
|
573 |
Environment error (e.g. node disk error). A ``gnt-cluster verify`` |
|
574 |
should be run. |
|
575 |
|
|
576 |
Note that in the above list, by entity we refer to a node or instance, |
|
577 |
while by a resource we refer to an instance's disk, or NIC, etc. |
|
578 |
|
|
519 | 579 |
|
520 | 580 |
``DELETE`` |
521 | 581 |
~~~~~~~~~~ |
Also available in: Unified diff