Details
-
Feature
-
Status: Released (View Workflow)
-
Minor
-
Resolution: Fixed
-
2.9.0
-
None
Description
Current Situation
- YADE currently returns the generic return code 99 for all errors.
- As a result, calling applications cannot distinguish between different error scenarios.
Desired Behavior
- Introduce dedicated return codes for different error scenarios, allowing calling applications to distinguish between them and react accordingly.
Maintainer Note
| Range | Category | Code | Description | |
|---|---|---|---|---|
| 0 | Success | 0 | Execution completed successfully | |
| Error codes | ||||
| 20-29 | Connection / Authentication | |||
| 20 | Source | Connection to the source failed. | ||
| 21 | Source | Authentication to the source failed. | ||
| 22 | Target | Connection to the target failed. | ||
| 23 | Target | Authentication to the target failed. | ||
| 24 | Jump | Connection to the jump host failed. | ||
| 25 | Jump | Authentication to the jump host failed. | ||
| 26 | Jump | Internal return code used by the jump host YADE client to trigger a switch to an alternative profile on the host client, if enabled. See |
||
| 30-39 | Source Files | |||
| 30 | Source | No source files matching the selection criteria were found and SourceFileOptions / Directives / DisableErrorOnNoFilesFound = false . | ||
| 31 | Source | The configured expected result set condition (SourceFileOptions / ResultSet / ResultSetCount / ...) was not met. | ||
| 32 | Source | The configured transfer zero bytes condition (SourceFileOptions / Directives / TransferZeroBytesFiles) was not met. | ||
| 35 | Source | Availability starting with The source directory was not found. |
||
| 38 | Source | Availability starting with Generic source directory error (e.g. read/delete/access denied) and fallback for all other unclassified source directory related errors. |
||
| 39 | Source | Generic source file error (e.g. read/access denied) and fallback for all other unclassified source file related errors. | ||
| 40-49 | Target Files | |||
| Note: applicable only to single-file transfers or when TransferOptions / Transactional = true. | ||||
| 40 | Target | Target file size does not match the source size and TargetFileOptions / CheckSize = true. | ||
| 41 | Target | Target file checksum validation failed (SourceFileOptions / CheckInterityHash). | ||
| 42 | Target | Target file exceeds the maximum upload file size because the source file is too large (currently a fixed, non-configurable 50 MB limit for Azure Blob Storage only). | ||
| 45 | Target | Availability starting with DisableMakeDirectories=true and the target directory was not found. |
||
| 46 | Target | Availability starting with DisableMakeDirectories=false and target directories could not be created. |
||
| 48 | Target | Availability starting with Generic target directory error (e.g. read/write/delete/access denied) and fallback for all other unclassified target directory related errors. |
||
| 49 | Target | Generic target file error (e.g. read/write/delete/access denied during transfer) and fallback for all other unclassified target file related errors. | ||
| 80-89 | Configuration | |||
| 80 | Client | Configuration file not found. | ||
| 81 | Client | Configuration file could not be parsed (e.g. invalid XML). | ||
| 82 | Client | A required argument (e.g. settings, profile) is missing. | ||
| 83 | Client | The specified profile does not exist. | ||
| 89 | Client | Generic configuration error and fallback for all other unclassified configuration related errors. | ||
| 99 | Fallback | 99 | Fallback for all other unclassified errors. | |
| Note: The return code 99 is reserved as the generic fallback for unexpected or unclassified errors. It should normally not be returned, but may still occur for unexpected runtime failures (e.g. OutOfMemoryError) or other non-classifiable errors. |
Test Instructions
- Configure test scenarios that trigger each of the return codes described above.
- For example:
- Connection error: invalid host, port.
- Authentication error: invalid username, password, public key.
- For example:
- Verify the return codes with all supported providers.
- Verify the return codes using both the JITL YADE Job and the YADE shell client.
- If return code 99 is returned during testing, please report the corresponding test scenario.