Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Message => MessageHeader (Request | Response | Error)
MessageHeader => defined below
Request => defined below
Response => defined below

...

Request => RequestHeader [MetaData] RequestAPI
RequestHeader => defined below
MetaData => optional

RequestAPI => (PutRequest | GetRequest | PutAllRequest | GetAllRequest |ServerConfigRequest | ClientConfigRequest | AuthRequest)

...

RequestHeader

The request header contains the ApiId, ApiVersion, and hasMetaData flag to indicate whether the request contains some metadata.

...

ResponseHeader => (ResponseTypeId | ErrorCode) hasMetaData CorrelationIdDescription
ResponseTypeId => fixedSize = 2 bytes, type = int16 
hasMetaData => fixedSize = 1 byte, type = booleanif there is any meta data associated with this request
CorrelationId => fixedSize = 4 bytes, type = int32 

Error Format

The response will indicate the error using the fixed size error header, optional metadata and error message.

Response => ErrorHeader [MetaData] errorMessage
ErrorHeader => defined below
MetaData => Optional
errorMessage => (variable size, type = String)

ErrorHeader

ErrorHeader => ErrorCode hasMetaData CorrelationIdDescription
ErrorCode => fixedSize = 2 bytes, type = int16When there is error response will have message(String) for it
hasMetaData => fixedSize = 1 byte, type = booleanif there is any meta data associated with this request
CorrelationId => fixedSize = 4 bytes, type = int32 

Value

The Value is serialized bytes for the Geode region value. It contains value header and series of bytes. Using value header, we can send a large number of bytes big serialized object in more than one chunk. 

Value => ValueHeader value {ValueHeader value}Description
ValueHeader => defined below 
value => bytesSerialized Value Object which Geode can understand

...