I'm wondering how we would maintain backward compatibility with this
change? Geode accepts serialized data from a client and keeps it in
serialized form and might transmit this serialized data to an older
version peer or client. An older peer or client wouldn't be able to
handle a new string encoding if it tried to access and deserialize the data.
On 12/1/17 1:13 PM, Jacob Barrett wrote:
So what I would like to propose is that we deprecate all these methods and
replace them with standard UTF-8 prefixed with uint64 length. It is
preferable that the length be run length encoded to reduce the overhead of
encoding small strings. Why such a large length, well consider that
different languages have different limits as well as Java stores strings
internally as UTF-16.