A publisher sends a FETCH_ERROR control message in response to a failed FETCH.
FETCH_ERROR Message {
Type (i) = 0x19,
Length (16),
Request ID (i),
Error Code (i),
Error Reason (Reason Phrase)
}
-
Request ID: The Request ID of the FETCH this message is replying to Section 8.7.
-
Error Code: Identifies an integer error code for fetch failure.
-
Error Reason: Provides the reason for fetch error. See Section 1.3.3.
The application SHOULD use a relevant error code in FETCH_ERROR, as defined below:
| Code | Reason |
|---|---|
| 0x0 | Internal Error |
| 0x1 | Unauthorized |
| 0x2 | Timeout |
| 0x3 | Not Supported |
| 0x4 | Track Does Not Exist |
| 0x5 | Invalid Range |
| 0x6 | No Objects |
| 0x7 | Invalid Joining Request ID |
| 0x8 | Unknown Status in Range |
| 0x9 | Malformed Track |
| 0x10 | Malformed Auth Token |
| 0x12 | Expired Auth Token |
-
Internal Error - An implementation specific or generic error occurred.
-
Unauthorized - The subscriber is not authorized to fetch from the given track.
-
Timeout - The fetch could not be completed before an implementation specific timeout. For example, a relay could not FETCH missing objects within the timeout.
-
Not supported - The endpoint does not support the FETCH method.
-
Track Does Not Exist - The requested track is not available at the publisher.
-
Invalid Range - The end of the requested range is earlier than the beginning, the start of the requested range is beyond the Largest Location, or the track has not published any Objects yet.
-
No Objects - No Objects exist between the requested Start and End Locations.
-
Invalid Joining Subscribe ID - The joining Fetch referenced a Request ID that did not belong to an active Subscription.
-
Unknown Status in Range - The requested range contains objects with unknown status.
-
Malformed Track - A relay publisher detected the track was malformed (see Section 2.5).
-
Malformed Auth Token - Invalid Auth Token serialization during registration (see Section 8.2.1.1).
-
Expired Auth Token - Authorization token has expired Section 8.2.1.1).