You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org> on 2016/01/18 19:10:33 UTC

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Steven Jacobs has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/587

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object The print function doesn't create any objects
......................................................................

ASTERIXDB-1261 Fixed the printer for UUID
UUIDPrinter no longer has a UUID object
The print function doesn't create any objects

Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
---
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
2 files changed, 34 insertions(+), 6 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/87/587/1

diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
index b31c962..87a9c71 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
@@ -183,6 +183,36 @@
         }
     }
 
+    public static void printUUIDString(long msb, long lsb, PrintStream ps) throws AlgebricksException {
+        printPart(msb >> 32, 8, ps);
+        ps.print("-");
+        printPart(msb >> 16, 4, ps);
+        ps.print("-");
+        printPart(msb, 4, ps);
+        ps.print("-");
+        printPart(lsb >> 48, 4, ps);
+        ps.print("-");
+        printPart(lsb, 12, ps);
+    }
+
+    final private static char[] digits = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e',
+            'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z' };
+
+    private static void printPart(long value, int digs, PrintStream ps) {
+        long hi = 1L << (digs * 4);
+        long val = hi | (value & (hi - 1));
+        int mag = Long.SIZE - Long.numberOfLeadingZeros(val);
+        int chars = Math.max(((mag + (4 - 1)) / 4), 1);
+        int radix = 1 << 4;
+        int mask = radix - 1;
+
+        for (int i = chars - 2; i >= 0; i--) {
+            long newLong = val;
+            int newValue = (int) (newLong >>>= (4 * i));
+            ps.print(digits[newValue & mask]);
+        }
+    }
+
     public enum CASE {
         LOWER_CASE,
         UPPER_CASE,
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
index c1b6b81..b8ee63c 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
@@ -21,7 +21,7 @@
 
 import java.io.PrintStream;
 
-import org.apache.asterix.om.base.AMutableUUID;
+import org.apache.asterix.dataflow.data.nontagged.printers.PrintTools;
 import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException;
 import org.apache.hyracks.algebricks.data.IPrinter;
 import org.apache.hyracks.data.std.primitive.LongPointable;
@@ -29,8 +29,6 @@
 public class AUUIDPrinter implements IPrinter {
 
     public static final AUUIDPrinter INSTANCE = new AUUIDPrinter();
-    // We use mutable UUID not to create a UUID object multiple times.
-    AMutableUUID uuid = new AMutableUUID(0, 0);
 
     @Override
     public void init() throws AlgebricksException {
@@ -40,9 +38,9 @@
     public void print(byte[] b, int s, int l, PrintStream ps) throws AlgebricksException {
         long msb = LongPointable.getLong(b, s + 1);
         long lsb = LongPointable.getLong(b, s + 9);
-        uuid.setValue(msb, lsb);
-
-        ps.print("uuid(\"" + uuid.toStringLiteralOnly() + "\")");
+        ps.print("uuid(\"");
+        PrintTools.printUUIDString(msb, lsb, ps);
+        ps.print("\")");
     }
 
 }

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UU...

Posted by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org>.
Hello Till Westmann, Jenkins,

I'd like you to reexamine a change.  Please visit

    https://asterix-gerrit.ics.uci.edu/587

to look at the new patch set (#6).

Change subject: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UUIDPrinter no longer has a UUID object UUIDComparator is used by AbstractComparisonEValuator Removed UUID_STRING type Added test for uuid comparator
......................................................................

ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes
UUIDPrinter no longer has a UUID object
UUIDComparator is used by AbstractComparisonEValuator
Removed UUID_STRING type
Added test for uuid comparator

Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
---
A asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.1.ddl.aql
A asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.2.update.aql
A asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.3.query.aql
A asterix-app/src/test/resources/runtimets/results/comparison/uuid_1/uuid_1.1.adm
M asterix-app/src/test/resources/runtimets/testsuite.xml
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUUIDPrinter.java
D asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/serde/AUUIDStringSerializerDeserializer.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlADMPrinterFactoryProvider.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCSVPrinterFactoryProvider.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCleanJSONPrinterFactoryProvider.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlLosslessJSONPrinterFactoryProvider.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlSerializerDeserializerProvider.java
M asterix-om/src/main/java/org/apache/asterix/om/base/AUUID.java
M asterix-om/src/main/java/org/apache/asterix/om/types/ATypeTag.java
M asterix-om/src/main/java/org/apache/asterix/om/types/BuiltinType.java
M asterix-om/src/main/java/org/apache/asterix/om/types/TypeTagUtil.java
M asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/comparisons/AbstractComparisonEvaluator.java
24 files changed, 122 insertions(+), 146 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/87/587/6
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 6
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UU...

Posted by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org>.
Steven Jacobs has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UUIDPrinter no longer has a UUID object UUIDComparator is used by AbstractComparisonEValuator Removed UUID_STRING type Added test for uuid comparator
......................................................................


Patch Set 5:

It would probably be best to look at this new patch set against master and ignore previous patchsets. It now addresses 3 Jira issues. Take a look and let me know your thoughts.

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UU...

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UUIDPrinter no longer has a UUID object UUIDComparator is used by AbstractComparisonEValuator Removed UUID_STRING type Added test for uuid comparator
......................................................................


Patch Set 6:

Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/738/

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 6
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object The print function doesn't create any objects
......................................................................


Patch Set 2: Verified-1

Build Unstable 

https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/718/ : UNSTABLE

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org>.
Hello Till Westmann, Jenkins,

I'd like you to reexamine a change.  Please visit

    https://asterix-gerrit.ics.uci.edu/587

to look at the new patch set (#3).

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object UUIDPrinter is not shared by multiple threads
......................................................................

ASTERIXDB-1261 Fixed the printer for UUID
UUIDPrinter no longer has a UUID object
UUIDPrinter is not shared by multiple threads

Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
---
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinterFactory.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AUUIDPrinterFactory.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUUIDPrinterFactory.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUUIDPrinterFactory.java
M asterix-om/src/main/java/org/apache/asterix/om/base/AUUID.java
M asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/adm/APrintVisitor.java
M asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/csv/APrintVisitor.java
M asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/clean/APrintVisitor.java
M asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/lossless/APrintVisitor.java
16 files changed, 68 insertions(+), 79 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/87/587/3
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UU...

Posted by "Till Westmann (Code Review)" <do...@asterixdb.incubator.apache.org>.
Till Westmann has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UUIDPrinter no longer has a UUID object UUIDComparator is used by AbstractComparisonEValuator Removed UUID_STRING type Added test for uuid comparator
......................................................................


Patch Set 5:

(1 comment)

https://asterix-gerrit.ics.uci.edu/#/c/587/5/asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.1.ddl.aql
File asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.1.ddl.aql:

Line 26: create dataset nearbyTweetChannelResults(TypeA) 
WS


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: Yes

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object The print function doesn't create any objects
......................................................................


Patch Set 2:

Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/718/

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UU...

Posted by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org>.
Hello Till Westmann, Jenkins,

I'd like you to reexamine a change.  Please visit

    https://asterix-gerrit.ics.uci.edu/587

to look at the new patch set (#5).

Change subject: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UUIDPrinter no longer has a UUID object UUIDComparator is used by AbstractComparisonEValuator Removed UUID_STRING type Added test for uuid comparator
......................................................................

ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes
UUIDPrinter no longer has a UUID object
UUIDComparator is used by AbstractComparisonEValuator
Removed UUID_STRING type
Added test for uuid comparator

Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
---
A asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.1.ddl.aql
A asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.2.update.aql
A asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.3.query.aql
A asterix-app/src/test/resources/runtimets/results/comparison/uuid_1/uuid_1.1.adm
M asterix-app/src/test/resources/runtimets/testsuite.xml
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUUIDPrinter.java
D asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/serde/AUUIDStringSerializerDeserializer.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlADMPrinterFactoryProvider.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCSVPrinterFactoryProvider.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCleanJSONPrinterFactoryProvider.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlLosslessJSONPrinterFactoryProvider.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlSerializerDeserializerProvider.java
M asterix-om/src/main/java/org/apache/asterix/om/base/AUUID.java
M asterix-om/src/main/java/org/apache/asterix/om/types/ATypeTag.java
M asterix-om/src/main/java/org/apache/asterix/om/types/BuiltinType.java
M asterix-om/src/main/java/org/apache/asterix/om/types/TypeTagUtil.java
M asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/comparisons/AbstractComparisonEvaluator.java
24 files changed, 122 insertions(+), 146 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/87/587/5
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org>.
Steven Jacobs has uploaded a new patch set (#2).

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object The print function doesn't create any objects
......................................................................

ASTERIXDB-1261 Fixed the printer for UUID
UUIDPrinter no longer has a UUID object
The print function doesn't create any objects

Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
---
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
2 files changed, 38 insertions(+), 6 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/87/587/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Till Westmann (Code Review)" <do...@asterixdb.incubator.apache.org>.
Till Westmann has posted comments on this change.

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object The print function doesn't create any objects
......................................................................


Patch Set 2: Code-Review-1

(1 comment)

https://asterix-gerrit.ics.uci.edu/#/c/587/2/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
File asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java:

Line 187:         printPart(msb >> 32, 8, ps);
I think that we shouldn't do it this way. This code does a lot of calls on a PrintWriter which will very likely be virtual calls. It seems that we have a quite efficient implementation to serialize UUIDs in the AUUID class that we should reuse.


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: Yes

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Taewoo Kim (Code Review)" <do...@asterixdb.incubator.apache.org>.
Taewoo Kim has posted comments on this change.

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object The print function doesn't create any objects
......................................................................


Patch Set 1:

(2 comments)

Thanks for fixing this bug!

https://asterix-gerrit.ics.uci.edu/#/c/587/1/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
File asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java:

Line 201:     private static void printPart(long value, int digs, PrintStream ps) {
For future references, can we put a reference link (like wikipedia?) here to find out how this method works?


Line 212:             ps.print(digits[newValue & mask]);
Where does this "digits" come from?


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: Yes

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UU...

Posted by "Till Westmann (Code Review)" <do...@asterixdb.incubator.apache.org>.
Till Westmann has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UUIDPrinter no longer has a UUID object UUIDComparator is used by AbstractComparisonEValuator Removed UUID_STRING type Added test for uuid comparator
......................................................................


Patch Set 6: Code-Review+2

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 6
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Till Westmann (Code Review)" <do...@asterixdb.incubator.apache.org>.
Till Westmann has posted comments on this change.

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object The print function doesn't create any objects
......................................................................


Patch Set 2:

(1 comment)

There are actually 3 more AUUIDPrinters that are implemented using the same pattern. Probably all should be fixed if we fix one.

https://asterix-gerrit.ics.uci.edu/#/c/587/2/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
File asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java:

Line 187:         printPart(msb >> 32, 8, ps);
> I see there is an efficient way to serialize strings into UUIDs but I don't
Every call to the PrintStream is a virtual function call that probably cannot cannot be optimized away by the JIT as there's a large number of sub classes of PrintStream in the classpath. 
On the other hand AUUID.toStringLiteralOnly contains a concatenation of (final) Strings interleaved with calls to the static JDK function Long.toHexString, which should be well optimized by the JIT. So I think that the implementation of AUUID.toStringLiteralOnly should be more efficient than this implementation. However to be sure, should probably measure the performance of both solutions.


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: Yes

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org>.
Steven Jacobs has posted comments on this change.

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object The print function doesn't create any objects
......................................................................


Patch Set 2:

(1 comment)

@Till
I'm not sure of your recommended solution. Please see my comment.

https://asterix-gerrit.ics.uci.edu/#/c/587/2/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
File asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java:

Line 187:         printPart(msb >> 32, 8, ps);
> I think that we shouldn't do it this way. This code does a lot of calls on 
I see there is an efficient way to serialize strings into UUIDs but I don't see any efficient way to deserialize UUIDs to Strings. I'm using the same call to length ratio as the printer for durations etc (printDayTimeDurationString in PrintTools)


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: Yes

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UU...

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UUIDPrinter no longer has a UUID object UUIDComparator is used by AbstractComparisonEValuator Removed UUID_STRING type Added test for uuid comparator
......................................................................


Patch Set 5: Verified+1

Build Successful 

https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/737/ : SUCCESS

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UU...

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UUIDPrinter no longer has a UUID object UUIDComparator is used by AbstractComparisonEValuator Removed UUID_STRING type Added test for uuid comparator
......................................................................


Patch Set 6: Verified+1

Build Successful 

https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/738/ : SUCCESS

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 6
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274 Fixes for UUID UUIDPrinter n...

Posted by "Till Westmann (Code Review)" <do...@asterixdb.incubator.apache.org>.
Till Westmann has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274  Fixes for UUID UUIDPrinter no longer has a UUID object UUIDPrinter is not shared by multiple threads UUIDCOmparator is used by AbstractComparisonEValuator
......................................................................


Patch Set 4:

It seems that patch set 3 actually broke the string serialization.

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274 Fixes for UUID UUIDPrinter n...

Posted by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org>.
Hello Till Westmann, Jenkins,

I'd like you to reexamine a change.  Please visit

    https://asterix-gerrit.ics.uci.edu/587

to look at the new patch set (#4).

Change subject: ASTERIXDB-1261, ASTERIXDB-1274  Fixes for UUID UUIDPrinter no longer has a UUID object UUIDPrinter is not shared by multiple threads UUIDCOmparator is used by AbstractComparisonEValuator
......................................................................

ASTERIXDB-1261, ASTERIXDB-1274  Fixes for UUID
UUIDPrinter no longer has a UUID object
UUIDPrinter is not shared by multiple threads
UUIDCOmparator is used by AbstractComparisonEValuator

Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
---
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinterFactory.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AUUIDPrinterFactory.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUUIDPrinterFactory.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUUIDPrinterFactory.java
M asterix-om/src/main/java/org/apache/asterix/om/base/AUUID.java
M asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/adm/APrintVisitor.java
M asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/csv/APrintVisitor.java
M asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/clean/APrintVisitor.java
M asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/lossless/APrintVisitor.java
M asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/comparisons/AbstractComparisonEvaluator.java
17 files changed, 80 insertions(+), 83 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/87/587/4
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object UUIDPrinter is not shared by multiple threads
......................................................................


Patch Set 3:

Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/728/

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UU...

Posted by "Taewoo Kim (Code Review)" <do...@asterixdb.incubator.apache.org>.
Taewoo Kim has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UUIDPrinter no longer has a UUID object UUIDComparator is used by AbstractComparisonEValuator Removed UUID_STRING type Added test for uuid comparator
......................................................................


Patch Set 7:

Thank you for clearing the mess that I created. :-)

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 7
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274 Fixes for UUID UUIDPrinter n...

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274  Fixes for UUID UUIDPrinter no longer has a UUID object UUIDPrinter is not shared by multiple threads UUIDCOmparator is used by AbstractComparisonEValuator
......................................................................


Patch Set 4: Verified-1

Build Unstable 

https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/732/ : UNSTABLE

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object UUIDPrinter is not shared by multiple threads
......................................................................


Patch Set 3: Verified-1

Build Unstable 

https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/728/ : UNSTABLE

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274 Fixes for UUID UUIDPrinter n...

Posted by "Till Westmann (Code Review)" <do...@asterixdb.incubator.apache.org>.
Till Westmann has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274  Fixes for UUID UUIDPrinter no longer has a UUID object UUIDPrinter is not shared by multiple threads UUIDCOmparator is used by AbstractComparisonEValuator
......................................................................


Patch Set 4:

Yes, sharing should be ok in the current implementation. We might need to unshare in the context of fixing https://issues.apache.org/jira/browse/ASTERIXDB-1271 .

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UU...

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UUIDPrinter no longer has a UUID object UUIDComparator is used by AbstractComparisonEValuator Removed UUID_STRING type Added test for uuid comparator
......................................................................


Patch Set 5:

Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/737/

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UU...

Posted by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org>.
Steven Jacobs has submitted this change and it was merged.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UUIDPrinter no longer has a UUID object UUIDComparator is used by AbstractComparisonEValuator Removed UUID_STRING type Added test for uuid comparator
......................................................................


ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes
UUIDPrinter no longer has a UUID object
UUIDComparator is used by AbstractComparisonEValuator
Removed UUID_STRING type
Added test for uuid comparator

Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Reviewed-on: https://asterix-gerrit.ics.uci.edu/587
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Till Westmann <ti...@apache.org>
---
A asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.1.ddl.aql
A asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.2.update.aql
A asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.3.query.aql
A asterix-app/src/test/resources/runtimets/results/comparison/uuid_1/uuid_1.1.adm
M asterix-app/src/test/resources/runtimets/testsuite.xml
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUUIDPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinter.java
M asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUUIDPrinter.java
D asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/serde/AUUIDStringSerializerDeserializer.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlADMPrinterFactoryProvider.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCSVPrinterFactoryProvider.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCleanJSONPrinterFactoryProvider.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlLosslessJSONPrinterFactoryProvider.java
M asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlSerializerDeserializerProvider.java
M asterix-om/src/main/java/org/apache/asterix/om/base/AUUID.java
M asterix-om/src/main/java/org/apache/asterix/om/types/ATypeTag.java
M asterix-om/src/main/java/org/apache/asterix/om/types/BuiltinType.java
M asterix-om/src/main/java/org/apache/asterix/om/types/TypeTagUtil.java
M asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/comparisons/AbstractComparisonEvaluator.java
24 files changed, 122 insertions(+), 146 deletions(-)

Approvals:
  Till Westmann: Looks good to me, approved
  Jenkins: Verified



diff --git a/asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.1.ddl.aql
new file mode 100644
index 0000000..b8b7c80
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.1.ddl.aql
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+drop dataverse channels if exists;
+create dataverse channels;
+use dataverse channels;
+
+create type TypeA as closed
+{ "resultId":uuid, "subscriptionId":uuid, "deliveryTime":datetime }
+
+create dataset nearbyTweetChannelResults(TypeA)
+primary key resultId autogenerated;
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.2.update.aql b/asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.2.update.aql
new file mode 100644
index 0000000..0d435a0
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.2.update.aql
@@ -0,0 +1,23 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+use dataverse channels;
+
+insert into dataset nearbyTweetChannelResults(
+{"subscriptionId":uuid("d0b6fac0-3903-43dc-8ef6-7b0923ffc759"), "deliveryTime":datetime("2011-08-25T10:10:00.000Z")}
+);
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.3.query.aql
new file mode 100644
index 0000000..cd006ad
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.3.query.aql
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+use dataverse channels;
+for $result in dataset nearbyTweetChannelResults
+where $result.subscriptionId=uuid("d0b6fac0-3903-43dc-8ef6-7b0923ffc759")
+return $result.subscriptionId;
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results/comparison/uuid_1/uuid_1.1.adm b/asterix-app/src/test/resources/runtimets/results/comparison/uuid_1/uuid_1.1.adm
new file mode 100644
index 0000000..6e8a7b7
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/results/comparison/uuid_1/uuid_1.1.adm
@@ -0,0 +1 @@
+uuid("d0b6fac0-3903-43dc-8ef6-7b0923ffc759")
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/testsuite.xml b/asterix-app/src/test/resources/runtimets/testsuite.xml
index 375d05a..2e0c073 100644
--- a/asterix-app/src/test/resources/runtimets/testsuite.xml
+++ b/asterix-app/src/test/resources/runtimets/testsuite.xml
@@ -1160,6 +1160,11 @@
                 <output-dir compare="Text">binary_null</output-dir>
             </compilation-unit>
         </test-case>
+        <test-case FilePath="comparison">
+            <compilation-unit name="uuid_1">
+                <output-dir compare="Text">uuid_1</output-dir>
+            </compilation-unit>
+        </test-case>
     </test-group>
     <test-group name="constructor">
         <test-case FilePath="constructor">
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AObjectPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AObjectPrinter.java
index 6a3d61d..1d2650d 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AObjectPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AObjectPrinter.java
@@ -169,7 +169,6 @@
             case UINT64:
             case UINT8:
             case UNION:
-            case UUID_STRING:
                 // These are internal types and do not need a printer.
                 throw new NotImplementedException("No printer for type " + typeTag);
         }
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
index c1b6b81..86cb7ac 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/adm/AUUIDPrinter.java
@@ -21,7 +21,7 @@
 
 import java.io.PrintStream;
 
-import org.apache.asterix.om.base.AMutableUUID;
+import org.apache.asterix.om.base.AUUID;
 import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException;
 import org.apache.hyracks.algebricks.data.IPrinter;
 import org.apache.hyracks.data.std.primitive.LongPointable;
@@ -29,8 +29,6 @@
 public class AUUIDPrinter implements IPrinter {
 
     public static final AUUIDPrinter INSTANCE = new AUUIDPrinter();
-    // We use mutable UUID not to create a UUID object multiple times.
-    AMutableUUID uuid = new AMutableUUID(0, 0);
 
     @Override
     public void init() throws AlgebricksException {
@@ -40,9 +38,8 @@
     public void print(byte[] b, int s, int l, PrintStream ps) throws AlgebricksException {
         long msb = LongPointable.getLong(b, s + 1);
         long lsb = LongPointable.getLong(b, s + 9);
-        uuid.setValue(msb, lsb);
 
-        ps.print("uuid(\"" + uuid.toStringLiteralOnly() + "\")");
+        ps.print("uuid(\"" + AUUID.toStringLiteralOnly(msb, lsb) + "\")");
     }
 
 }
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AObjectPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AObjectPrinter.java
index 137597c..319476f 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AObjectPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AObjectPrinter.java
@@ -148,7 +148,6 @@
             case UNION:
             case UNORDEREDLIST:
             case UUID:
-            case UUID_STRING:
                 throw new NotImplementedException("No printer for type " + typeTag);
         }
     }
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AUUIDPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AUUIDPrinter.java
index 34dd3a2..967131f 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AUUIDPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/csv/AUUIDPrinter.java
@@ -19,18 +19,16 @@
 
 package org.apache.asterix.dataflow.data.nontagged.printers.csv;
 
-import org.apache.asterix.om.base.AMutableUUID;
+import java.io.PrintStream;
+
+import org.apache.asterix.om.base.AUUID;
 import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException;
 import org.apache.hyracks.algebricks.data.IPrinter;
 import org.apache.hyracks.data.std.primitive.LongPointable;
 
-import java.io.PrintStream;
-
 public class AUUIDPrinter implements IPrinter {
 
     public static final AUUIDPrinter INSTANCE = new AUUIDPrinter();
-    // We use mutable UUID not to create a UUID object multiple times.
-    AMutableUUID uuid = new AMutableUUID(0, 0);
 
     @Override
     public void init() throws AlgebricksException {
@@ -40,9 +38,8 @@
     public void print(byte[] b, int s, int l, PrintStream ps) throws AlgebricksException {
         long msb = LongPointable.getLong(b, s + 1);
         long lsb = LongPointable.getLong(b, s + 9);
-        uuid.setValue(msb, lsb);
 
-        ps.print("\"" + uuid.toStringLiteralOnly() + "\"");
+        ps.print("\"" + AUUID.toStringLiteralOnly(msb, lsb) + "\"");
     }
 
 }
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinter.java
index 8f06d77..2d5a8f6 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinter.java
@@ -103,7 +103,7 @@
                 AIntervalPrinter.INSTANCE.print(b, s, l, ps);
                 break;
             }
-             case POINT: {
+            case POINT: {
                 APointPrinter.INSTANCE.print(b, s, l, ps);
                 break;
             }
@@ -166,7 +166,6 @@
             case UINT64:
             case UINT8:
             case UNION:
-            case UUID_STRING:
                 throw new NotImplementedException("No printer for type " + typeTag);
         }
     }
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUUIDPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUUIDPrinter.java
index 4057bbe..20b87c2 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUUIDPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUUIDPrinter.java
@@ -19,18 +19,16 @@
 
 package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
 
-import org.apache.asterix.om.base.AMutableUUID;
+import java.io.PrintStream;
+
+import org.apache.asterix.om.base.AUUID;
 import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException;
 import org.apache.hyracks.algebricks.data.IPrinter;
 import org.apache.hyracks.data.std.primitive.LongPointable;
 
-import java.io.PrintStream;
-
 public class AUUIDPrinter implements IPrinter {
 
     public static final AUUIDPrinter INSTANCE = new AUUIDPrinter();
-    // We use mutable UUID not to create a UUID object multiple times.
-    AMutableUUID uuid = new AMutableUUID(0, 0);
 
     @Override
     public void init() throws AlgebricksException {
@@ -40,9 +38,8 @@
     public void print(byte[] b, int s, int l, PrintStream ps) throws AlgebricksException {
         long msb = LongPointable.getLong(b, s + 1);
         long lsb = LongPointable.getLong(b, s + 9);
-        uuid.setValue(msb, lsb);
 
-        ps.print("\"" + uuid.toStringLiteralOnly() + "\"");
+        ps.print("\"" + AUUID.toStringLiteralOnly(msb, lsb) + "\"");
     }
 
 }
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinter.java
index 1f610d0..561b5d9 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinter.java
@@ -103,7 +103,7 @@
                 AIntervalPrinter.INSTANCE.print(b, s, l, ps);
                 break;
             }
-             case POINT: {
+            case POINT: {
                 APointPrinter.INSTANCE.print(b, s, l, ps);
                 break;
             }
@@ -166,7 +166,6 @@
             case UINT64:
             case UINT8:
             case UNION:
-            case UUID_STRING:
                 throw new NotImplementedException("No printer for type " + typeTag);
         }
     }
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUUIDPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUUIDPrinter.java
index 0c955b5..f21cdff 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUUIDPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUUIDPrinter.java
@@ -19,18 +19,16 @@
 
 package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
 
-import org.apache.asterix.om.base.AMutableUUID;
+import java.io.PrintStream;
+
+import org.apache.asterix.om.base.AUUID;
 import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException;
 import org.apache.hyracks.algebricks.data.IPrinter;
 import org.apache.hyracks.data.std.primitive.LongPointable;
 
-import java.io.PrintStream;
-
 public class AUUIDPrinter implements IPrinter {
 
     public static final AUUIDPrinter INSTANCE = new AUUIDPrinter();
-    // We use mutable UUID not to create a UUID object multiple times.
-    AMutableUUID uuid = new AMutableUUID(0, 0);
 
     @Override
     public void init() throws AlgebricksException {
@@ -40,9 +38,8 @@
     public void print(byte[] b, int s, int l, PrintStream ps) throws AlgebricksException {
         long msb = LongPointable.getLong(b, s + 1);
         long lsb = LongPointable.getLong(b, s + 9);
-        uuid.setValue(msb, lsb);
 
-        ps.print("\"" + uuid.toStringLiteralOnly() + "\"");
+        ps.print("\"" + AUUID.toStringLiteralOnly(msb, lsb) + "\"");
     }
 
 }
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/serde/AUUIDStringSerializerDeserializer.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/serde/AUUIDStringSerializerDeserializer.java
deleted file mode 100644
index 72c9388..0000000
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/serde/AUUIDStringSerializerDeserializer.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.asterix.dataflow.data.nontagged.serde;
-
-import java.io.DataInput;
-import java.io.DataOutput;
-import java.io.IOException;
-
-import org.apache.asterix.om.base.AUUID;
-import org.apache.hyracks.api.dataflow.value.ISerializerDeserializer;
-import org.apache.hyracks.api.exceptions.HyracksDataException;
-import org.apache.hyracks.dataflow.common.data.marshalling.UTF8StringSerializerDeserializer;
-
-public class AUUIDStringSerializerDeserializer implements ISerializerDeserializer<AUUID> {
-
-    private static final long serialVersionUID = 1L;
-
-    public static final AUUIDStringSerializerDeserializer INSTANCE = new AUUIDStringSerializerDeserializer();
-
-    private AUUIDStringSerializerDeserializer() {
-    }
-
-    // Conversion from the String format (xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx) to an AUUID instance correspondence
-    @Override
-    public AUUID deserialize(DataInput in) throws HyracksDataException {
-        try {
-            return AUUID.fromString(new String(new UTF8StringSerializerDeserializer().deserialize(in)));
-        } catch (IOException e) {
-            throw new HyracksDataException(e);
-        }
-    }
-
-    // Conversion from an AUUID instance to the String format (xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx) correspondence
-    @Override
-    public void serialize(AUUID instance, DataOutput out) throws HyracksDataException {
-        try {
-            new UTF8StringSerializerDeserializer().serialize(instance.toStringLiteralOnly(), out);
-        } catch (IOException e) {
-            throw new HyracksDataException(e);
-        }
-    }
-}
diff --git a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlADMPrinterFactoryProvider.java b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlADMPrinterFactoryProvider.java
index 19174f6..b51b4a4 100644
--- a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlADMPrinterFactoryProvider.java
+++ b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlADMPrinterFactoryProvider.java
@@ -144,7 +144,6 @@
                 case UINT32:
                 case UINT64:
                 case UINT8:
-                case UUID_STRING:
                     // These types are not intended to be printed to the user.
                     break;
             }
diff --git a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCSVPrinterFactoryProvider.java b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCSVPrinterFactoryProvider.java
index f4c8156..103e3ee 100644
--- a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCSVPrinterFactoryProvider.java
+++ b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCSVPrinterFactoryProvider.java
@@ -138,7 +138,6 @@
                 case UINT32:
                 case UINT64:
                 case UINT8:
-                case UUID_STRING:
                     // These types are not intended to be printed to the user.
                     break;
             }
diff --git a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCleanJSONPrinterFactoryProvider.java b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCleanJSONPrinterFactoryProvider.java
index 302ecd8..7eff19b 100644
--- a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCleanJSONPrinterFactoryProvider.java
+++ b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCleanJSONPrinterFactoryProvider.java
@@ -144,7 +144,6 @@
                 case UINT32:
                 case UINT64:
                 case UINT8:
-                case UUID_STRING:
                     // These types are not intended to be printed to the user.
                     break;
             }
diff --git a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlLosslessJSONPrinterFactoryProvider.java b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlLosslessJSONPrinterFactoryProvider.java
index 5f8867a..c79ecbd 100644
--- a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlLosslessJSONPrinterFactoryProvider.java
+++ b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlLosslessJSONPrinterFactoryProvider.java
@@ -144,7 +144,6 @@
                 case UINT32:
                 case UINT64:
                 case UINT8:
-                case UUID_STRING:
                     // These types are not intended to be printed to the user.
                     break;
             }
