You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@asterixdb.apache.org by mb...@apache.org on 2019/03/28 22:49:59 UTC
[asterixdb] 03/04: [NO ISSUE] Fix serialization of surrogate pairs
on non-UTF8 platforms
This is an automated email from the ASF dual-hosted git repository.
mblow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git
commit 963a5447acd48f4a0fca86689050e329904bfcd8
Author: Michael Blow <mb...@apache.org>
AuthorDate: Thu Mar 28 13:10:50 2019 -0400
[NO ISSUE] Fix serialization of surrogate pairs on non-UTF8 platforms
Change-Id: I17228e7dfdcd220e1c0caf5fcc8207fb8f3a7733
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3300
Sonar-Qube: Jenkins <je...@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Murtadha Hubail <mh...@apache.org>
---
.../apache/asterix/dataflow/data/nontagged/printers/PrintTools.java | 3 ++-
.../asterix-server/src/test/resources/NCServiceExecutionIT/cc.conf | 2 ++
.../java/org/apache/hyracks/test/server/process/HyracksCCProcess.java | 1 +
3 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java b/asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
index b8e1b43..a9c4d15 100644
--- a/asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
+++ b/asterixdb/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
@@ -21,6 +21,7 @@ package org.apache.asterix.dataflow.data.nontagged.printers;
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintStream;
+import java.nio.charset.StandardCharsets;
import org.apache.asterix.dataflow.data.nontagged.serde.ADoubleSerializerDeserializer;
import org.apache.asterix.dataflow.data.nontagged.serde.AFloatSerializerDeserializer;
@@ -399,7 +400,7 @@ public class PrintTools {
}
final char lowSurrogate = UTF8StringUtil.charAt(src, lowSurrogatePos);
final int lowSurrogateSize = UTF8StringUtil.charSize(src, lowSurrogatePos);
- os.write(new String(new char[] { highSurrogate, lowSurrogate }).getBytes());
+ os.write(new String(new char[] { highSurrogate, lowSurrogate }).getBytes(StandardCharsets.UTF_8));
return highSurrogateSize + lowSurrogateSize;
}
diff --git a/asterixdb/asterix-server/src/test/resources/NCServiceExecutionIT/cc.conf b/asterixdb/asterix-server/src/test/resources/NCServiceExecutionIT/cc.conf
index f3dcd63..c20e7f2 100644
--- a/asterixdb/asterix-server/src/test/resources/NCServiceExecutionIT/cc.conf
+++ b/asterixdb/asterix-server/src/test/resources/NCServiceExecutionIT/cc.conf
@@ -22,6 +22,7 @@ iodevices=../asterix-server/target/tmp/asterix_nc1/iodevice1,../asterix-server/t
nc.api.port=19004
jvm.args=-Xloggc:/tmp/asterix-server-failsafe/asterix_nc1-%p-gc.log -XX:+PrintGC -XX:+PrintGCDateStamps -XX:GCLogFileSize=10M -XX:+PrintFlagsFinal
#jvm.args=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5006
+jvm.args=-Dfile.encoding=iso-8859-1
[nc/asterix_nc2]
ncservice.port=9091
@@ -31,6 +32,7 @@ iodevices=../asterix-server/target/tmp/asterix_nc2/iodevice1,../asterix-server/t
nc.api.port=19005
jvm.args=-Xloggc:/tmp/asterix-server-failsafe/asterix_nc2-%p-gc.log -XX:+PrintGC -XX:+PrintGCDateStamps -XX:GCLogFileSize=10M -XX:+PrintFlagsFinal
#jvm.args=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5007
+jvm.args=-Dfile.encoding=us-ascii
[nc]
address=127.0.0.1
diff --git a/hyracks-fullstack/hyracks/hyracks-server/src/test/java/org/apache/hyracks/test/server/process/HyracksCCProcess.java b/hyracks-fullstack/hyracks/hyracks-server/src/test/java/org/apache/hyracks/test/server/process/HyracksCCProcess.java
index 2ac6f2b..a79d033 100644
--- a/hyracks-fullstack/hyracks/hyracks-server/src/test/java/org/apache/hyracks/test/server/process/HyracksCCProcess.java
+++ b/hyracks-fullstack/hyracks/hyracks-server/src/test/java/org/apache/hyracks/test/server/process/HyracksCCProcess.java
@@ -49,5 +49,6 @@ public class HyracksCCProcess extends HyracksServerProcess {
args.add("-Xmx1024m");
cList.addAll(args);
// cList.add("-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005");
+ cList.add("-Dfile.encoding=us-ascii");
}
}