6 Appendix: Error Codes

Topic Version1Published10/31/2016
For StandardETP v1.1

The following is a summary table of all ETP error codes. Note that the Mnemonic is informational only, and is used in the documentation to make references to error codes more readable, but it has no meaning on the wire (for either binary or json encodings). Implementers may wish use these terms as a #define or constant name in their code, but this is not a part of the spec either. Additionally, it is suggested the errorMessage field in the ProtocolException message contain the Mnemonic as a part of the text description of the error.

Scope

ErrorCode

Mnemonic

Notes

All

1

ENOROLE

The agent does not support the requested role.

All

2

ENOSUPPORTEDPROTOCOLS

The server does not support any of the requested protocols.

All

3

EINVALID_MESSAGETYPE

The message type ID is invalid for the given protocol.

All

4

EUNSUPPORTED_PROTOCOL

The agent does not support the protocol identified in a message header.

All

5

EINVALID_ARGUMENT

Logically invalid argument.

All

6

EPERMISSION_DENIED

Permission denied.

All

7

ENOTSUPPORTED

The operation is not supported by the agent.

All

8

EINVALID_STATE

Indicates that the message is not allowed in the current state of the protocol. For example, sending ChannelStreamingStart for a channel that is already streaming.

All

9

EINVALID_URI

Sent from a producer to a consumer when a request is made to describe a URI that does not exist on the producer.

All

10

EEXPIRED_TOKEN

Sent from server to client when it is about to terminate the session because of an expired security token.

All

11

ENOT_FOUND

Used when a resource is not found.

ChannelData

1002

EINVALID_CHANNELID

Sent from a producer to a consumer when operations are requested on a channel that does not exist.

Store

3001

EUNSUPPORTED_OBJECT

Sent in the Store protocols, when either role sends or requests a data object type that is not supported, according to the protocol capabilities.

Store

3002

EINVALID_OBJECT

Sent in the Store protocols, when either role sends an invalid XML document. Note: We do not distinguish between well-formed and invalid for this purpose. The same error message is used in both cases.

Store

3003

ENOCASCADE_DELETE

This exception is sent when an attempt is made to delete an object that has children and the server does not support cascading deletes.

Store

3004

EPLURAL_OBJECT

Sent when an agent uses puts for more than one object under the plural root of a 1.x Energistics data object. ETP only supports a single data object, one XML document.

Store

3005

EGROWING_PORTION_IGNORED

Sent from a store to a customer when the customer supplies the growing portion in a Put. This is advisory only; the object is upserted, but the growing portion is ignored.