diff --git a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlSerializerDeserializerProvider.java b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlSerializerDeserializerProvider.java
index 9be8cae..99a6d2f 100644
--- a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlSerializerDeserializerProvider.java
+++ b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlSerializerDeserializerProvider.java
@@ -18,6 +18,11 @@
  */
 package org.apache.asterix.formats.nontagged;
 
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+import java.io.Serializable;
+
 import org.apache.asterix.dataflow.data.nontagged.serde.ABinarySerializerDeserializer;
 import org.apache.asterix.dataflow.data.nontagged.serde.ABooleanSerializerDeserializer;
 import org.apache.asterix.dataflow.data.nontagged.serde.ACircleSerializerDeserializer;
@@ -44,7 +49,6 @@
 import org.apache.asterix.dataflow.data.nontagged.serde.AStringSerializerDeserializer;
 import org.apache.asterix.dataflow.data.nontagged.serde.ATimeSerializerDeserializer;
 import org.apache.asterix.dataflow.data.nontagged.serde.AUUIDSerializerDeserializer;
-import org.apache.asterix.dataflow.data.nontagged.serde.AUUIDStringSerializerDeserializer;
 import org.apache.asterix.dataflow.data.nontagged.serde.AUnorderedListSerializerDeserializer;
 import org.apache.asterix.dataflow.data.nontagged.serde.AYearMonthDurationSerializerDeserializer;
 import org.apache.asterix.dataflow.data.nontagged.serde.SerializerDeserializerUtil;
