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)