Details
-
Sub-task
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.9
-
None
-
JRuby 1.6.8 using "--1.9" command line parameter.
-
Patch Available
Description
When setting a binary field of a Thrift object with some binary data (e.g. a string whose encoding is "ASCII-8BIT") and then serializing this object, the binary data is re-encoded. That is, it is encoded as if it were not a sequence of bytes but a sequence of characters, encoded using the ISO-8859-1 encoding. This assumed ISO-8859-1 sequence of characters is then converted into UTF-8 (by BinaryProtocol or CompactProtocol). This basically means that all bytes whose values are between 0x80 (inclusive) and 0x100 (exclusive) are converted into multi-byte sequences. This leads to data corruption.
Attachments
Issue Links
- is superceded by
-
THRIFT-1766 [Ruby] Provide support for binary types
- Closed