@@ -60,11 +64,6 @@
 import org.apache.hyracks.api.dataflow.value.ISerializerDeserializer;
 import org.apache.hyracks.api.exceptions.HyracksDataException;
 import org.apache.hyracks.dataflow.common.data.marshalling.ShortSerializerDeserializer;
-
-import java.io.DataInput;
-import java.io.DataOutput;
-import java.io.IOException;
-import java.io.Serializable;
 
 public class AqlSerializerDeserializerProvider implements ISerializerDeserializerProvider, Serializable {
 
@@ -175,9 +174,6 @@
             }
             case UUID: {
                 return AUUIDSerializerDeserializer.INSTANCE;
-            }
-            case UUID_STRING: {
-                return AUUIDStringSerializerDeserializer.INSTANCE;
             }
             case SHORTWITHOUTTYPEINFO: {
                 return ShortSerializerDeserializer.INSTANCE;
diff --git a/asterix-om/src/main/java/org/apache/asterix/om/base/AUUID.java b/asterix-om/src/main/java/org/apache/asterix/om/base/AUUID.java
index 1fe237c..bb54988 100644
--- a/asterix-om/src/main/java/org/apache/asterix/om/base/AUUID.java
+++ b/asterix-om/src/main/java/org/apache/asterix/om/base/AUUID.java
@@ -22,13 +22,12 @@
 import java.security.SecureRandom;
 import java.util.UUID;
 
-import org.json.JSONException;
-import org.json.JSONObject;
-
 import org.apache.asterix.common.exceptions.AsterixException;
 import org.apache.asterix.om.types.BuiltinType;
 import org.apache.asterix.om.types.IAType;
 import org.apache.asterix.om.visitors.IOMVisitor;
+import org.json.JSONException;
+import org.json.JSONObject;
 
 public class AUUID implements IAObject {
 
@@ -135,14 +134,18 @@
 
     @Override
     public String toString() {
-        return "AUUID: {"
-                + (digits(msb >> 32, 8) + "-" + digits(msb >> 16, 4) + "-" + digits(msb, 4) + "-"
-                        + digits(lsb >> 48, 4) + "-" + digits(lsb, 12)) + "}";
+        return "AUUID: {" + toStringLiteralOnly(msb, lsb) + "}";
+
     }
 
     public String toStringLiteralOnly() {
-        return digits(msb >> 32, 8) + "-" + digits(msb >> 16, 4) + "-" + digits(msb, 4) + "-" + digits(lsb >> 48, 4)
-                + "-" + digits(lsb, 12);
+        return toStringLiteralOnly(msb, lsb);
+    }
+
+    public static String toStringLiteralOnly(long msbValue, long lsbValue) {
+        return digits(msbValue >> 32, 8) + "-" + digits(msbValue >> 16, 4) + "-" + digits(msbValue, 4) + "-"
+                + digits(lsbValue >> 48, 4) + "-" + digits(lsbValue, 12);
+
     }
 
     // Since AUUID is a wrapper of java.util.uuid,
diff --git a/asterix-om/src/main/java/org/apache/asterix/om/types/ATypeTag.java b/asterix-om/src/main/java/org/apache/asterix/om/types/ATypeTag.java
index 3587cda..0a341f0 100644
--- a/asterix-om/src/main/java/org/apache/asterix/om/types/ATypeTag.java
+++ b/asterix-om/src/main/java/org/apache/asterix/om/types/ATypeTag.java
@@ -67,7 +67,6 @@
     YEARMONTHDURATION(36),
     DAYTIMEDURATION(37),
     UUID(38),
-    UUID_STRING(39),
     SHORTWITHOUTTYPEINFO(40);
 
     private byte value;
diff --git a/asterix-om/src/main/java/org/apache/asterix/om/types/BuiltinType.java b/asterix-om/src/main/java/org/apache/asterix/om/types/BuiltinType.java
index 0c0fdaa..620b9ae 100644
--- a/asterix-om/src/main/java/org/apache/asterix/om/types/BuiltinType.java
+++ b/asterix-om/src/main/java/org/apache/asterix/om/types/BuiltinType.java
@@ -742,34 +742,6 @@
         }
     };
 
-    // AUUID_STRING is used when converting between the string representation of
-    // UUID and corresponding a UUID instance
-    public static final BuiltinType AUUID_STRING = new LowerCaseConstructorType() {
-        private static final long serialVersionUID = 1L;
-
-        @Override
-        public ATypeTag getTypeTag() {
-            return ATypeTag.UUID_STRING;
-        }
-
-        @Override
-        public String getDisplayName() {
-            return "UUID_STRING";
-        }
-
-        @Override
-        public String getTypeName() {
-            return "uuid_string";
-        }
-
-        @Override
-        public JSONObject toJSON() throws JSONException {
-            JSONObject type = new JSONObject();
-            type.put("type", getDisplayName());
-            return type;
-        }
-    };
-
     public static final BuiltinType ANY = new BuiltinType() {
 
         private static final long serialVersionUID = 1L;
diff --git a/asterix-om/src/main/java/org/apache/asterix/om/types/TypeTagUtil.java b/asterix-om/src/main/java/org/apache/asterix/om/types/TypeTagUtil.java
index ae7490c..a73ff73 100644
--- a/asterix-om/src/main/java/org/apache/asterix/om/types/TypeTagUtil.java
+++ b/asterix-om/src/main/java/org/apache/asterix/om/types/TypeTagUtil.java
@@ -78,8 +78,6 @@
                 return BuiltinType.ADAYTIMEDURATION;
             case UUID:
                 return BuiltinType.AUUID;
-            case UUID_STRING:
-                return BuiltinType.AUUID_STRING;
             default:
                 throw new AsterixException("Typetag " + typeTag + " is not a built-in type");
         }
