Versions Compared

Key

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

...

NameType CodeSize (bytes)
byte11
short22
int34
long48
float54
double68
char72
bool81
string94 bytes length + length * 2
UUID (Guid)108
date118
byte array124 bytes length + length
short array134 bytes length + length * 2
int array144 bytes length + length * 4
long array154 bytes length + length * 8
float array164 bytes length + length * 4
double array174 bytes length + length * 8
char array184 bytes length + length * 2
bool array194 bytes length + length
string array204 bytes length + variable length strings, see above
UUID (Guid) array214 bytes length + length * 8
date array224 bytes length + length * 8
NULL1010


Complex Objects

Complex objects consist of a 24-byte header and a set of fields (key-value pairs).

Header
byteObject type code, always 103
byteVersion, always 1
shortFlags, see below
intType id, Java-style hash code of the type name
intHash code, Java-style hash of contents without header
intLength, including header
intSchema Id, see below
intSchemaOffset, see below

 TODO

Message format

All messages, request and response, including handshake, start with int message length (excluding these first 4 bytes). E.g. empty message would be represented by 4 zero bytes.

...