You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(RSL4c) When using MessagePack Message encoding
(RSL4c1) a binary Message payload is encoded as MessagePack binary type
(RSL4c2) a string Message payload is encoded as MessagePack string type
(RSL4c3) a JSON Message payload is stringified either as a JSON Object or Array and encoded as MessagePack string type and the encoding attribute is set to “json”
(RSL4c4) All messages received will deliver payloads in the format they were sent in i.e. binary, string, or a structured type containing the parsed JSON
(RSL4d) When using JSON Message encoding
(RSL4d1) a binary Message payload is encoded as Base64 and represented as a JSON string the encoding attribute is set to “base64”
(RSL4d2) a string Message payload is represented as a JSON string
(RSL4d3) a JSON Message payload is stringified either as a JSON Object or Array and represented as a JSON string and the encoding attribute is set to “json”
(RSL4d4) All messages received will be decoded based on the encoding field and deliver payloads in the format they were sent in i.e. binary, string, or a structured type containing the parsed JSON
So when we are using JSON message encoding we must Base64 encode binary message payloads (RSL4d1).
But when we are sending using MessagePack, we should send a binary payload as MessagePack binary type.
This bug does not prevent messages from being delivered. But the extra base64 encoding creates extra CPU load on the client.
See
ably-go/ably/proto_message.go
Lines 92 to 94 in 6e1a824
The spec states:
So when we are using JSON message encoding we must Base64 encode binary message payloads (RSL4d1).
But when we are sending using MessagePack, we should send a binary payload as MessagePack binary type.
This bug does not prevent messages from being delivered. But the extra base64 encoding creates extra CPU load on the client.
┆Issue is synchronized with this Jira Task by Unito
The text was updated successfully, but these errors were encountered: