>From Michael Blow <mb...@apache.org>:

Michael Blow has submitted this change. ( 
https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/20343 )

Change subject: [NO ISSUE][*DB][EXT] Avoid serialization of JsonFactory
......................................................................

[NO ISSUE][*DB][EXT] Avoid serialization of JsonFactory

Use a static JsonFactory in JSONDataParserFactory to avoid
serialization overhead and binary compatibility complications in the
future.

(cherry picked from commit 8a15298fb6)

Ext-ref: MB-68387
Change-Id: I5b855538fff6530ae3ae6ce45e2b8d68801d1e94
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/20343
Reviewed-by: Michael Blow <mb...@apache.org>
Tested-by: Michael Blow <mb...@apache.org>
---
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/JSONDataParserFactory.java
1 file changed, 22 insertions(+), 4 deletions(-)

Approvals:
  Michael Blow: Looks good to me, approved; Verified




diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/JSONDataParserFactory.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/JSONDataParserFactory.java
index f9d50d3..b672b20 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/JSONDataParserFactory.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/JSONDataParserFactory.java
@@ -41,16 +41,15 @@

 public class JSONDataParserFactory extends 
AbstractRecordStreamParserFactory<char[]> {

-    private static final long serialVersionUID = 1L;
+    private static final long serialVersionUID = 2L;
     private static final List<String> PARSER_FORMAT = 
Collections.unmodifiableList(
             Arrays.asList(ExternalDataConstants.FORMAT_JSON_LOWER_CASE, 
ExternalDataConstants.FORMAT_JSON_UPPER_CASE));
     private static final List<ATypeTag> UNSUPPORTED_TYPES = Collections
             .unmodifiableList(Arrays.asList(ATypeTag.MULTISET, 
ATypeTag.POINT3D, ATypeTag.CIRCLE, ATypeTag.RECTANGLE,
                     ATypeTag.INTERVAL, ATypeTag.DAYTIMEDURATION, 
ATypeTag.DURATION, ATypeTag.BINARY));
+    private static final JsonFactory jsonFactory;

-    private final JsonFactory jsonFactory;
-
-    public JSONDataParserFactory() {
+    static {
         jsonFactory = new JsonFactory();
         jsonFactory.configure(JsonParser.Feature.STRICT_DUPLICATE_DETECTION, 
true);
         jsonFactory.configure(JsonFactory.Feature.CANONICALIZE_FIELD_NAMES, 
true);

--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/20343
To unsubscribe, or for help writing mail filters, visit 
https://asterix-gerrit.ics.uci.edu/settings

Gerrit-Project: asterixdb
Gerrit-Branch: morpheus
Gerrit-Change-Id: I5b855538fff6530ae3ae6ce45e2b8d68801d1e94
Gerrit-Change-Number: 20343
Gerrit-PatchSet: 3
Gerrit-Owner: Michael Blow <mb...@apache.org>
Gerrit-Reviewer: Jenkins <jenk...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael Blow <mb...@apache.org>
Gerrit-CC: Anon. E. Moose #1000171
Gerrit-MessageType: merged

Reply via email to