diff --git a/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/comparisons/AbstractComparisonEvaluator.java b/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/comparisons/AbstractComparisonEvaluator.java
index 44b3752..356a77b 100644
--- a/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/comparisons/AbstractComparisonEvaluator.java
+++ b/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/comparisons/AbstractComparisonEvaluator.java
@@ -29,6 +29,7 @@
 import org.apache.asterix.dataflow.data.nontagged.comparators.APointPartialBinaryComparatorFactory;
 import org.apache.asterix.dataflow.data.nontagged.comparators.APolygonPartialBinaryComparatorFactory;
 import org.apache.asterix.dataflow.data.nontagged.comparators.ARectanglePartialBinaryComparatorFactory;
+import org.apache.asterix.dataflow.data.nontagged.comparators.AUUIDPartialBinaryComparatorFactory;
 import org.apache.asterix.dataflow.data.nontagged.serde.ADoubleSerializerDeserializer;
 import org.apache.asterix.dataflow.data.nontagged.serde.AFloatSerializerDeserializer;
 import org.apache.asterix.dataflow.data.nontagged.serde.AInt16SerializerDeserializer;
@@ -96,6 +97,9 @@
             .createBinaryComparator();
     protected IBinaryComparator rectangleBinaryComparator = ARectanglePartialBinaryComparatorFactory.INSTANCE
             .createBinaryComparator();
+    protected IBinaryComparator uuidBinaryComparator = AUUIDPartialBinaryComparatorFactory.INSTANCE
+            .createBinaryComparator();
+
     protected final IBinaryComparator byteArrayComparator = new PointableBinaryComparatorFactory(
             ByteArrayPointable.FACTORY).createBinaryComparator();
 
@@ -127,8 +131,8 @@
                 case POLYGON:
                 case CIRCLE:
                 case RECTANGLE:
-                    throw new AlgebricksException("Comparison operations (GT, GE, LT, and LE) for the " + typeTag
-                            + " type are not defined.");
+                    throw new AlgebricksException(
+                            "Comparison operations (GT, GE, LT, and LE) for the " + typeTag + " type are not defined.");
                 default:
                     return;
             }
@@ -203,8 +207,8 @@
     private ComparisonResult compareStrongTypedWithArg(ATypeTag expectedTypeTag, ATypeTag actualTypeTag)
             throws AlgebricksException {
         if (expectedTypeTag != actualTypeTag) {
-            throw new AlgebricksException("Comparison is undefined between " + expectedTypeTag + " and "
-                    + actualTypeTag + ".");
+            throw new AlgebricksException(
+                    "Comparison is undefined between " + expectedTypeTag + " and " + actualTypeTag + ".");
         }
         int result = 0;
         try {
@@ -256,6 +260,10 @@
                     result = byteArrayComparator.compare(outLeft.getByteArray(), 1, outLeft.getLength() - 1,
                             outRight.getByteArray(), 1, outRight.getLength() - 1);
                     break;
+                case UUID:
+                    result = uuidBinaryComparator.compare(outLeft.getByteArray(), 1, outLeft.getLength() - 1,
+                            outRight.getByteArray(), 1, outRight.getLength() - 1);
+                    break;
                 default:
                     throw new AlgebricksException("Comparison for " + actualTypeTag + " is not supported.");
             }

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 7
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274 Fixes for UUID UUIDPrinter n...

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274  Fixes for UUID UUIDPrinter no longer has a UUID object UUIDPrinter is not shared by multiple threads UUIDCOmparator is used by AbstractComparisonEValuator
......................................................................


Patch Set 4:

Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/732/

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org>.
Steven Jacobs has posted comments on this change.

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object The print function doesn't create any objects
......................................................................


Patch Set 1:

(2 comments)

I'm uploading a new patch with the function commented.

https://asterix-gerrit.ics.uci.edu/#/c/587/1/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java
File asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/PrintTools.java:

Line 201:     private static void printPart(long value, int digs, PrintStream ps) {
> For future references, can we put a reference link (like wikipedia?) here t
This basically mimics some of the work done by Long.toHexString but without creating objects. I'll add a comment to that effect.


Line 212:             ps.print(digits[newValue & mask]);
> Where does this "digits" come from?
It mimics the array used internally by the Integer class (not visible) which Long.toHexString uses


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: Yes

Change in asterixdb[master]: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UU...

Posted by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org>.
Steven Jacobs has posted comments on this change.

Change subject: ASTERIXDB-1261, ASTERIXDB-1274, ASTERIXDB-1275 UUID Fixes UUIDPrinter no longer has a UUID object UUIDComparator is used by AbstractComparisonEValuator Removed UUID_STRING type Added test for uuid comparator
......................................................................


Patch Set 5:

(1 comment)

https://asterix-gerrit.ics.uci.edu/#/c/587/5/asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.1.ddl.aql
File asterix-app/src/test/resources/runtimets/queries/comparison/uuid_1/uuid_01.1.ddl.aql:

Line 26: create dataset nearbyTweetChannelResults(TypeA) 
> WS
Done


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael D. Blow <mi...@couchbase.com>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: Yes

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org>.
Steven Jacobs has posted comments on this change.

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object UUIDPrinter is not shared by multiple threads
......................................................................


Patch Set 3:

I have a new question from our meeting:

Since we are using the byte to print rather than a shared UUID object in the printer now, is there any harm in making the UUIDPrinter a shared instance? I changed it in this patchset to be not shared, but it seems fine to me to have it shared since it doesn't use an objects anymore. Right?

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No

Change in asterixdb[master]: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no lon...

Posted by "Steven Jacobs (Code Review)" <do...@asterixdb.incubator.apache.org>.
Steven Jacobs has posted comments on this change.

Change subject: ASTERIXDB-1261 Fixed the printer for UUID UUIDPrinter no longer has a UUID object The print function doesn't create any objects
......................................................................


Patch Set 2:

toStringLiteralOnly creates several objects per record (I think 6 strings and 30 char[]), which seems much worse to me (although I'm not much of a Java expert). Am I missing something there?

Maybe we should chat about this (perhaps with Yingyi as well, who I think was in charge of optimizing the other Printers)?

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/587
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie33dc8b02e32b3e85a3cb64ef08cb028a50f4ca0
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Steven Jacobs <sj...@ucr.edu>
Gerrit-Reviewer: Taewoo Kim <wa...@gmail.com>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-HasComments: No