Ilya Kasnacheev created IGNITE-10732:
----------------------------------------
Summary: Incorrect file.encoding leads to inconsistent
SqlFieldsQuery results between nodes
Key: IGNITE-10732
URL: https://issues.apache.org/jira/browse/IGNITE-10732
Project: Ignite
Issue Type: Bug
Components: sql
Reporter: Ilya Kasnacheev
Assignee: Ilya Kasnacheev
When doing
{code}
cache.query(new SqlFieldsQuery("SELECT _key FROM Cache"))
{code}
resulting Unicode values may be different when coming from Windows or Linux
node.
Linux nodes will mostly use UTF-8 but Windows nodes will use local CpNNNN
encoding to encode query results, as bizzare as it may sound.
Windows <-> Windows and Linux <-> Linux will get correct result but Windows <->
Linux will get broken strings.
Note that if cluster has Windows and Linux nodes and cache is REPLICATED,
results will be different for subsequent queries!
There is a workaround for this: set -Dfile.encoding=UTF-8 JVM arg on Windows.
There is probably an underlying problem in H2 but since non-UTF-8 file.encoding
is dangerous (it affects String.getBytes()) I think we should peg it to UTF-8.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)