OptimizeToursValidationError(
mapping=None, *, ignore_unknown_fields=False, **kwargs
)
Describes an error encountered when validating an
OptimizeToursRequest
.
Attributes
Name | Description |
code |
int
A validation error is defined by the pair ( code ,
display_name ) which are always present.
Other fields (below) provide more context about the error.
*MULTIPLE ERRORS*: When there are multiple errors, the
validation process tries to output several of them. Much
like a compiler, this is an imperfect process. Some
validation errors will be "fatal", meaning that they stop
the entire validation process. This is the case for
display_name="UNSPECIFIED" errors, among others. Some
may cause the validation process to skip other errors.
*STABILITY*: code and display_name should be very
stable. But new codes and display names may appear over
time, which may cause a given (invalid) request to yield a
different (code , display_name ) pair because the new
error hid the old one (see "MULTIPLE ERRORS").
*REFERENCE*: A list of all (code, name) pairs:
- UNSPECIFIED = 0;
- VALIDATION_TIMEOUT_ERROR = 10; Validation couldn't be
completed within the deadline.
- REQUEST_OPTIONS_ERROR = 12;
- REQUEST_OPTIONS_INVALID_SOLVING_MODE = 1201;
- REQUEST_OPTIONS_INVALID_MAX_VALIDATION_ERRORS = 1203;
- REQUEST_OPTIONS_INVALID_GEODESIC_METERS_PER_SECOND =
1204;
- REQUEST_OPTIONS_GEODESIC_METERS_PER_SECOND_TOO_SMALL =
1205;
- REQUEST_OPTIONS_MISSING_GEODESIC_METERS_PER_SECOND =
1206;
- REQUEST_OPTIONS_POPULATE_PATHFINDER_TRIPS_AND_GEODESIC_DISTANCE
= 1207;
- REQUEST_OPTIONS_COST_MODEL_OPTIONS_AND_GEODESIC_DISTANCE
= 1208;
- REQUEST_OPTIONS_TRAVEL_MODE_INCOMPATIBLE_WITH_TRAFFIC
= 1211;
- REQUEST_OPTIONS_MULTIPLE_TRAFFIC_FLAVORS = 1212;
- REQUEST_OPTIONS_INVALID_TRAFFIC_FLAVOR = 1213;
- REQUEST_OPTIONS_TRAFFIC_ENABLED_WITHOUT_GLOBAL_START_TIME
= 1214;
- REQUEST_OPTIONS_TRAFFIC_ENABLED_WITH_PRECEDENCES =
1215;
- REQUEST_OPTIONS_TRAFFIC_PREFILL_MODE_INVALID = 1216;
- REQUEST_OPTIONS_TRAFFIC_PREFILL_ENABLED_WITHOUT_TRAFFIC
= 1217;
- INJECTED_SOLUTION_ERROR = 20;
- INJECTED_SOLUTION_MISSING_LABEL = 2000;
- INJECTED_SOLUTION_DUPLICATE_LABEL = 2001;
- INJECTED_SOLUTION_AMBIGUOUS_INDEX = 2002;
- SHIPMENT_MODEL_ERROR = 22;
- SHIPMENT_MODEL_TOO_LARGE = 2200;
- SHIPMENT_MODEL_TOO_MANY_CAPACITY_TYPES = 2201;
- SHIPMENT_MODEL_GLOBAL_START_TIME_NEGATIVE_OR_NAN =
2202;
- SHIPMENT_MODEL_GLOBAL_END_TIME_TOO_LARGE_OR_NAN =
2203;
- SHIPMENT_MODEL_GLOBAL_START_TIME_AFTER_GLOBAL_END_TIME
= 2204;
- SHIPMENT_MODEL_GLOBAL_DURATION_TOO_LONG = 2205;
- INDEX_ERROR = 24;
- TAG_ERROR = 26;
- TIME_WINDOW_ERROR = 28;
- TIME_WINDOW_INVALID_START_TIME = 2800;
- TIME_WINDOW_INVALID_END_TIME = 2801;
- TIME_WINDOW_INVALID_SOFT_START_TIME = 2802;
- TIME_WINDOW_INVALID_SOFT_END_TIME = 2803;
- TIME_WINDOW_OUTSIDE_GLOBAL_TIME_WINDOW = 2804;
- TIME_WINDOW_START_TIME_AFTER_END_TIME = 2805;
- TIME_WINDOW_INVALID_COST_PER_HOUR_BEFORE_SOFT_START_TIME
= 2806;
- TIME_WINDOW_INVALID_COST_PER_HOUR_AFTER_SOFT_END_TIME
= 2807;
- TIME_WINDOW_COST_BEFORE_SOFT_START_TIME_WITHOUT_SOFT_START_TIME
= 2808;
- TIME_WINDOW_COST_AFTER_SOFT_END_TIME_WITHOUT_SOFT_END_TIME
= 2809;
- TIME_WINDOW_SOFT_START_TIME_WITHOUT_COST_BEFORE_SOFT_START_TIME
= 2810;
- TIME_WINDOW_SOFT_END_TIME_WITHOUT_COST_AFTER_SOFT_END_TIME
= 2811;
- TIME_WINDOW_OVERLAPPING_ADJACENT_OR_EARLIER_THAN_PREVIOUS
= 2812;
- TIME_WINDOW_START_TIME_AFTER_SOFT_START_TIME = 2813;
- TIME_WINDOW_SOFT_START_TIME_AFTER_END_TIME = 2814;
- TIME_WINDOW_START_TIME_AFTER_SOFT_END_TIME = 2815;
- TIME_WINDOW_SOFT_END_TIME_AFTER_END_TIME = 2816;
- TIME_WINDOW_COST_BEFORE_SOFT_START_TIME_SET_AND_MULTIPLE_WINDOWS
= 2817;
- TIME_WINDOW_COST_AFTER_SOFT_END_TIME_SET_AND_MULTIPLE_WINDOWS
= 2818;
- TRANSITION_ATTRIBUTES_ERROR = 30;
- TRANSITION_ATTRIBUTES_INVALID_COST = 3000;
- TRANSITION_ATTRIBUTES_INVALID_COST_PER_KILOMETER =
3001;
- TRANSITION_ATTRIBUTES_DUPLICATE_TAG_PAIR = 3002;
- TRANSITION_ATTRIBUTES_DISTANCE_LIMIT_MAX_METERS_UNSUPPORTED
= 3003;
- TRANSITION_ATTRIBUTES_UNSPECIFIED_SOURCE_TAGS = 3004;
- TRANSITION_ATTRIBUTES_CONFLICTING_SOURCE_TAGS_FIELDS =
3005;
- TRANSITION_ATTRIBUTES_UNSPECIFIED_DESTINATION_TAGS =
3006;
- TRANSITION_ATTRIBUTES_CONFLICTING_DESTINATION_TAGS_FIELDS
= 3007;
- TRANSITION_ATTRIBUTES_DELAY_DURATION_NEGATIVE_OR_NAN =
3008;
- TRANSITION_ATTRIBUTES_DELAY_DURATION_EXCEEDS_GLOBAL_DURATION
= 3009;
- AMOUNT_ERROR = 31;
- AMOUNT_NEGATIVE_VALUE = 3100;
- LOAD_LIMIT_ERROR = 33;
- LOAD_LIMIT_INVALID_COST_ABOVE_SOFT_MAX = 3303;
- LOAD_LIMIT_SOFT_MAX_WITHOUT_COST_ABOVE_SOFT_MAX =
3304;
- LOAD_LIMIT_COST_ABOVE_SOFT_MAX_WITHOUT_SOFT_MAX =
3305;
- LOAD_LIMIT_NEGATIVE_SOFT_MAX = 3306;
- LOAD_LIMIT_MIXED_DEMAND_TYPE = 3307;
- LOAD_LIMIT_MAX_LOAD_NEGATIVE_VALUE = 3308;
- LOAD_LIMIT_SOFT_MAX_ABOVE_MAX = 3309;
- INTERVAL_ERROR = 34;
- INTERVAL_MIN_EXCEEDS_MAX = 3401;
- INTERVAL_NEGATIVE_MIN = 3402;
- INTERVAL_NEGATIVE_MAX = 3403;
- INTERVAL_MIN_EXCEEDS_CAPACITY = 3404;
- INTERVAL_MAX_EXCEEDS_CAPACITY = 3405;
- DISTANCE_LIMIT_ERROR = 36;
- DISTANCE_LIMIT_INVALID_COST_AFTER_SOFT_MAX = 3601;
- DISTANCE_LIMIT_SOFT_MAX_WITHOUT_COST_AFTER_SOFT_MAX =
3602;
- DISTANCE_LIMIT_COST_AFTER_SOFT_MAX_WITHOUT_SOFT_MAX =
3603;
- DISTANCE_LIMIT_NEGATIVE_MAX = 3604;
- DISTANCE_LIMIT_NEGATIVE_SOFT_MAX = 3605;
- DISTANCE_LIMIT_SOFT_MAX_LARGER_THAN_MAX = 3606;
- DURATION_LIMIT_ERROR = 38;
- DURATION_LIMIT_MAX_DURATION_NEGATIVE_OR_NAN = 3800;
- DURATION_LIMIT_SOFT_MAX_DURATION_NEGATIVE_OR_NAN =
3801;
- DURATION_LIMIT_INVALID_COST_PER_HOUR_AFTER_SOFT_MAX =
3802;
- DURATION_LIMIT_SOFT_MAX_WITHOUT_COST_AFTER_SOFT_MAX =
3803;
- DURATION_LIMIT_COST_AFTER_SOFT_MAX_WITHOUT_SOFT_MAX =
3804;
- DURATION_LIMIT_QUADRATIC_SOFT_MAX_DURATION_NEGATIVE_OR_NAN
= 3805;
- DURATION_LIMIT_INVALID_COST_AFTER_QUADRATIC_SOFT_MAX =
3806;
- DURATION_LIMIT_QUADRATIC_SOFT_MAX_WITHOUT_COST_PER_SQUARE_HOUR
= 3807;
- DURATION_LIMIT_COST_PER_SQUARE_HOUR_WITHOUT_QUADRATIC_SOFT_MAX
= 3808;
- DURATION_LIMIT_QUADRATIC_SOFT_MAX_WITHOUT_MAX = 3809;
- DURATION_LIMIT_SOFT_MAX_LARGER_THAN_MAX = 3810;
- DURATION_LIMIT_QUADRATIC_SOFT_MAX_LARGER_THAN_MAX =
3811;
- DURATION_LIMIT_DIFF_BETWEEN_MAX_AND_QUADRATIC_SOFT_MAX_TOO_LARGE
= 3812;
- DURATION_LIMIT_MAX_DURATION_EXCEEDS_GLOBAL_DURATION =
3813;
- DURATION_LIMIT_SOFT_MAX_DURATION_EXCEEDS_GLOBAL_DURATION
= 3814;
- DURATION_LIMIT_QUADRATIC_SOFT_MAX_DURATION_EXCEEDS_GLOBAL_DURATION
= 3815;
- SHIPMENT_ERROR = 40;
- SHIPMENT_PD_ABSOLUTE_DETOUR_LIMIT_DURATION_NEGATIVE_OR_NAN
= 4000;
- SHIPMENT_PD_ABSOLUTE_DETOUR_LIMIT_DURATION_EXCEEDS_GLOBAL_DURATION
= 4001;
- SHIPMENT_PD_TIME_LIMIT_DURATION_NEGATIVE_OR_NAN =
4002;
- SHIPMENT_PD_TIME_LIMIT_DURATION_EXCEEDS_GLOBAL_DURATION
= 4003;
- SHIPMENT_EMPTY_SHIPMENT_TYPE = 4004;
- SHIPMENT_NO_PICKUP_NO_DELIVERY = 4005;
- SHIPMENT_INVALID_PENALTY_COST = 4006;
- SHIPMENT_ALLOWED_VEHICLE_INDEX_OUT_OF_BOUNDS = 4007;
- SHIPMENT_DUPLICATE_ALLOWED_VEHICLE_INDEX = 4008;
- SHIPMENT_INCONSISTENT_COST_FOR_VEHICLE_SIZE_WITHOUT_INDEX
= 4009;
- SHIPMENT_INCONSISTENT_COST_FOR_VEHICLE_SIZE_WITH_INDEX
= 4010;
- SHIPMENT_INVALID_COST_FOR_VEHICLE = 4011;
- SHIPMENT_COST_FOR_VEHICLE_INDEX_OUT_OF_BOUNDS = 4012;
- SHIPMENT_DUPLICATE_COST_FOR_VEHICLE_INDEX = 4013;
- SHIPMENT_DETOUR_WITHOUT_PICKUP_AND_DELIVERY = 4014;
- VEHICLE_ERROR = 42;
- VEHICLE_EMPTY_REQUIRED_OPERATOR_TYPE = 4200;
- VEHICLE_DUPLICATE_REQUIRED_OPERATOR_TYPE = 4201;
- VEHICLE_NO_OPERATOR_WITH_REQUIRED_OPERATOR_TYPE =
4202;
- VEHICLE_EMPTY_START_TAG = 4203;
- VEHICLE_DUPLICATE_START_TAG = 4204;
- VEHICLE_EMPTY_END_TAG = 4205;
- VEHICLE_DUPLICATE_END_TAG = 4206;
- VEHICLE_EXTRA_VISIT_DURATION_NEGATIVE_OR_NAN = 4207;
- VEHICLE_EXTRA_VISIT_DURATION_EXCEEDS_GLOBAL_DURATION =
4208;
- VEHICLE_EXTRA_VISIT_DURATION_EMPTY_KEY = 4209;
- VEHICLE_FIRST_SHIPMENT_INDEX_OUT_OF_BOUNDS = 4210;
- VEHICLE_FIRST_SHIPMENT_IGNORED = 4211;
- VEHICLE_FIRST_SHIPMENT_NOT_BOUND = 4212;
- VEHICLE_LAST_SHIPMENT_INDEX_OUT_OF_BOUNDS = 4213;
- VEHICLE_LAST_SHIPMENT_IGNORED = 4214;
- VEHICLE_LAST_SHIPMENT_NOT_BOUND = 4215;
- VEHICLE_IGNORED_WITH_USED_IF_ROUTE_IS_EMPTY = 4216;
- VEHICLE_INVALID_COST_PER_KILOMETER = 4217;
- VEHICLE_INVALID_COST_PER_HOUR = 4218;
- VEHICLE_INVALID_COST_PER_TRAVELED_HOUR = 4219;
- VEHICLE_INVALID_FIXED_COST = 4220;
- VEHICLE_INVALID_TRAVEL_DURATION_MULTIPLE = 4221;
- VEHICLE_MINIMUM_DURATION_LONGER_THAN_DURATION_LIMIT =
4222;
- VISIT_REQUEST_ERROR = 44;
- VISIT_REQUEST_EMPTY_TAG = 4400;
- VISIT_REQUEST_DUPLICATE_TAG = 4401;
- VISIT_REQUEST_DURATION_NEGATIVE_OR_NAN = 4404;
- VISIT_REQUEST_DURATION_EXCEEDS_GLOBAL_DURATION = 4405;
- PRECEDENCE_ERROR = 46;
- BREAK_ERROR = 48;
- BREAK_RULE_EMPTY = 4800;
- BREAK_REQUEST_UNSPECIFIED_DURATION = 4801;
- BREAK_REQUEST_UNSPECIFIED_EARLIEST_START_TIME = 4802;
- BREAK_REQUEST_UNSPECIFIED_LATEST_START_TIME = 4803;
- BREAK_REQUEST_DURATION_NEGATIVE_OR_NAN = 4804; = 4804;
- BREAK_REQUEST_LATEST_START_TIME_BEFORE_EARLIEST_START_TIME
= 4805;
- BREAK_REQUEST_EARLIEST_START_TIME_BEFORE_GLOBAL_START_TIME
= 4806;
- BREAK_REQUEST_LATEST_END_TIME_AFTER_GLOBAL_END_TIME =
4807;
- BREAK_REQUEST_NON_SCHEDULABLE = 4808;
- BREAK_FREQUENCY_MAX_INTER_BREAK_DURATION_NEGATIVE_OR_NAN
= 4809;
- BREAK_FREQUENCY_MIN_BREAK_DURATION_NEGATIVE_OR_NAN =
4810;
- BREAK_FREQUENCY_MIN_BREAK_DURATION_EXCEEDS_GLOBAL_DURATION
= 4811;
- BREAK_FREQUENCY_MAX_INTER_BREAK_DURATION_EXCEEDS_GLOBAL_DURATION
= 4812;
- BREAK_REQUEST_DURATION_EXCEEDS_GLOBAL_DURATION = 4813;
- BREAK_FREQUENCY_MISSING_MAX_INTER_BREAK_DURATION =
4814;
- BREAK_FREQUENCY_MISSING_MIN_BREAK_DURATION = 4815;
- SHIPMENT_TYPE_INCOMPATIBILITY_ERROR = 50;
- SHIPMENT_TYPE_INCOMPATIBILITY_EMPTY_TYPE = 5001;
- SHIPMENT_TYPE_INCOMPATIBILITY_LESS_THAN_TWO_TYPES =
5002;
- SHIPMENT_TYPE_INCOMPATIBILITY_DUPLICATE_TYPE = 5003;
- SHIPMENT_TYPE_INCOMPATIBILITY_INVALID_INCOMPATIBILITY_MODE
= 5004;
- SHIPMENT_TYPE_INCOMPATIBILITY_TOO_MANY_INCOMPATIBILITIES
= 5005;
- SHIPMENT_TYPE_REQUIREMENT_ERROR = 52;
- SHIPMENT_TYPE_REQUIREMENT_NO_REQUIRED_TYPE = 52001;
- SHIPMENT_TYPE_REQUIREMENT_NO_DEPENDENT_TYPE = 52002;
- SHIPMENT_TYPE_REQUIREMENT_INVALID_REQUIREMENT_MODE =
52003;
- SHIPMENT_TYPE_REQUIREMENT_TOO_MANY_REQUIREMENTS =
52004;
- SHIPMENT_TYPE_REQUIREMENT_EMPTY_REQUIRED_TYPE = 52005;
- SHIPMENT_TYPE_REQUIREMENT_DUPLICATE_REQUIRED_TYPE =
52006;
- SHIPMENT_TYPE_REQUIREMENT_NO_REQUIRED_TYPE_FOUND =
52007;
- SHIPMENT_TYPE_REQUIREMENT_EMPTY_DEPENDENT_TYPE =
52008;
- SHIPMENT_TYPE_REQUIREMENT_DUPLICATE_DEPENDENT_TYPE =
52009;
- SHIPMENT_TYPE_REQUIREMENT_SELF_DEPENDENT_TYPE = 52010;
- SHIPMENT_TYPE_REQUIREMENT_GRAPH_HAS_CYCLES = 52011;
- VEHICLE_OPERATOR_ERROR = 54;
- VEHICLE_OPERATOR_EMPTY_TYPE = 5400;
- VEHICLE_OPERATOR_MULTIPLE_START_TIME_WINDOWS = 5401;
- VEHICLE_OPERATOR_SOFT_START_TIME_WINDOW = 5402;
- VEHICLE_OPERATOR_MULTIPLE_END_TIME_WINDOWS = 5403;
- VEHICLE_OPERATOR_SOFT_END_TIME_WINDOW = 5404;
- DURATION_SECONDS_MATRIX_ERROR = 56;
- DURATION_SECONDS_MATRIX_DURATION_NEGATIVE_OR_NAN =
5600;
- DURATION_SECONDS_MATRIX_DURATION_EXCEEDS_GLOBAL_DURATION
= 5601;
- GRAPH_ARC_ERROR = 58;
- GRAPH_ARC_DURATION_NEGATIVE_OR_NAN = 5800;
- GRAPH_ARC_DURATION_EXCEEDS_GLOBAL_DURATION = 5801;
|
display_name |
str
The error display name. |
fields |
MutableSequence[google.cloud.optimization_v1.types.OptimizeToursValidationError.FieldReference]
An error context may involve 0, 1 (most of the time) or more fields. For example, referring to vehicle #4 and shipment #2's first pickup can be done as follows: :: fields { name: "vehicles" index: 4} fields { name: "shipments" index: 2 sub_field {name: "pickups" index: 0} } Note, however, that the cardinality of fields should not
change for a given error code.
|
error_message |
str
Human-readable string describing the error. There is a 1:1 mapping between code and error_message (when code !=
"UNSPECIFIED").
*STABILITY*: Not stable: the error message associated to a
given code may change (hopefully to clarify it) over
time. Please rely on the display_name and code
instead.
|
offending_values |
str
May contain the value(s) of the field(s). This is not always available. You should absolutely not rely on it and use it only for manual model debugging. |
Classes
FieldReference
FieldReference(mapping=None, *, ignore_unknown_fields=False, **kwargs)
Specifies a context for the validation error. A FieldReference
always refers to a given field in this file and follows the same
hierarchical structure. For example, we may specify element #2 of
start_time_windows
of vehicle #5 using:
::
name: "vehicles" index: 5 sub_field { name: "end_time_windows" index: 2 }
We however omit top-level entities such as OptimizeToursRequest
or ShipmentModel
to avoid crowding the message.
This message has oneof
_ fields (mutually exclusive fields).
For each oneof, at most one member field can be set at the same time.
Setting any member of the oneof automatically clears all other
members.
.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields