Change in asterixdb[master]: [NO ISSUE] Fix type inference for ANY in UDFs

2019-06-08 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change. ( 
https://asterix-gerrit.ics.uci.edu/3405 )

Change subject: [NO ISSUE] Fix type inference for ANY in UDFs
..


Patch Set 3: Code-Review+1


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

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I6a03749fe041ec6f43de230d3e784122f7664545
Gerrit-Change-Number: 3405
Gerrit-PatchSet: 3
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose (1000171)
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Comment-Date: Sun, 09 Jun 2019 00:11:30 +
Gerrit-HasComments: No


Change in asterixdb[master]: [NO ISSUE] Fix type inference for ANY in UDFs

2019-06-07 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change. ( 
https://asterix-gerrit.ics.uci.edu/3405 )

Change subject: [NO ISSUE] Fix type inference for ANY in UDFs
..


Patch Set 2:

(1 comment)

https://asterix-gerrit.ics.uci.edu/#/c/3405/2/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
File 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp:

https://asterix-gerrit.ics.uci.edu/#/c/3405/2/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp@21
PS2, Line 21: let i={"id":1, "text_list": [{"text":"lower text1"}, 
{"text":"lower text2"}], "another_list" : ["string_1", "string_2"]}
> the expected result did not change. why is that?
The open field is not accessed in the function. It's here to make sure the 
parameters can be translated into Java objects properly.



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

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I6a03749fe041ec6f43de230d3e784122f7664545
Gerrit-Change-Number: 3405
Gerrit-PatchSet: 2
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose (1000171)
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Comment-Date: Fri, 07 Jun 2019 22:44:49 +
Gerrit-HasComments: Yes


Change in asterixdb[master]: [ASTERIX-2560] edit_distance() is case insensitive

2019-06-07 Thread Xikui Wang (Code Review)
Xikui Wang has abandoned this change. ( https://asterix-gerrit.ics.uci.edu/3380 
)

Change subject: [ASTERIX-2560] edit_distance() is case insensitive
..


Abandoned

The change of edit-distance changes some behaviors of the similarity join, 
which is not very clear to me.
--
To view, visit https://asterix-gerrit.ics.uci.edu/3380
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-MessageType: abandon
Gerrit-Change-Id: Id41bcf58a08435b5611c660609085d320691b990
Gerrit-Change-Number: 3380
Gerrit-PatchSet: 1
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose (1000171)
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO ISSUE] Fix type inference for ANY in UDFs

2019-05-24 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose (1000171), Jenkins,

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

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

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

Change subject: [NO ISSUE] Fix type inference for ANY in UDFs
..

[NO ISSUE] Fix type inference for ANY in UDFs

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
When data type is available, we should use defined data type. If not, we
should try to parse the data type from the data.

Change-Id: I6a03749fe041ec6f43de230d3e784122f7664545
---
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
2 files changed, 13 insertions(+), 3 deletions(-)


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

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6a03749fe041ec6f43de230d3e784122f7664545
Gerrit-Change-Number: 3405
Gerrit-PatchSet: 2
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose (1000171)
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO ISSUE] Fix type inference for ANY in UDFs

2019-05-23 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded this change for review. ( 
https://asterix-gerrit.ics.uci.edu/3405


Change subject: [NO ISSUE] Fix type inference for ANY in UDFs
..

[NO ISSUE] Fix type inference for ANY in UDFs

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
When data type is available, we should use defined data type. If not, we
should try to parse the data type from the data.

Change-Id: I6a03749fe041ec6f43de230d3e784122f7664545
---
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
3 files changed, 14 insertions(+), 4 deletions(-)



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

diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
index 743d39a..62c2b87 100644
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
@@ -18,7 +18,7 @@
  */
 use externallibtest;

-let i={"id":1, "text_list": [{"text":"lower text1"}, {"text":"lower text2"}]}
+let i={"id":1, "text_list": [{"text":"lower text1"}, {"text":"lower text2"}], 
"another_list" : ["string_1", "string_2"]}
 select value `testlib#toUpper`(i);

 let i=`testlib#toUpper`({"id":1, "text_list":[{"text":"lower text"}]})
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
index 65ecd8d..678b3d7 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
@@ -90,7 +90,7 @@

 @Override
 public String toString() {
-return String.valueOf(value, 0, size == 0 ? 0 : size - 1);
+return String.valueOf(value, 0, size == 0 ? 0 : size);
 }

 public void endRecord() throws IOException {
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
index ee8308f..3af08fa 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
@@ -583,10 +583,20 @@
 public IJObject access(AListVisitablePointable pointable, 
IObjectPool objectPool,
 IAType listType, JObjectPointableVisitor pointableVisitor) 
throws HyracksDataException {
 List items = pointable.getItems();
+List itemTags = pointable.getItemTags();
 JList list = pointable.ordered() ? new JOrderedList(listType) : 
new JUnorderedList(listType);
 IJObject listItem;
-for (IVisitablePointable itemPointable : items) {
-final IAType fieldType = ((AbstractCollectionType) 
listType).getItemType();
+for (int iter1 = 0; iter1 < items.size(); iter1++) {
+IVisitablePointable itemPointable = items.get(iter1);
+// First, try to get defined type.
+IAType fieldType = ((AbstractCollectionType) 
listType).getItemType();
+if (fieldType.getTypeTag() == ATypeTag.ANY) {
+// Second, if defined type is not available, try to infer 
it from data
+IVisitablePointable itemTagPointable = itemTags.get(iter1);
+ATypeTag itemTypeTag = 
EnumDeserializer.ATYPETAGDESERIALIZER
+
.deserialize(itemTagPointable.getByteArray()[itemTagPointable.getStartOffset()]);
+fieldType = TypeTagUtil.getBuiltinTypeByTag(itemTypeTag);
+}
 typeInfo.reset(fieldType, fieldType.getTypeTag());
 switch (typeInfo.getTypeTag()) {
 case OBJECT:

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

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I6a03749fe041ec6f43de230d3e784122f7664545

Change in asterixdb[master]: [ASTERIX-2559] Prevent missing parameter in external UDF

2019-05-03 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose (1000171), Jenkins,

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

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

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

Change subject: [ASTERIX-2559] Prevent missing parameter in external UDF
..

[ASTERIX-2559] Prevent missing parameter in external UDF

- user model changes: yes
UNION typed parameters are not allowed in external UDF parameters
- storage format changes: no
- interface changes: no

Details:
When there is a UNION typed parameter in an external UDF, the
IntroduceDynamicTypeCastForExternalFunctionRule would repeatedly
introduce cast function. When such parameter appears, the external UDF
should throw an exception when the value is missing.

Change-Id: I1fe2098d1e1c5e179a0635d9d6cc3a1534278259
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.2.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.3.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.4.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.5.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.6.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.7.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.8.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.1.ddl.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.2.lib.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.3.query.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.4.lib.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.5.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/parameter_casting/parameter_casting.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
17 files changed, 228 insertions(+), 16 deletions(-)


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

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I1fe2098d1e1c5e179a0635d9d6cc3a1534278259
Gerrit-Change-Number: 3379
Gerrit-PatchSet: 3
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose (1000171)
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIX-2559] Prevent missing parameter in external UDF

2019-05-03 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose (1000171), Jenkins,

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

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

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

Change subject: [ASTERIX-2559] Prevent missing parameter in external UDF
..

[ASTERIX-2559] Prevent missing parameter in external UDF

- user model changes: yes
UNION typed parameters are not allowed in external UDF parameters
- storage format changes: no
- interface changes: no

Details:
When there is a UNION typed parameter in an external UDF, the
IntroduceDynamicTypeCastForExternalFunctionRule would repeatedly
introduce cast function. When such parameter appears, the external UDF
should throw an exception when the value is missing.

Change-Id: I1fe2098d1e1c5e179a0635d9d6cc3a1534278259
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.2.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.3.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.4.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.5.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.7.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.1.ddl.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.2.lib.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.3.query.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.4.lib.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.5.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/parameter_casting/parameter_casting.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
15 files changed, 187 insertions(+), 16 deletions(-)


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

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I1fe2098d1e1c5e179a0635d9d6cc3a1534278259
Gerrit-Change-Number: 3379
Gerrit-PatchSet: 2
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose (1000171)
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIX-2560] edit_distance() is case insensitive

2019-05-03 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded this change for review. ( 
https://asterix-gerrit.ics.uci.edu/3380


Change subject: [ASTERIX-2560] edit_distance() is case insensitive
..

[ASTERIX-2560] edit_distance() is case insensitive

- user model changes: yes
edit_distance() now is case sensitive
- storage format changes: no
- interface changes: no

Detail:
The edit_distance() function is not case sensitive. This is not
following the common definition of edit distance.

Change-Id: Id41bcf58a08435b5611c660609085d320691b990
---
M 
hyracks-fullstack/hyracks/hyracks-data/hyracks-data-std/src/main/java/org/apache/hyracks/data/std/util/UTF8StringCharByCharIterator.java
1 file changed, 2 insertions(+), 2 deletions(-)



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

diff --git 
a/hyracks-fullstack/hyracks/hyracks-data/hyracks-data-std/src/main/java/org/apache/hyracks/data/std/util/UTF8StringCharByCharIterator.java
 
b/hyracks-fullstack/hyracks/hyracks-data/hyracks-data-std/src/main/java/org/apache/hyracks/data/std/util/UTF8StringCharByCharIterator.java
index 237d291..5cab892 100644
--- 
a/hyracks-fullstack/hyracks/hyracks-data/hyracks-data-std/src/main/java/org/apache/hyracks/data/std/util/UTF8StringCharByCharIterator.java
+++ 
b/hyracks-fullstack/hyracks/hyracks-data/hyracks-data-std/src/main/java/org/apache/hyracks/data/std/util/UTF8StringCharByCharIterator.java
@@ -36,8 +36,8 @@

 @Override
 public int compare(ISequenceIterator cmpIter) throws HyracksDataException {
-char thisChar = Character.toLowerCase(UTF8StringUtil.charAt(data, 
pos));
-char thatChar = 
Character.toLowerCase(UTF8StringUtil.charAt(cmpIter.getData(), 
cmpIter.getPos()));
+char thisChar = UTF8StringUtil.charAt(data, pos);
+char thatChar = UTF8StringUtil.charAt(cmpIter.getData(), 
cmpIter.getPos());
 if (thisChar == thatChar) {
 return 0;
 }

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

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Id41bcf58a08435b5611c660609085d320691b990
Gerrit-Change-Number: 3380
Gerrit-PatchSet: 1
Gerrit-Owner: Xikui Wang 


Change in asterixdb[master]: [ASTERIX-2559] Prevent missing parameter in external UDF

2019-05-03 Thread Xikui Wang (Code Review)
Xikui Wang has removed Dmitry Lychagin from this change.  ( 
https://asterix-gerrit.ics.uci.edu/3379 )

Change subject: [ASTERIX-2559] Prevent missing parameter in external UDF
..


Removed reviewer Dmitry Lychagin.
--
To view, visit https://asterix-gerrit.ics.uci.edu/3379
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-MessageType: deleteReviewer
Gerrit-Change-Id: I1fe2098d1e1c5e179a0635d9d6cc3a1534278259
Gerrit-Change-Number: 3379
Gerrit-PatchSet: 1
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose (1000171)
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIX-2559] Prevent missing parameter in external UDF

2019-05-02 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded this change for review. ( 
https://asterix-gerrit.ics.uci.edu/3379


Change subject: [ASTERIX-2559] Prevent missing parameter in external UDF
..

[ASTERIX-2559] Prevent missing parameter in external UDF

- user model changes: yes
UNION typed parameters are not allowed in external UDF parameters
- storage format changes: no
- interface changes: no

Details:
When there is a UNION typed parameter in an external UDF, the
IntroduceDynamicTypeCastForExternalFunctionRule would repeatedly
introduce cast function. When such parameter appears, the external UDF
should throw an exception when the value is missing.

Change-Id: I1fe2098d1e1c5e179a0635d9d6cc3a1534278259
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.2.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.3.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.4.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.5.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/parameter_casting/parameter_casting.7.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/parameter_casting/parameter_casting.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
9 files changed, 166 insertions(+), 14 deletions(-)



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

diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
index a00933a..fcf931d 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
@@ -75,40 +75,48 @@
 IAType inputType;
 IAType reqArgType;
 boolean castFlag;
+boolean checkUnknown = false;
 for (int i = 0; i < funcCallExpr.getArguments().size(); i++) {
 Mutable argExpr = 
funcCallExpr.getArguments().get(i);
 inputType = (IAType) 
op.computeOutputTypeEnvironment(context).getType(argExpr.getValue());
 reqArgType = ((ExternalScalarFunctionInfo) 
funcCallExpr.getFunctionInfo()).getArgumentTypes().get(i);
-
+while (NonTaggedFormatUtil.isOptional(inputType)) {
+inputType = ((AUnionType) inputType).getActualType();
+checkUnknown = true;
+}
 if (reqArgType.getTypeTag() == ATypeTag.OBJECT) {
 castFlag = 
!IntroduceDynamicTypeCastRule.compatible((ARecordType) reqArgType, inputType,
 argExpr.getValue().getSourceLocation());
 } else {
 castFlag = !reqArgType.equals(inputType);
 }
-/**
- * the input record type can be an union type
- * for the case when it comes from a subplan or left-outer join
- */
-boolean checkUnknown = false;
-while (NonTaggedFormatUtil.isOptional(inputType)) {
-/** while-loop for the case there is a nested multi-level 
union */
-inputType = ((AUnionType) inputType).getActualType();
-checkUnknown = true;
+
+if (checkUnknown) {
+AbstractFunctionCallExpression chkUnknownFunc =
+new 
ScalarFunctionCallExpression(FunctionUtil.getFunctionInfo(BuiltinFunctions.CHECK_UNKNOWN));
+TypeCastUtils.setRequiredAndInputTypes(chkUnknownFunc, 
reqArgType, inputType);
+wrapFunctionParameter(funcCallExpr, argExpr, chkUnknownFunc, 
i);
+changed = true;
 }
-if (castFlag || checkUnknown) {
+
+if (castFlag) {
 AbstractFunctionCallExpression castFunc =
 new 
ScalarFunctionCallExpression(FunctionUtil.getFunctionInfo(BuiltinFunctions.CAST_TYPE));
-
castFunc.setSourceLocation(argExpr.getValue().getSourceLocation());
-castFunc.getArguments().add(argExpr);
 

Change in asterixdb[master]: [NO ISSUE][FUN] Fix type inference and casting in UDFs

2019-04-15 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged. ( 
https://asterix-gerrit.ics.uci.edu/3270 )

Change subject: [NO ISSUE][FUN] Fix type inference and casting in UDFs
..

[NO ISSUE][FUN] Fix type inference and casting in UDFs

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The current UDF framework handles the argument types in a sloppy way. It
takes in the arguments and reads them as the expected data types in the
configuration. This could cause exception at runtime when passing in
arguments with unexpected datatypes. When setting the arguments, it did
a type casting for numeric values only to make sure the int64 from query
interface can be evaluated properly. However, this is not robust enough.

This patch fixes the type inference for UDFs during the complation time.
The ExternalTypeComputer is refactored to return defined data type, and
meanwhile checks the argument data types. Also, the
IntroduceDynamicTypeCastForExternalFunctionRule is modified to cover the
type castings for data types besides record type.

Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3270
Tested-by: Jenkins 
Integration-Tests: Jenkins 
Reviewed-by: Xikui Wang 
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.1.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.2.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.3.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.6.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.7.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.4.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.5.query.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.6.lib.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.7.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/mysum/mysum.2.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalFunction.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalFunctionProvider.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFactory.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFactory.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalTypeComputer.java
M 
asterixdb/asterix-metadata/src/test/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtilTest.java
M 
asterixdb/asterix-om/src/main/java/org/apache/asterix/om/functions/ExternalFunctionInfo.java
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/mysum/mysum.2.adm
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/testsuite.xml
28 files changed, 124 insertions(+), 188 deletions(-)

Approvals:
  Jenkins: Verified; Verified
  Xikui Wang: Looks good to me, approved

Objections:
  Anon. E. Moose (1000171): Violations found
  Jenkins: Violations found



diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
index 97e2174..a00933a 100644
--- 

Change in asterixdb[master]: [NO ISSUE][FUN] Fix type inference and casting in UDFs

2019-04-15 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change. ( 
https://asterix-gerrit.ics.uci.edu/3270 )

Change subject: [NO ISSUE][FUN] Fix type inference and casting in UDFs
..


Patch Set 9: Code-Review+2

(6 comments)

https://asterix-gerrit.ics.uci.edu/#/c/3270/7/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalFunction.java
File 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalFunction.java:

https://asterix-gerrit.ics.uci.edu/#/c/3270/7/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalFunction.java@45
PS7, Line 45: protected final IExternalFunction externalFunctionInstance;
> MAJOR SonarQube violation:
Done


https://asterix-gerrit.ics.uci.edu/#/c/3270/7/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java
File 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java:

https://asterix-gerrit.ics.uci.edu/#/c/3270/7/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java@41
PS7, Line 41: public class ExternalFunctionCompilerUtil {
> MAJOR SonarQube violation:
Done


https://asterix-gerrit.ics.uci.edu/#/c/3270/7/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java@142
PS7, Line 142: }
> MAJOR SonarQube violation:
save for future uses.


https://asterix-gerrit.ics.uci.edu/#/c/3270/7/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java@146
PS7, Line 146: private static IFunctionInfo 
getUnnestFunctionInfo(MetadataTransactionContext txnCtx, Function function) {
> MAJOR SonarQube violation:
same as above.


https://asterix-gerrit.ics.uci.edu/#/c/3270/7/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java@150
PS7, Line 150: private static IFunctionInfo 
getStatefulFunctionInfo(MetadataTransactionContext txnCtx, Function function) {
> MAJOR SonarQube violation:
same as above.


https://asterix-gerrit.ics.uci.edu/#/c/3270/7/asterixdb/asterix-om/src/main/java/org/apache/asterix/om/functions/ExternalFunctionInfo.java
File 
asterixdb/asterix-om/src/main/java/org/apache/asterix/om/functions/ExternalFunctionInfo.java:

https://asterix-gerrit.ics.uci.edu/#/c/3270/7/asterixdb/asterix-om/src/main/java/org/apache/asterix/om/functions/ExternalFunctionInfo.java@27
PS7, Line 27: public class ExternalFunctionInfo extends FunctionInfo implements 
IExternalFunctionInfo {
> MAJOR SonarQube violation:
dk whether this should be overridden or not. The comparison logic is not changed



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

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
Gerrit-Change-Number: 3270
Gerrit-PatchSet: 9
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose (1000171)
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Comment-Date: Tue, 16 Apr 2019 05:50:32 +
Gerrit-HasComments: Yes


Change in asterixdb[master]: [NO ISSUE][FUN] Fix type inference and casting in UDFs

2019-04-08 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][FUN] Fix type inference and casting in UDFs
..

[NO ISSUE][FUN] Fix type inference and casting in UDFs

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The current UDF framework handles the argument types in a sloppy way. It
takes in the arguments and reads them as the expected data types in the
configuration. This could cause exception at runtime when passing in
arguments with unexpected datatypes. When setting the arguments, it did
a type casting for numeric values only to make sure the int64 from query
interface can be evaluated properly. However, this is not robust enough.

This patch fixes the type inference for UDFs during the complation time.
The ExternalTypeComputer is refactored to return defined data type, and
meanwhile checks the argument data types. Also, the
IntroduceDynamicTypeCastForExternalFunctionRule is modified to cover the
type castings for data types besides record type.

Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.1.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.2.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.3.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.6.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.7.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.4.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.5.query.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.6.lib.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.7.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/mysum/mysum.2.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalFunction.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalFunctionProvider.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFactory.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFactory.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalTypeComputer.java
M 
asterixdb/asterix-metadata/src/test/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtilTest.java
M 
asterixdb/asterix-om/src/main/java/org/apache/asterix/om/functions/ExternalFunctionInfo.java
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/mysum/mysum.2.adm
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/testsuite.xml
28 files changed, 124 insertions(+), 188 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/70/3270/8
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/3270
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
Gerrit-PatchSet: 8
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: 

Change in asterixdb[master]: [NO ISSUE][FUN] Fix type inference and casting in UDFs

2019-04-08 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][FUN] Fix type inference and casting in UDFs
..

[NO ISSUE][FUN] Fix type inference and casting in UDFs

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The current UDF framework handles the argument types in a sloppy way. It
takes in the arguments and reads them as the expected data types in the
configuration. This could cause exception at runtime when passing in
arguments with unexpected datatypes. When setting the arguments, it did
a type casting for numeric values only to make sure the int64 from query
interface can be evaluated properly. However, this is not robust enough.

This patch fixes the type inference for UDFs during the complation time.
The ExternalTypeComputer is refactored to return defined data type, and
meanwhile checks the argument data types. Also, the
IntroduceDynamicTypeCastForExternalFunctionRule is modified to cover the
type castings for data types besides record type.

Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.1.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.2.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.3.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.6.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.7.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.4.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.5.query.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.6.lib.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.7.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/mysum/mysum.2.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalFunction.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFactory.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFactory.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalTypeComputer.java
M 
asterixdb/asterix-metadata/src/test/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtilTest.java
M 
asterixdb/asterix-om/src/main/java/org/apache/asterix/om/functions/ExternalFunctionInfo.java
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/mysum/mysum.2.adm
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/testsuite.xml
27 files changed, 115 insertions(+), 183 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/70/3270/7
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/3270
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
Gerrit-PatchSet: 7
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [NO ISSUE][FUN] Fix type inference and casting in UDFs

2019-03-22 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][FUN] Fix type inference and casting in UDFs
..

[NO ISSUE][FUN] Fix type inference and casting in UDFs

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The current UDF framework handles the argument types in a sloppy way. It
takes in the arguments and reads them as the expected data types in the
configuration. This could cause exception at runtime when passing in
arguments with unexpected datatypes. When setting the arguments, it did
a type casting for numeric values only to make sure the int64 from query
interface can be evaluated properly. However, this is not robust enough.

This patch fixes the type inference for UDFs during the complation time.
The ExternalTypeComputer is refactored to return defined data type, and
meanwhile checks the argument data types. Also, the
IntroduceDynamicTypeCastForExternalFunctionRule is modified to cover the
type castings for data types besides record type.

Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.1.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.2.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.3.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.6.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.7.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.4.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.5.query.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.6.lib.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.7.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/mysum/mysum.2.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalFunction.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFactory.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFactory.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalTypeComputer.java
M 
asterixdb/asterix-metadata/src/test/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtilTest.java
M 
asterixdb/asterix-om/src/main/java/org/apache/asterix/om/functions/ExternalFunctionInfo.java
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/mysum/mysum.2.adm
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/testsuite.xml
27 files changed, 116 insertions(+), 172 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
Gerrit-PatchSet: 6
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [NO ISSUE][FUN] Fix type inference and casting in UDFs

2019-03-22 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [NO ISSUE][FUN] Fix type inference and casting in UDFs
..


Patch Set 3:

(3 comments)

Thanks for your comments!

https://asterix-gerrit.ics.uci.edu/#/c/3270/3/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
File 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java:

PS3, Line 80: Boolean
> /boolean/
Done


PS3, Line 81: iter1
> not intro'd in this change, but can we rename iter1 to i or index or someth
Is there a particular benefit for changing this, or it's a general stylistic 
rule? The reason I ask is bc I have been naming iterator variables this way for 
some time... It would useful to know if that's not the right way.


PS3, Line 84: getArgumenTypes
> /getArgumentTypes/
Done


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [NO ISSUE][FUN] Fix type inference and casting in UDFs

2019-03-22 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][FUN] Fix type inference and casting in UDFs
..

[NO ISSUE][FUN] Fix type inference and casting in UDFs

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The current UDF framework handles the argument types in a sloppy way. It
takes in the arguments and reads them as the expected data types in the
configuration. This could cause exception at runtime when passing in
arguments with unexpected datatypes. When setting the arguments, it did
a type casting for numeric values only to make sure the int64 from query
interface can be evaluated properly. However, this is not robust enough.

This patch fixes the type inference for UDFs during the complation time.
The ExternalTypeComputer is refactored to return defined data type, and
meanwhile checks the argument data types. Also, the
IntroduceDynamicTypeCastForExternalFunctionRule is modified to cover the
type castings for data types besides record type.

Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.1.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.2.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.3.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.6.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.7.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.4.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.5.query.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.6.lib.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.7.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/mysum/mysum.2.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalFunction.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFactory.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFactory.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalTypeComputer.java
M 
asterixdb/asterix-metadata/src/test/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtilTest.java
M 
asterixdb/asterix-om/src/main/java/org/apache/asterix/om/functions/ExternalFunctionInfo.java
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/mysum/mysum.2.adm
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/testsuite.xml
27 files changed, 115 insertions(+), 172 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 
Gerrit-Reviewer: Till Westmann 


Change in asterixdb[master]: [NO ISSUE][FUN] Fix type inference in JListAccessor

2019-03-15 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged.

Change subject: [NO ISSUE][FUN] Fix type inference in JListAccessor
..


[NO ISSUE][FUN] Fix type inference in JListAccessor

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
As the list element type is available, there is no need to deserialize
element types from the data. Doing so, for example, will cause the
object type to be fully open type and closed fields to be recognized as
open fields. This will further cause NPE in UDFs. Modified the upperCase
test case to check this issue.

Change-Id: I4f437857779e5c0af175c695938fbd7208da244d
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3264
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Contrib: Jenkins 
Integration-Tests: Jenkins 
Reviewed-by: Dmitry Lychagin 
---
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.1.ddl.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.2.lib.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.3.query.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.4.lib.aql
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.1.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/upperCase/upperCase.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/UpperCaseFunction.java
10 files changed, 32 insertions(+), 120 deletions(-)

Approvals:
  Jenkins: Verified; No violations found; ; Verified
  Dmitry Lychagin: Looks good to me, approved



diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.1.ddl.aql
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.1.ddl.aql
deleted file mode 100644
index 2dcd24d..000
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.1.ddl.aql
+++ /dev/null
@@ -1,27 +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.
- */
-drop dataverse externallibtest if exists;
-create dataverse externallibtest;
-use dataverse externallibtest;
-
-create type TextType if not exists as open {
-id: int32,
-text: string
-};
-
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.2.lib.aql
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.2.lib.aql
deleted file mode 100644
index d1e0e87..000
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.2.lib.aql
+++ /dev/null
@@ -1,19 +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.
- */
-install externallibtest testlib 
target/data/externallib/asterix-external-data-testlib.zip
\ No newline at end of file
diff --git 

Change in asterixdb[master]: [NO ISSUE][FUN] Fix type inference and casting in UDFs

2019-03-13 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][FUN] Fix type inference and casting in UDFs
..

[NO ISSUE][FUN] Fix type inference and casting in UDFs

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The current UDF framework handles the argument types in a sloppy way. It
takes in the arguments and reads them as the expected data types in the
configuration. This could cause exception at runtime when passing in
arguments with unexpected datatypes. When setting the arguments, it did
a type casting for numeric values only to make sure the int64 from query
interface can be evaluated properly. However, this is not robust enough.

This patch fixes the type inference for UDFs during the complation time.
The ExternalTypeComputer is refactored to return defined data type, and
meanwhile checks the argument data types. Also, the
IntroduceDynamicTypeCastForExternalFunctionRule is modified to cover the
type castings for data types besides record type.

Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.1.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.2.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.3.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.6.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.7.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.4.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.5.query.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.6.lib.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.7.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/mysum/mysum.2.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalFunction.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFactory.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFactory.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalTypeComputer.java
M 
asterixdb/asterix-metadata/src/test/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtilTest.java
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/mysum/mysum.2.adm
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/testsuite.xml
26 files changed, 114 insertions(+), 168 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO ISSUE][FUN] Fix type inference and casting in UDFs

2019-03-12 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new change for review.

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

Change subject: [NO ISSUE][FUN] Fix type inference and casting in UDFs
..

[NO ISSUE][FUN] Fix type inference and casting in UDFs

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The current UDF framework handles the argument types in a sloppy way. It
takes in the arguments and reads them as the expected data types in the
configuration. This could cause exception at runtime when passing in
arguments with unexpected datatypes. When setting the arguments, it did
a type casting for numeric values only to make sure the int64 from query
interface can be evaluated properly. However, this is not robust enough.

This patch fixes the type inference for UDFs during the complation time.
The ExternalTypeComputer is refactored to return defined data type, and
meanwhile checks the argument data types. Also, the
IntroduceDynamicTypeCastForExternalFunctionRule is modified to cover the
type castings for data types besides record type.

Change-Id: I40506fcca3cd8f14bbd6412359683433256c4c1f
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.1.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.2.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.3.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.6.lib.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/my_array_sum/my_array_sum.7.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.4.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.5.query.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.6.lib.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.7.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/mysum/mysum.2.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalFunction.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFactory.java
C 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MyArraySumFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFactory.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/MySumFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalTypeComputer.java
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/my_array_sum/my_array_sum.1.adm
A 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-functions/mysum/mysum.2.adm
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/testsuite.xml
25 files changed, 115 insertions(+), 166 deletions(-)


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

diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
index 97e2174..4041f44 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceDynamicTypeCastForExternalFunctionRule.java
@@ -21,11 +21,15 @@
 
 import org.apache.asterix.lang.common.util.FunctionUtil;
 import org.apache.asterix.metadata.functions.ExternalScalarFunctionInfo;
+import org.apache.asterix.om.base.ARecord;
 import org.apache.asterix.om.functions.BuiltinFunctions;
 import org.apache.asterix.om.typecomputer.base.TypeCastUtils;
 import 

Change in asterixdb[master]: [NO ISSUE][FUN] Fix type inference in JListAccessor

2019-03-11 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][FUN] Fix type inference in JListAccessor
..

[NO ISSUE][FUN] Fix type inference in JListAccessor

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
As the list element type is available, there is no need to deserialize
element types from the data. Doing so, for example, will cause the
object type to be fully open type and closed fields to be recognized as
open fields. This will further cause NPE in UDFs. Modified the upperCase
test case to check this issue.

Change-Id: I4f437857779e5c0af175c695938fbd7208da244d
---
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.1.ddl.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.2.lib.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.3.query.aql
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries/external-library/upperCase/upperCase.4.lib.aql
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.1.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/upperCase/upperCase.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/UpperCaseFunction.java
10 files changed, 32 insertions(+), 120 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I4f437857779e5c0af175c695938fbd7208da244d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO ISSUE][FUN] Fix type inference in JListAccessor

2019-03-11 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new change for review.

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

Change subject: [NO ISSUE][FUN] Fix type inference in JListAccessor
..

[NO ISSUE][FUN] Fix type inference in JListAccessor

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
As the list element type is available, there is no need to deserialize
element types from the data. Doing so, for example, will cause the
object type to be fully open type and closed fields to be recognized as
open fields. This will further cause NPE in UDFs. Modified the upperCase
test case to check this issue.

Change-Id: I4f437857779e5c0af175c695938fbd7208da244d
---
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.1.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/upperCase/upperCase.1.adm
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/UpperCaseFunction.java
5 files changed, 32 insertions(+), 22 deletions(-)


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

diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.1.ddl.sqlpp
index 8130de2..292e4e1 100644
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.1.ddl.sqlpp
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.1.ddl.sqlpp
@@ -20,7 +20,11 @@
 CREATE DATAVERSE  externallibtest;
 USE externallibtest;
 
+create type list_element as open{
+text: string
+};
+
 create type TextType if not exists as open {
 id: int32,
-text: string
+text_list: [list_element]
 };
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
index f361232..743d39a 100644
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/upperCase/upperCase.3.query.sqlpp
@@ -18,11 +18,11 @@
  */
 use externallibtest;
 
-let i={"id":1, "text":"lower text"}
+let i={"id":1, "text_list": [{"text":"lower text1"}, {"text":"lower text2"}]}
 select value `testlib#toUpper`(i);
 
-let i=`testlib#toUpper`({"id":1, "text":"lower text"})
+let i=`testlib#toUpper`({"id":1, "text_list":[{"text":"lower text"}]})
 select value i;
 
-let i= {"field1" : `testlib#toUpper`({"id":1, "text":"lower text"}), "field2": 
123}
+let i= {"field1" : `testlib#toUpper`({"id":1, "text_list":[{"text":"lower 
text"}]}), "field2": 123}
 select value i;
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/upperCase/upperCase.1.adm
 
b/asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/upperCase/upperCase.1.adm
index e4af2be..2efaa4f 100644
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/upperCase/upperCase.1.adm
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/upperCase/upperCase.1.adm
@@ -1,3 +1,3 @@
-{ "id": -1, "text": "LOWER TEXT" }
-{ "id": -1, "text": "LOWER TEXT" }
-{ "field1": { "id": -1, "text": "LOWER TEXT" }, "field2": 123 }
+{ "id": -1, "text_list": [ { "text": "lower text1" }, { "text": "lower text2" 
} ], "element_n": 2, "capitalized_list": [ "LOWER TEXT1", "LOWER TEXT2" ] }
+{ "id": -1, "text_list": [ { "text": "lower text" } ], "element_n": 1, 
"capitalized_list": [ "LOWER TEXT" ] }
+{ "field1": { "id": -1, "text_list": [ { "text": "lower text" } ], 
"element_n": 1, "capitalized_list": [ "LOWER TEXT" ] }, "field2": 123 }
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
index 2678a8d..1a6553c 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/JObjectAccessors.java
@@ -82,8 +82,10 @@
 import org.apache.asterix.om.pointables.AListVisitablePointable;
 import 

Change in asterixdb[master]: [NO ISSUE][RT] Fix flush in OneFramePushRuntime

2019-03-08 Thread Xikui Wang (Code Review)
Xikui Wang has abandoned this change.

Change subject: [NO ISSUE][RT] Fix flush in OneFramePushRuntime
..


Abandoned

Not right.

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

Gerrit-MessageType: abandon
Gerrit-Change-Id: I2c2768a41fb9d23f8ce990c8c5c52ec14c2319e5
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO ISSUE][RT] Fix flush in OneFramePushRuntime

2019-03-08 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new change for review.

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

Change subject: [NO ISSUE][RT] Fix flush in OneFramePushRuntime
..

[NO ISSUE][RT] Fix flush in OneFramePushRuntime

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The AbstractOneInputOneOutputOneFramePushRuntime doesn't flush data
records in its flushAndReset() method. This causes the data records are
not flushed as expected if there is a partitioned connected after it. In
data feeds particularly, when the feeding rate is low, the ingested data
will not be able to be queried, even if they are ingested for a very
long time.

Change-Id: I2c2768a41fb9d23f8ce990c8c5c52ec14c2319e5
---
M 
hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/base/AbstractOneInputOneOutputOneFramePushRuntime.java
1 file changed, 1 insertion(+), 0 deletions(-)


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

diff --git 
a/hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/base/AbstractOneInputOneOutputOneFramePushRuntime.java
 
b/hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/base/AbstractOneInputOneOutputOneFramePushRuntime.java
index 71b44d3..81edfe0 100644
--- 
a/hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/base/AbstractOneInputOneOutputOneFramePushRuntime.java
+++ 
b/hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/base/AbstractOneInputOneOutputOneFramePushRuntime.java
@@ -72,6 +72,7 @@
 protected void flushAndReset() throws HyracksDataException {
 if (appender.getTupleCount() > 0) {
 appender.write(writer, true);
+writer.flush();
 }
 }
 

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I2c2768a41fb9d23f8ce990c8c5c52ec14c2319e5
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2514] Fix BigInt display in formatted JSON

2019-02-07 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged.

Change subject: [ASTERIXDB-2514] Fix BigInt display in formatted JSON
..


[ASTERIXDB-2514] Fix BigInt display in formatted JSON

- user model changes: no
- storage format changes: no
- interface changes: no

Javascript treats all numbers as doubles. This causes large BigInt
values cannot be displayed properly in the formatted JSON option, and
the lower digits are replaced with "0". In this patch, we cast the
numbers into strings with special characters, and cast those strings
back after they are parsed by the JSON parser. Also, to make sure future
new data types can be displayed properly, the default JSON display is
set to "literal".

Change-Id: I1bbef349efba0da24d01afb1cb17b4f7d5b7f261
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3142
Sonar-Qube: Jenkins 
Integration-Tests: Jenkins 
Tested-by: Jenkins 
Contrib: Jenkins 
Reviewed-by: Michael Blow 
---
M asterixdb/asterix-app/src/main/resources/webui/querytemplate.html
M asterixdb/asterix-app/src/main/resources/webui/static/js/jquery.json-viewer.js
2 files changed, 11 insertions(+), 5 deletions(-)

Approvals:
  Jenkins: Verified; No violations found; ; Verified
  Michael Blow: Looks good to me, approved



diff --git a/asterixdb/asterix-app/src/main/resources/webui/querytemplate.html 
b/asterixdb/asterix-app/src/main/resources/webui/querytemplate.html
index 1157c27..31448ee 100644
--- a/asterixdb/asterix-app/src/main/resources/webui/querytemplate.html
+++ b/asterixdb/asterix-app/src/main/resources/webui/querytemplate.html
@@ -181,7 +181,14 @@
   if (results[iter1].length < 1) {
 continue;
   }
-  var resultJSON = $.parseJSON(results[iter1]);
+  var str_obj = 
results[iter1].replace(/:\s*(\d+)([\s,])/g, ': "#bigint#$1#bigint#"$2');
+  resultJSON = JSON.parse(str_obj, (key, value) => {
+  if (/^#bigint#\d+#bigint#/g.test(value)) {
+value = value.substring(8, value.length - 8);
+return BigInt(value);
+  }
+  return value;
+});
   $(this).append($('').attr("id", 
"json-record"+idx+"-"+iter1));
   $('#json-record'+idx+"-"+iter1).jsonViewer(resultJSON, 
{collapsed: true, level: 10});
 }
diff --git 
a/asterixdb/asterix-app/src/main/resources/webui/static/js/jquery.json-viewer.js
 
b/asterixdb/asterix-app/src/main/resources/webui/static/js/jquery.json-viewer.js
index 5e8a79e..f31b555 100644
--- 
a/asterixdb/asterix-app/src/main/resources/webui/static/js/jquery.json-viewer.js
+++ 
b/asterixdb/asterix-app/src/main/resources/webui/static/js/jquery.json-viewer.js
@@ -56,10 +56,7 @@
   else
 html += '"' + json + '"';
 }
-else if (typeof json === 'number') {
-  html += '' + json + '';
-}
-else if (typeof json === 'boolean') {
+else if (typeof json === 'number' || typeof json === 'boolean' || typeof 
json === 'bigint') {
   html += '' + json + '';
 }
 else if (json === null) {
@@ -111,6 +108,8 @@
   else {
 html += '{}';
   }
+} else {
+html += '' + json + '';
 }
 return html;
   }

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

Gerrit-MessageType: merged
Gerrit-Change-Id: I1bbef349efba0da24d01afb1cb17b4f7d5b7f261
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Ian Maxon 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Blow 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2514] Fix BigInt display in formatted JSON

2019-02-01 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new change for review.

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

Change subject: [ASTERIXDB-2514] Fix BigInt display in formatted JSON
..

[ASTERIXDB-2514] Fix BigInt display in formatted JSON

- user model changes: no
- storage format changes: no
- interface changes: no

Javascript treats all numbers as doubles. This causes large BigInt
values cannot be displayed properly in the formatted JSON option, and
the lower digits are replaced with "0". In this patch, we cast the
numbers into strings with special characters, and cast those strings
back after they are parsed by the JSON parser. Also, to make sure future
new data types can be displayed properly, the default JSON display is
set to "literal".

Change-Id: I1bbef349efba0da24d01afb1cb17b4f7d5b7f261
---
M asterixdb/asterix-app/src/main/resources/webui/querytemplate.html
M asterixdb/asterix-app/src/main/resources/webui/static/js/jquery.json-viewer.js
2 files changed, 11 insertions(+), 5 deletions(-)


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

diff --git a/asterixdb/asterix-app/src/main/resources/webui/querytemplate.html 
b/asterixdb/asterix-app/src/main/resources/webui/querytemplate.html
index 1157c27..31448ee 100644
--- a/asterixdb/asterix-app/src/main/resources/webui/querytemplate.html
+++ b/asterixdb/asterix-app/src/main/resources/webui/querytemplate.html
@@ -181,7 +181,14 @@
   if (results[iter1].length < 1) {
 continue;
   }
-  var resultJSON = $.parseJSON(results[iter1]);
+  var str_obj = 
results[iter1].replace(/:\s*(\d+)([\s,])/g, ': "#bigint#$1#bigint#"$2');
+  resultJSON = JSON.parse(str_obj, (key, value) => {
+  if (/^#bigint#\d+#bigint#/g.test(value)) {
+value = value.substring(8, value.length - 8);
+return BigInt(value);
+  }
+  return value;
+});
   $(this).append($('').attr("id", 
"json-record"+idx+"-"+iter1));
   $('#json-record'+idx+"-"+iter1).jsonViewer(resultJSON, 
{collapsed: true, level: 10});
 }
diff --git 
a/asterixdb/asterix-app/src/main/resources/webui/static/js/jquery.json-viewer.js
 
b/asterixdb/asterix-app/src/main/resources/webui/static/js/jquery.json-viewer.js
index 5e8a79e..f31b555 100644
--- 
a/asterixdb/asterix-app/src/main/resources/webui/static/js/jquery.json-viewer.js
+++ 
b/asterixdb/asterix-app/src/main/resources/webui/static/js/jquery.json-viewer.js
@@ -56,10 +56,7 @@
   else
 html += '"' + json + '"';
 }
-else if (typeof json === 'number') {
-  html += '' + json + '';
-}
-else if (typeof json === 'boolean') {
+else if (typeof json === 'number' || typeof json === 'boolean' || typeof 
json === 'bigint') {
   html += '' + json + '';
 }
 else if (json === null) {
@@ -111,6 +108,8 @@
   else {
 html += '{}';
   }
+} else {
+html += '' + json + '';
 }
 return html;
   }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1bbef349efba0da24d01afb1cb17b4f7d5b7f261
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 


Change in asterixdb[master]: [NO ISSUE][EXT] Fix JRecord setField for open fields

2018-12-18 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged.

Change subject: [NO ISSUE][EXT] Fix JRecord setField for open fields
..


[NO ISSUE][EXT] Fix JRecord setField for open fields

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
setField method should be able to handle open fields.

Change-Id: I4ec185d62e78e8100215334bc656586268314797
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3068
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Integration-Tests: Jenkins 
Contrib: Jenkins 
Reviewed-by: Ali Alsuliman 
---
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/keyword_detector/keyword_detector.1.ddl.sqlpp
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/base/JRecord.java
2 files changed, 2 insertions(+), 7 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Ali Alsuliman: Looks good to me, approved
  Jenkins: Verified; No violations found; ; Verified



diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/keyword_detector/keyword_detector.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/keyword_detector/keyword_detector.1.ddl.sqlpp
index 4402130..464ecb2 100644
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/keyword_detector/keyword_detector.1.ddl.sqlpp
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/keyword_detector/keyword_detector.1.ddl.sqlpp
@@ -35,8 +35,7 @@
 };
 
 create type DetectResultType as open{
-id:int64,
-sensitive: boolean
+id:int64
 };
 
 create dataset EmpDataset(InputRecordType) primary key id;
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/base/JRecord.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/base/JRecord.java
index 7fa9d0b..10c228d 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/base/JRecord.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/base/JRecord.java
@@ -99,11 +99,7 @@
 if (pos >= 0) {
 fields[pos] = fieldValue;
 } else {
-if (openFields.get(fieldName) != null) {
-openFields.put(fieldName, fieldValue);
-} else {
-throw new 
RuntimeDataException(ErrorCode.LIBRARY_JAVA_JOBJECTS_UNKNOWN_FIELD, fieldName);
-}
+openFields.put(fieldName, fieldValue);
 }
 }
 

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

Gerrit-MessageType: merged
Gerrit-Change-Id: I4ec185d62e78e8100215334bc656586268314797
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Ali Alsuliman 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [NO ISSUE][EXT] Fix JRecord setField for open fields

2018-12-18 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][EXT] Fix JRecord setField for open fields
..

[NO ISSUE][EXT] Fix JRecord setField for open fields

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
setField method should be able to handle open fields.

Change-Id: I4ec185d62e78e8100215334bc656586268314797
---
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/keyword_detector/keyword_detector.1.ddl.sqlpp
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/base/JRecord.java
2 files changed, 2 insertions(+), 7 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I4ec185d62e78e8100215334bc656586268314797
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Ali Alsuliman 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIXDB-2495][ING] Avoid LET in applying functions to feeds

2018-12-18 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged.

Change subject: [ASTERIXDB-2495][ING] Avoid LET in applying functions to feeds
..


[ASTERIXDB-2495][ING] Avoid LET in applying functions to feeds

- user model changes: no
- storage format changes: no
- interface changes: no

LET is not necessary for applying functions to data feeds. We could
inline the function calls when constructing the pipeline query.

Change-Id: I65842f9ac84891b363d7e0a02425258d0df794e7
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3072
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Integration-Tests: Jenkins 
Contrib: Jenkins 
Reviewed-by: Dmitry Lychagin 
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/utils/FeedOperations.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.3.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.4.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.5.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/udf_filter_on_feed/udf_filter_on_feed.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/WordInListFactory.java
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/WordInListFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
11 files changed, 240 insertions(+), 16 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Jenkins: Verified; No violations found; ; Verified
  Dmitry Lychagin: Looks good to me, approved



diff --git 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/utils/FeedOperations.java
 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/utils/FeedOperations.java
index 593d7ce..d22e929 100644
--- 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/utils/FeedOperations.java
+++ 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/utils/FeedOperations.java
@@ -184,8 +184,8 @@
 argExprs.add(new LiteralExpr(new IntegerLiteral((Integer) 
arg)));
 } else if (arg instanceof String) {
 argExprs.add(new LiteralExpr(new StringLiteral((String) arg)));
-} else if (arg instanceof VariableExpr) {
-argExprs.add((VariableExpr) arg);
+} else if (arg instanceof Expression) {
+argExprs.add((Expression) arg);
 }
 }
 return argExprs;
@@ -216,25 +216,16 @@
 whereClause = new WhereClause(whereClauseQuery.getBody());
 }
 
-// TODO: This can be the place to add select predicate for ingestion
 // Attaching functions
-int varIdx = 1;
-VariableExpr previousVarExpr = fromTermLeftExpr;
-ArrayList letClauses = new ArrayList<>();
-for (FunctionSignature funcSig : feedConnection.getAppliedFunctions()) 
{
-VarIdentifier intermediateVar = SqlppVariableUtil
-
.toInternalVariableIdentifier(FEED_DATAFLOW_INTERMEIDATE_VAL_PREFIX + 
String.valueOf(varIdx));
-VariableExpr intermediateVarExpr = new 
VariableExpr(intermediateVar);
-CallExpr functionCallExpr = new CallExpr(funcSig, 
addArgs(previousVarExpr));
-previousVarExpr = intermediateVarExpr;
-LetClause letClause = new LetClause(intermediateVarExpr, 
functionCallExpr);
-letClauses.add(letClause);
-varIdx++;
+Expression previousVarExpr = fromTermLeftExpr;
+for (FunctionSignature functionSignature : 
feedConnection.getAppliedFunctions()) {
+CallExpr functionCallExpr = new CallExpr(functionSignature, 
addArgs(previousVarExpr));
+previousVarExpr = functionCallExpr;
 }
 // Constructing select clause
 SelectElement selectElement = new SelectElement(previousVarExpr);
 SelectClause selectClause = new SelectClause(selectElement, null, 
false);
-SelectBlock selectBlock = new SelectBlock(selectClause, fromClause, 
letClauses, whereClause, null, null, null);
+SelectBlock selectBlock = new SelectBlock(selectClause, fromClause, 
null, whereClause, null, null, null);
 SelectSetOperation selectSetOperation = new SelectSetOperation(new 
SetOperationInput(selectBlock, null), null);
 SelectExpression body 

Change in asterixdb[master]: [ASTERIXDB-2495][ING] Avoid LET in applying functions to feeds

2018-12-14 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [ASTERIXDB-2495][ING] Avoid LET in applying functions to feeds
..

[ASTERIXDB-2495][ING] Avoid LET in applying functions to feeds

- user model changes: no
- storage format changes: no
- interface changes: no

LET is not necessary for applying functions to data feeds. We could
inline the function calls when constructing the pipeline query.

Change-Id: I65842f9ac84891b363d7e0a02425258d0df794e7
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/utils/FeedOperations.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.3.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.4.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.5.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/udf_filter_on_feed/udf_filter_on_feed.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/WordInListFactory.java
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/WordInListFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
11 files changed, 240 insertions(+), 16 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I65842f9ac84891b363d7e0a02425258d0df794e7
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIXDB-2495][ING] Avoid LET in applying functions to feeds

2018-12-11 Thread Xikui Wang (Code Review)
Hello Jenkins,

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

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

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

Change subject: [ASTERIXDB-2495][ING] Avoid LET in applying functions to feeds
..

[ASTERIXDB-2495][ING] Avoid LET in applying functions to feeds

- user model changes: no
- storage format changes: no
- interface changes: no

LET is not necessary for applying functions to data feeds. We could
incline the function calls when constructing the pipeline query.

Change-Id: I65842f9ac84891b363d7e0a02425258d0df794e7
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/utils/FeedOperations.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.3.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.4.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.5.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/udf_filter_on_feed/udf_filter_on_feed.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/WordInListFactory.java
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/WordInListFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
11 files changed, 240 insertions(+), 16 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I65842f9ac84891b363d7e0a02425258d0df794e7
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIXDB-2495][ING] Avoid LET in applying functions to feeds

2018-12-11 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new change for review.

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

Change subject: [ASTERIXDB-2495][ING] Avoid LET in applying functions to feeds
..

[ASTERIXDB-2495][ING] Avoid LET in applying functions to feeds

- user model changes: no
- storage format changes: no
- interface changes: no

LET is not necessary for applying functions to data feeds. We could
incline the function calls when constructing the pipeline query.

Change-Id: I65842f9ac84891b363d7e0a02425258d0df794e7
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/utils/FeedOperations.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.3.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.4.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/udf_filter_on_feed/udf_filter_on_feed.5.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/udf_filter_on_feed/udf_filter_on_feed.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/WordInListFactory.java
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/WordInListFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
11 files changed, 251 insertions(+), 15 deletions(-)


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

diff --git 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/utils/FeedOperations.java
 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/utils/FeedOperations.java
index 593d7ce..1049e66 100644
--- 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/utils/FeedOperations.java
+++ 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/utils/FeedOperations.java
@@ -184,8 +184,8 @@
 argExprs.add(new LiteralExpr(new IntegerLiteral((Integer) 
arg)));
 } else if (arg instanceof String) {
 argExprs.add(new LiteralExpr(new StringLiteral((String) arg)));
-} else if (arg instanceof VariableExpr) {
-argExprs.add((VariableExpr) arg);
+} else if (arg instanceof Expression) {
+argExprs.add((Expression) arg);
 }
 }
 return argExprs;
@@ -216,25 +216,28 @@
 whereClause = new WhereClause(whereClauseQuery.getBody());
 }
 
-// TODO: This can be the place to add select predicate for ingestion
 // Attaching functions
 int varIdx = 1;
-VariableExpr previousVarExpr = fromTermLeftExpr;
-ArrayList letClauses = new ArrayList<>();
-for (FunctionSignature funcSig : feedConnection.getAppliedFunctions()) 
{
-VarIdentifier intermediateVar = SqlppVariableUtil
-
.toInternalVariableIdentifier(FEED_DATAFLOW_INTERMEIDATE_VAL_PREFIX + 
String.valueOf(varIdx));
-VariableExpr intermediateVarExpr = new 
VariableExpr(intermediateVar);
-CallExpr functionCallExpr = new CallExpr(funcSig, 
addArgs(previousVarExpr));
-previousVarExpr = intermediateVarExpr;
-LetClause letClause = new LetClause(intermediateVarExpr, 
functionCallExpr);
-letClauses.add(letClause);
-varIdx++;
+Expression previousVarExpr = fromTermLeftExpr;
+for (FunctionSignature functionSignature : 
feedConnection.getAppliedFunctions()) {
+CallExpr functionCallExpr = new CallExpr(functionSignature, 
addArgs(previousVarExpr));
+previousVarExpr = functionCallExpr;
 }
+//ArrayList letClauses = new ArrayList<>();
+//for (FunctionSignature funcSig : 
feedConnection.getAppliedFunctions()) {
+//VarIdentifier intermediateVar = SqlppVariableUtil
+//
.toInternalVariableIdentifier(FEED_DATAFLOW_INTERMEIDATE_VAL_PREFIX + 
String.valueOf(varIdx));
+//VariableExpr intermediateVarExpr = new 
VariableExpr(intermediateVar);
+//CallExpr functionCallExpr = new CallExpr(funcSig, 
addArgs(previousVarExpr));
+//previousVarExpr = intermediateVarExpr;
+//LetClause letClause = new LetClause(intermediateVarExpr, 
functionCallExpr);
+//letClauses.add(letClause);
+// 

Change in asterixdb[master]: [NO ISSUE][EXT] Fix JRecord setField for open fields

2018-12-10 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new change for review.

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

Change subject: [NO ISSUE][EXT] Fix JRecord setField for open fields
..

[NO ISSUE][EXT] Fix JRecord setField for open fields

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
setField method should be friendly to open fields.

Change-Id: I4ec185d62e78e8100215334bc656586268314797
---
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/keyword_detector/keyword_detector.1.ddl.sqlpp
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/base/JRecord.java
2 files changed, 2 insertions(+), 7 deletions(-)


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

diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/keyword_detector/keyword_detector.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/keyword_detector/keyword_detector.1.ddl.sqlpp
index 4402130..464ecb2 100644
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/keyword_detector/keyword_detector.1.ddl.sqlpp
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/keyword_detector/keyword_detector.1.ddl.sqlpp
@@ -35,8 +35,7 @@
 };
 
 create type DetectResultType as open{
-id:int64,
-sensitive: boolean
+id:int64
 };
 
 create dataset EmpDataset(InputRecordType) primary key id;
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/base/JRecord.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/base/JRecord.java
index 7fa9d0b..10c228d 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/base/JRecord.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/java/base/JRecord.java
@@ -99,11 +99,7 @@
 if (pos >= 0) {
 fields[pos] = fieldValue;
 } else {
-if (openFields.get(fieldName) != null) {
-openFields.put(fieldName, fieldValue);
-} else {
-throw new 
RuntimeDataException(ErrorCode.LIBRARY_JAVA_JOBJECTS_UNKNOWN_FIELD, fieldName);
-}
+openFields.put(fieldName, fieldValue);
 }
 }
 

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I4ec185d62e78e8100215334bc656586268314797
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 


Change in asterixdb-bad[master]: [NO ISSUE][BAD] Coordinated change for window functions (AST...

2018-12-05 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [NO ISSUE][BAD] Coordinated change for window functions 
(ASTERIXDB-2488)
..


Patch Set 1: Code-Review+2

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I2799ef800c67f76d2d6dda17c9e619c63b0bcf4a
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Dmitry Lychagin 
Gerrit-Reviewer: Ali Alsuliman 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Taewoo Kim 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: No


Change in asterixdb[master]: [NO ISSUE][ING] TweetParserFactory fix

2018-12-04 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged.

Change subject: [NO ISSUE][ING] TweetParserFactory fix
..


[NO ISSUE][ING] TweetParserFactory fix

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
Fix the TweetParserFactory so it returns the correct record class.

Change-Id: If330bf060423027e01787224d1b2e93fd4d33d71
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3050
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Contrib: Jenkins 
Integration-Tests: Jenkins 
Reviewed-by: Wail Alkowaileet 
---
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
1 file changed, 2 insertions(+), 2 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Jenkins: Verified; No violations found; ; Verified
  Wail Alkowaileet: Looks good to me, approved



diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
index 7844924..e5b6d01 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
@@ -54,8 +54,8 @@
 }
 
 @Override
-public Class getRecordClass() {
-return String.class;
+public Class getRecordClass() {
+return char[].class;
 }
 
 @Override

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

Gerrit-MessageType: merged
Gerrit-Change-Id: If330bf060423027e01787224d1b2e93fd4d33d71
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Wail Alkowaileet 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [NO ISSUE][ING] TweetParserFactory fix

2018-12-03 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new change for review.

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

Change subject: [NO ISSUE][ING] TweetParserFactory fix
..

[NO ISSUE][ING] TweetParserFactory fix

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
Fix the TweetParserFactory so it returns the correct record class.

Change-Id: If330bf060423027e01787224d1b2e93fd4d33d71
---
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
1 file changed, 2 insertions(+), 2 deletions(-)


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

diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
index 7844924..e5b6d01 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
@@ -54,8 +54,8 @@
 }
 
 @Override
-public Class getRecordClass() {
-return String.class;
+public Class getRecordClass() {
+return char[].class;
 }
 
 @Override

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: If330bf060423027e01787224d1b2e93fd4d33d71
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 


Change in asterixdb[master]: [NO ISSUE][ING] Tweets ingestion related refactoring

2018-11-22 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged.

Change subject: [NO ISSUE][ING] Tweets ingestion related refactoring
..


[NO ISSUE][ING] Tweets ingestion related refactoring

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
As the incoming Tweets are merely JSON records, the Twitter adapter
should be able to use JSON parser. For that purpose, we changed the
record record to be consistent with JSONDataParser which uses char[]
instead of String. Also, "JSON" should also be a valid way to specify
using JSON parser.

Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3032
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Integration-Tests: Jenkins 
Contrib: Jenkins 
Reviewed-by: Wail Alkowaileet 
---
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/SemiStructuredRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPushRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/TweetParser.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/JSONDataParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/provider/RecordConverterFactoryProvider.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataConstants.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/StreamRecordReaderProviderTest.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/TweetParserTest.java
13 files changed, 50 insertions(+), 32 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Jenkins: Verified; No violations found; ; Verified
  Wail Alkowaileet: Looks good to me, approved



diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
index aff00fc..65ecd8d 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
@@ -128,4 +128,10 @@
 builder.getChars(0, builder.length(), value, 0);
 this.size = builder.length();
 }
+
+public void set(String strValue) throws IOException {
+ensureCapacity(strValue.length());
+strValue.getChars(0, strValue.length(), value, 0);
+this.size = strValue.length();
+}
 }
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
index b466614..81ad5ba 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
@@ -57,7 +57,7 @@
 public HttpServerRecordReader(int port, String entryPoint, int queueSize, 
HttpServerConfig httpServerConfig)
 throws Exception {
 this.inputQ = new LinkedBlockingQueue<>(queueSize > 0 ? queueSize : 
DEFAULT_QUEUE_SIZE);
-this.record = new CharArrayRecord(0);
+this.record = new CharArrayRecord();
 webManager = new WebManager();
 webServer = new HttpServer(webManager.getBosses(), 
webManager.getWorkers(), port, httpServerConfig);
 webServer.addServlet(new HttpFeedServlet(webServer.ctx(),
@@ -77,7 +77,7 @@
 if (srecord == null) {
 return null;
 }
-record.set(srecord.toCharArray());
+record.set(srecord);
 return record;
 }
 
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/SemiStructuredRecordReader.java
 

Change in asterixdb[master]: [NO ISSUE][ING] Tweets ingestion related refactoring

2018-11-19 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [NO ISSUE][ING] Tweets ingestion related refactoring
..


Patch Set 5:

(5 comments)

Addressed all comments. Not sure why the IT failed at the http_json test cases. 
Local tests show everything is fine. Let's see how this one goes...

https://asterix-gerrit.ics.uci.edu/#/c/3032/5/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
File 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java:

PS5, Line 135: }
> add:
Done


https://asterix-gerrit.ics.uci.edu/#/c/3032/5/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java
File 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java:

PS5, Line 54: 0
> This is not needed anymore. You can make it to take the default buffer size
agree


https://asterix-gerrit.ics.uci.edu/#/c/3032/5/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPushRecordReader.java
File 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPushRecordReader.java:

PS5, Line 63: 0
> same
agree!


https://asterix-gerrit.ics.uci.edu/#/c/3032/5/asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/TweetParserTest.java
File 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/TweetParserTest.java:

PS5, Line 73: CharArrayRecord
> You can move this out of the loop.
Done


PS5, Line 99: CharArrayRecord
> This one as well
Done


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

Gerrit-MessageType: comment
Gerrit-Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [NO ISSUE][ING] Tweets ingestion related refactoring

2018-11-19 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][ING] Tweets ingestion related refactoring
..

[NO ISSUE][ING] Tweets ingestion related refactoring

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
As the incoming Tweets are merely JSON records, the Twitter adapter
should be able to use JSON parser. For that purpose, we changed the
record record to be consistent with JSONDataParser which uses char[]
instead of String. Also, "JSON" should also be a valid way to specify
using JSON parser.

Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
---
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/SemiStructuredRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPushRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/TweetParser.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/JSONDataParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/provider/RecordConverterFactoryProvider.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataConstants.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/StreamRecordReaderProviderTest.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/TweetParserTest.java
13 files changed, 50 insertions(+), 32 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
Gerrit-PatchSet: 6
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 


Change in asterixdb[master]: [NO ISSUE][ING] Tweets ingestion related refactoring

2018-11-18 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][ING] Tweets ingestion related refactoring
..

[NO ISSUE][ING] Tweets ingestion related refactoring

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
As the incoming Tweets are merely JSON records, the Twitter adapter
should be able to use JSON parser. For that purpose, we changed the
record record to be consistent with JSONDataParser which uses char[]
instead of String. Also, "JSON" should also be a valid way to specify
using JSON parser.

Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
---
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/SemiStructuredRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPushRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/TweetParser.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/JSONDataParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/provider/RecordConverterFactoryProvider.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataConstants.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/StreamRecordReaderProviderTest.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/TweetParserTest.java
13 files changed, 48 insertions(+), 31 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 


Change in asterixdb[master]: [NO ISSUE][ING] Tweets ingestion related refactoring

2018-11-18 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][ING] Tweets ingestion related refactoring
..

[NO ISSUE][ING] Tweets ingestion related refactoring

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
As the incoming Tweets are merely JSON records, the Twitter adapter
should be able to use JSON parser. For that purpose, we changed the
record record to be consistent with JSONDataParser which uses char[]
instead of String. Also, "JSON" should also be a valid way to specify
using JSON parser.

Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
---
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/SemiStructuredRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPushRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/TweetParser.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/JSONDataParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/provider/RecordConverterFactoryProvider.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataConstants.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/StreamRecordReaderProviderTest.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/TweetParserTest.java
13 files changed, 48 insertions(+), 31 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 


Change in asterixdb[master]: [NO ISSUE][ING] Tweets ingestion related refactoring

2018-11-16 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][ING] Tweets ingestion related refactoring
..

[NO ISSUE][ING] Tweets ingestion related refactoring

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
As the incoming Tweets are merely JSON records, the Twitter adapter
should be able to use JSON parser. For that purpose, we changed the
record record to be consistent with JSONDataParser which uses char[]
instead of String. Also, "JSON" should also be a valid way to specify
using JSON parser.

Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
---
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/CharArrayRecord.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/SemiStructuredRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPushRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/TweetParser.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/JSONDataParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataConstants.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/TweetParserTest.java
11 files changed, 50 insertions(+), 33 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 


Change in asterixdb[master]: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON ...

2018-11-15 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged.

Change subject: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON 
parser
..


[ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON parser

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The generic record used in current http-feed returns length of "-1"
which will cause the JSON parser to fail. For compatibility
consideration, we should use CharArrayRecord instead.

Change-Id: I719c98376583a3316dbc291696df65a97dd4b26e
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3026
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Integration-Tests: Jenkins 
Contrib: Jenkins 
Reviewed-by: Wail Alkowaileet 
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.3.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.4.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.5.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.6.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed_json/http_feed.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed_json/http_feed.2.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
10 files changed, 156 insertions(+), 3 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Jenkins: Verified; No violations found; ; Verified
  Wail Alkowaileet: Looks good to me, approved



diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.1.ddl.sqlpp
new file mode 100644
index 000..94a773c
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.1.ddl.sqlpp
@@ -0,0 +1,38 @@
+/*
+ * 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 test if exists;
+create dataverse test;
+use test;
+
+create type WorrisomeNotificationType as {
+dataverseName: string,
+channelName: string
+};
+create type WorrisomeNotificationStoreType as {
+id: uuid
+};
+create feed WorrisomeTweetsFeed with {
+  "adapter-name" : "http_adapter",
+  "addresses" : "asterix_nc1:10001",
+  "address-type" : "NC",
+  "type-name" : "WorrisomeNotificationType",
+  "format" : "json"
+};
+
+create dataset WorrisomeNotifications(WorrisomeNotificationStoreType) primary 
key id autogenerated;
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.2.update.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.2.update.sqlpp
new file mode 100644
index 000..cc180a3
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.2.update.sqlpp
@@ -0,0 +1,24 @@
+/*
+ * 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 

Change in asterixdb[master]: [NO ISSUE][ING] Tweets ingestion related refactoring

2018-11-15 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][ING] Tweets ingestion related refactoring
..

[NO ISSUE][ING] Tweets ingestion related refactoring

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
As the incoming Tweets are merely JSON records, the Twitter adapter
should be able to use JSON parser. For that purpose, we changed the
record record to be consistent with JSONDataParser which uses char[]
instead of String. Also, "JSON" should also be a valid way to specify
using JSON parser.

Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
---
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/SemiStructuredRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPushRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/TweetParser.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/JSONDataParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataConstants.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/TweetParserTest.java
9 files changed, 43 insertions(+), 29 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO ISSUE][RT] Replace HybridHashJoin with OptimizedHybridHa...

2018-11-15 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [NO ISSUE][RT] Replace HybridHashJoin with 
OptimizedHybridHashJoin
..


Patch Set 5: Code-Review+2

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I6ed612cc233af1b78d453c7b711077b82e721e82
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Murtadha Hubail 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: No


Change in asterixdb[master]: [NO ISSUE][RT] Replace HybridHashJoin with OptimizedHybridHa...

2018-11-15 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged.

Change subject: [NO ISSUE][RT] Replace HybridHashJoin with 
OptimizedHybridHashJoin
..


[NO ISSUE][RT] Replace HybridHashJoin with OptimizedHybridHashJoin

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The HybridHashJoinOperator is an old implenetation which haven't been
used in the runtime, and it lacks necessary documentation and memory
management. The OptimizedHybridHashJoinOperatorDescriptor serves the
same purpose. We should use this instead and avoid maintaining the old
one.

Change-Id: I6ed612cc233af1b78d453c7b711077b82e721e82
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3023
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Integration-Tests: Jenkins 
Contrib: Jenkins 
Reviewed-by: Xikui Wang 
---
M 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/HybridHashJoinPOperator.java
D 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/HybridHashJoinOperatorDescriptor.java
D 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOptimizedHybridHashJoinTest.java
M 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOrderHashJoinTest.java
4 files changed, 247 insertions(+), 1,164 deletions(-)

Approvals:
  Jenkins: Verified; No violations found; ; Verified
  Xikui Wang: Looks good to me, approved



diff --git 
a/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/HybridHashJoinPOperator.java
 
b/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/HybridHashJoinPOperator.java
index 45ec44b..091cc44 100644
--- 
a/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/HybridHashJoinPOperator.java
+++ 
b/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/HybridHashJoinPOperator.java
@@ -45,7 +45,6 @@
 import org.apache.hyracks.api.dataflow.IOperatorDescriptor;
 import org.apache.hyracks.api.dataflow.value.IBinaryComparator;
 import org.apache.hyracks.api.dataflow.value.IBinaryComparatorFactory;
-import org.apache.hyracks.api.dataflow.value.IBinaryHashFunctionFactory;
 import org.apache.hyracks.api.dataflow.value.IBinaryHashFunctionFamily;
 import org.apache.hyracks.api.dataflow.value.IMissingWriterFactory;
 import org.apache.hyracks.api.dataflow.value.IPredicateEvaluatorFactory;
@@ -55,7 +54,6 @@
 import org.apache.hyracks.api.dataflow.value.RecordDescriptor;
 import org.apache.hyracks.api.exceptions.HyracksDataException;
 import org.apache.hyracks.api.job.IOperatorDescriptorRegistry;
-import org.apache.hyracks.dataflow.std.join.HybridHashJoinOperatorDescriptor;
 import 
org.apache.hyracks.dataflow.std.join.OptimizedHybridHashJoinOperatorDescriptor;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -65,7 +63,6 @@
 // The maximum number of in-memory frames that this hash join can use.
 private final int memSizeInFrames;
 private final int maxInputBuildSizeInFrames;
-private final int aveRecordsPerFrame;
 private final double fudgeFactor;
 
 private static final Logger LOGGER = LogManager.getLogger();
@@ -76,7 +73,6 @@
 super(kind, partitioningType, sideLeftOfEqualities, 
sideRightOfEqualities);
 this.memSizeInFrames = memSizeInFrames;
 this.maxInputBuildSizeInFrames = maxInputSizeInFrames;
-this.aveRecordsPerFrame = aveRecordsPerFrame;
 this.fudgeFactor = fudgeFactor;
 if (LOGGER.isTraceEnabled()) {
 LOGGER.trace("HybridHashJoinPOperator constructed with: JoinKind=" 
+ kind + ", JoinPartitioningType="
@@ -117,8 +113,6 @@
 int[] keysLeft = JobGenHelper.variablesToFieldIndexes(keysLeftBranch, 
inputSchemas[0]);
 int[] keysRight = 
JobGenHelper.variablesToFieldIndexes(keysRightBranch, inputSchemas[1]);
 IVariableTypeEnvironment env = context.getTypeEnvironment(op);
-IBinaryHashFunctionFactory[] hashFunFactories =
-
JobGenHelper.variablesToBinaryHashFunctionFactories(keysLeftBranch, env, 
context);
 IBinaryHashFunctionFamily[] hashFunFamilies =
 
JobGenHelper.variablesToBinaryHashFunctionFamilies(keysLeftBranch, env, 
context);
 IBinaryComparatorFactory[] comparatorFactories = new 
IBinaryComparatorFactory[keysLeft.length];
@@ -138,21 +132,9 @@
 
JobGenHelper.mkRecordDescriptor(context.getTypeEnvironment(op), 
propagatedSchema, context);
 IOperatorDescriptorRegistry spec = 

Change in asterixdb[master]: [NO ISSUE][RT] Replace HybridHashJoin with OptimizedHybridHa...

2018-11-15 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [NO ISSUE][RT] Replace HybridHashJoin with 
OptimizedHybridHashJoin
..


Patch Set 5:

forward +2 from Dymitry

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I6ed612cc233af1b78d453c7b711077b82e721e82
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Murtadha Hubail 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: No


Change in asterixdb[master]: [NO ISSUE][ING] Tweets ingestion related refactoring

2018-11-15 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new change for review.

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

Change subject: [NO ISSUE][ING] Tweets ingestion related refactoring
..

[NO ISSUE][ING] Tweets ingestion related refactoring

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
As the incoming Tweets are merely JSON records, the Twitter adapter
should be able to use JSON parser. For that purpose, we changed the
record record to be consistent with JSONDataParser which uses char[]
instead of String. Also, "JSON" should also be a valid way to specify
using JSON parser.

Change-Id: Id6d656a4af974499ef0df2e389152ca205c2d078
---
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/SemiStructuredRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPushRecordReader.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/TweetParser.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/JSONDataParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/factory/TweetParserFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataConstants.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/parser/test/TweetParserTest.java
9 files changed, 42 insertions(+), 27 deletions(-)


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

diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/SemiStructuredRecordReader.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/SemiStructuredRecordReader.java
index cc4b7f9..674dd52 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/SemiStructuredRecordReader.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/SemiStructuredRecordReader.java
@@ -41,7 +41,8 @@
 private int recordNumber = 0;
 private static final List recordReaderFormats =
 
Collections.unmodifiableList(Arrays.asList(ExternalDataConstants.FORMAT_ADM,
-ExternalDataConstants.FORMAT_JSON, 
ExternalDataConstants.FORMAT_SEMISTRUCTURED));
+ExternalDataConstants.FORMAT_JSON, 
ExternalDataConstants.FORMAT_JSON_CAP,
+ExternalDataConstants.FORMAT_SEMISTRUCTURED));
 private static final String REQUIRED_CONFIGS = "";
 
 @Override
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java
index 2cf5396..f5404f6 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterPullRecordReader.java
@@ -24,6 +24,7 @@
 import org.apache.asterix.external.api.IRawRecord;
 import org.apache.asterix.external.api.IRecordReader;
 import org.apache.asterix.external.dataflow.AbstractFeedDataFlowController;
+import org.apache.asterix.external.input.record.CharArrayRecord;
 import org.apache.asterix.external.input.record.GenericRecord;
 import org.apache.asterix.external.util.FeedLogManager;
 import org.apache.hyracks.api.exceptions.HyracksDataException;
@@ -35,7 +36,7 @@
 import twitter4j.TwitterException;
 import twitter4j.TwitterObjectFactory;
 
-public class TwitterPullRecordReader implements IRecordReader {
+public class TwitterPullRecordReader implements IRecordReader {
 
 private Query query;
 private Twitter twitter;
@@ -43,7 +44,7 @@
 private QueryResult result;
 private int nextTweetIndex = 0;
 private long lastTweetIdReceived = 0;
-private GenericRecord record;
+private CharArrayRecord record;
 private boolean stopped = false;
 
 public TwitterPullRecordReader(Twitter twitter, String keywords, int 
requestInterval) {
@@ -51,7 +52,7 @@
 this.requestInterval = requestInterval;
 this.query = new Query(keywords);
 this.query.setCount(100);
-this.record = new GenericRecord<>();
+this.record = new CharArrayRecord(0);
 }

Change in asterixdb[master]: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON ...

2018-11-15 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON 
parser
..


Patch Set 4:

(2 comments)

https://asterix-gerrit.ics.uci.edu/#/c/3026/4/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.3.post.http
File 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.3.post.http:

PS4, Line 20: body
> It would good if we can have more than one record in a request. Just to mak
Done


https://asterix-gerrit.ics.uci.edu/#/c/3026/4/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
File 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java:

PS4, Line 60: CharArrayRecord
> Maybe initializing it with inititalCapacity = 0?
Done


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I719c98376583a3316dbc291696df65a97dd4b26e
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON ...

2018-11-15 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON 
parser
..

[ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON parser

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The generic record used in current http-feed returns length of "-1"
which will cause the JSON parser to fail. For compatibility
consideration, we should use CharArrayRecord instead.

Change-Id: I719c98376583a3316dbc291696df65a97dd4b26e
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.3.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.4.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.5.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.6.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed_json/http_feed.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed_json/http_feed.2.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
10 files changed, 156 insertions(+), 3 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I719c98376583a3316dbc291696df65a97dd4b26e
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 


Change in asterixdb[master]: [ASTERIXDB-2086][RT] Use LinearProbeHashTable for InMemoryHa...

2018-11-14 Thread Xikui Wang (Code Review)
Xikui Wang has abandoned this change.

Change subject: [ASTERIXDB-2086][RT] Use LinearProbeHashTable for 
InMemoryHashJoin
..


Abandoned

Conducted experiments on a 3 nodes cluster (2NC 1CC) with TPCH benchmark twice 
the size of the aggregated memory. There is no significant benefit of using 
linear probe hash table. :(

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

Gerrit-MessageType: abandon
Gerrit-Change-Id: I61e11d8223902cc34e81738660c1b3ed0ab86318
Gerrit-PatchSet: 11
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON ...

2018-11-13 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON 
parser
..

[ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON parser

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The generic record used in current http-feed returns length of "-1"
which will cause the JSON parser to fail. For compatibility
consideration, we should use CharArrayRecord instead.

Change-Id: I719c98376583a3316dbc291696df65a97dd4b26e
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.3.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.4.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.5.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.6.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed_json/http_feed.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed_json/http_feed.2.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
10 files changed, 153 insertions(+), 3 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I719c98376583a3316dbc291696df65a97dd4b26e
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON ...

2018-11-13 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON 
parser
..

[ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON parser

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The generic record used in current http-feed returns length of "-1"
which will cause the JSON parser to fail. For compatibility
consideration, we should use CharArrayRecord instead.

Change-Id: I719c98376583a3316dbc291696df65a97dd4b26e
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.3.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.4.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.5.pollquery.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.6.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed_json/http_feed.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed_json/http_feed.2.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
10 files changed, 154 insertions(+), 3 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I719c98376583a3316dbc291696df65a97dd4b26e
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON ...

2018-11-12 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new patch set (#2).

Change subject: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON 
parser
..

[ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON parser

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The generic record used in current http-feed returns length of "-1"
which will cause the JSON parser to fail. For compatibility
consideration, we should use CharArrayRecord instead.

Change-Id: I719c98376583a3316dbc291696df65a97dd4b26e
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.3.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.4.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.5.pollquery.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.6.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed_json/http_feed.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed_json/http_feed.2.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
10 files changed, 154 insertions(+), 3 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I719c98376583a3316dbc291696df65a97dd4b26e
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON ...

2018-11-12 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new change for review.

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

Change subject: [ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON 
parser
..

[ASTERIXDB-2480][ING] Fix http-feed compatibility with JSON parser

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The generic record used in current http-feed returns length of "-1"
which will cause the JSON parser to fail. For compatibility
consideration, we should use CharArrayRecord instead.

Change-Id: I719c98376583a3316dbc291696df65a97dd4b26e
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.3.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.4.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.5.pollquery.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.6.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed_json/http_feed.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed_json/http_feed.2.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
10 files changed, 154 insertions(+), 2 deletions(-)


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

diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.1.ddl.sqlpp
new file mode 100644
index 000..246f7e1
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.1.ddl.sqlpp
@@ -0,0 +1,35 @@
+/*
+ * 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 test if exists;
+create dataverse test;
+use test;
+
+create type WorrisomeNotificationType as {
+   dataverseName: string,
+   channelName: string
+};
+create feed WorrisomeTweetsFeed with {
+  "adapter-name" : "http_adapter",
+  "addresses" : "asterix_nc1:10001",
+  "address-type" : "NC",
+  "type-name" : "WorrisomeNotificationType",
+  "format" : "json"
+};
+
+create dataset WorrisomeNotifications(WorrisomeNotificationType) primary key 
dataverseName;
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.2.update.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.2.update.sqlpp
new file mode 100644
index 000..cc180a3
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed_json/http_feed_json.2.update.sqlpp
@@ -0,0 +1,24 @@
+/*
+ * 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 test;
+set `wait-for-completion-feed` "false";
+
+connect feed 

Change in asterixdb-bad[master]: [NO ISSUE][BAD] BAD clean-ups

2018-11-12 Thread Xikui Wang (Code Review)
Xikui Wang has abandoned this change.

Change subject: [NO ISSUE][BAD] BAD clean-ups
..


Abandoned

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

Gerrit-MessageType: abandon
Gerrit-Change-Id: I76c5d201a95f71a8f9bfd2461620145c0c27a08d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: James Fang 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 


Change in asterixdb[master]: [ASTERIXDB-2086][RT] Use LinearProbeHashTable for InMemoryHa...

2018-11-10 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [ASTERIXDB-2086][RT] Use LinearProbeHashTable for 
InMemoryHashJoin
..

[ASTERIXDB-2086][RT] Use LinearProbeHashTable for InMemoryHashJoin

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The current SerializableHashTable used in InMemoryHashJoin is too
complicated and inefficient for in-memory-join. As the tuple number in
in memory join is fixed, we don't need to consider spill or overflow
issues. Also, SerializableHashTable will cause extra memory lookup (2
per each entry) and have larger probability to have cache misses.
LinearHashTable only needs 1 lookup per each entry and have better
chance to be cached.

Change-Id: I61e11d8223902cc34e81738660c1b3ed0ab86318
---
M 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/HybridHashJoinPOperator.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/exceptions/ErrorCode.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/resources/errormsg/en.properties
D 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/HybridHashJoinOperatorDescriptor.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/InMemoryHashJoin.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/OptimizedHybridHashJoin.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/OptimizedHybridHashJoinOperatorDescriptor.java
A 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/IntSerDeBuffer.java
A 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/LinearProbeHashTable.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/SimpleSerializableHashTable.java
A 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/test/java/org/apache/hyracks/dataflow/std/structures/LinearProbeHashTableTest.java
D 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOptimizedHybridHashJoinTest.java
M 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOrderHashJoinTest.java
13 files changed, 742 insertions(+), 1,288 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/93/1993/11
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1993
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I61e11d8223902cc34e81738660c1b3ed0ab86318
Gerrit-PatchSet: 11
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2086][RT] Use LinearProbeHashTable for InMemoryHa...

2018-11-10 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [ASTERIXDB-2086][RT] Use LinearProbeHashTable for 
InMemoryHashJoin
..

[ASTERIXDB-2086][RT] Use LinearProbeHashTable for InMemoryHashJoin

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The current SerializableHashTable used in InMemoryHashJoin is too
complicated and inefficient for in-memory-join. As the tuple number in
in memory join is fixed, we don't need to consider spill or overflow
issues. Also, SerializableHashTable will cause extra memory lookup (2
per each entry) and have larger probability to have cache misses.
LinearHashTable only needs 1 lookup per each entry and have better
chance to be cached.

Change-Id: I61e11d8223902cc34e81738660c1b3ed0ab86318
---
M 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/HybridHashJoinPOperator.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/exceptions/ErrorCode.java
M 
hyracks-fullstack/hyracks/hyracks-api/src/main/resources/errormsg/en.properties
D 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/HybridHashJoinOperatorDescriptor.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/InMemoryHashJoin.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/OptimizedHybridHashJoin.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/OptimizedHybridHashJoinOperatorDescriptor.java
A 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/IntSerDeBuffer.java
A 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/LinearProbeHashTable.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/SimpleSerializableHashTable.java
A 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/test/java/org/apache/hyracks/dataflow/std/structures/LinearProbeHashTableTest.java
D 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOptimizedHybridHashJoinTest.java
M 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOrderHashJoinTest.java
13 files changed, 742 insertions(+), 1,288 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/93/1993/10
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1993
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I61e11d8223902cc34e81738660c1b3ed0ab86318
Gerrit-PatchSet: 10
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2086][RT] Use LinearProbeHashTable for InMemoryHa...

2018-11-09 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [ASTERIXDB-2086][RT] Use LinearProbeHashTable for 
InMemoryHashJoin
..

[ASTERIXDB-2086][RT] Use LinearProbeHashTable for InMemoryHashJoin

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The current SerializableHashTable used in InMemoryHashJoin is too
complicated and inefficient for in-memory-join. As the tuple number in
in memory join is fixed, we don't need to consider spill or overflow
issues. Also, SerializableHashTable will cause extra memory lookup (2
per each entry) and have larger probability to have cache misses.
LinearHashTable only needs 1 lookup per each entry and have better
chance to be cached.

Change-Id: I61e11d8223902cc34e81738660c1b3ed0ab86318
---
M 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/HybridHashJoinPOperator.java
D 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/HybridHashJoinOperatorDescriptor.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/InMemoryHashJoin.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/InMemoryHashJoinOperatorDescriptor.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/OptimizedHybridHashJoin.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/OptimizedHybridHashJoinOperatorDescriptor.java
A 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/IntSerDeBuffer.java
A 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/LinearProbeHashTable.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/SimpleSerializableHashTable.java
A 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/test/java/org/apache/hyracks/dataflow/std/structures/LinearProbeHashTableTest.java
D 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOptimizedHybridHashJoinTest.java
M 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOrderHashJoinTest.java
12 files changed, 749 insertions(+), 1,341 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/93/1993/9
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1993
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I61e11d8223902cc34e81738660c1b3ed0ab86318
Gerrit-PatchSet: 9
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [ASTERIXDB-2086][RT] Use LinearProbeHashTable for InMemoryHa...

2018-11-09 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [ASTERIXDB-2086][RT] Use LinearProbeHashTable for 
InMemoryHashJoin
..

[ASTERIXDB-2086][RT] Use LinearProbeHashTable for InMemoryHashJoin

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The current SerializableHashTable used in InMemoryHashJoin is too
complicated and inefficient for in-memory-join. As the tuple number in
in memory join is fixed, we don't need to consider spill or overflow
issues. Also, SerializableHashTable will cause extra memory lookup (2
per each entry) and have larger probability to have cache misses.
LinearHashTable only needs 1 lookup per each entry and have better
chance to be cached.

Change-Id: I61e11d8223902cc34e81738660c1b3ed0ab86318
---
M 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/HybridHashJoinPOperator.java
D 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/HybridHashJoinOperatorDescriptor.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/InMemoryHashJoin.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/InMemoryHashJoinOperatorDescriptor.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/OptimizedHybridHashJoin.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/OptimizedHybridHashJoinOperatorDescriptor.java
A 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/IntSerDeBuffer.java
A 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/LinearProbeHashTable.java
M 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/structures/SimpleSerializableHashTable.java
A 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/test/java/org/apache/hyracks/dataflow/std/structures/LinearProbeHashTableTest.java
D 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOptimizedHybridHashJoinTest.java
M 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOrderHashJoinTest.java
12 files changed, 749 insertions(+), 1,341 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/93/1993/8
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1993
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I61e11d8223902cc34e81738660c1b3ed0ab86318
Gerrit-PatchSet: 8
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Taewoo Kim 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [NO ISSUE][RT] Replace HybridHashJoin with OptimizedHybridHa...

2018-11-09 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][RT] Replace HybridHashJoin with 
OptimizedHybridHashJoin
..

[NO ISSUE][RT] Replace HybridHashJoin with OptimizedHybridHashJoin

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The HybridHashJoinOperator is an old implenetation which haven't been
used in the runtime, and it lacks necessary documentation and memory
management. The OptimizedHybridHashJoinOperatorDescriptor serves the
same purpose. We should use this instead and avoid maintaining the old
one.

Change-Id: I6ed612cc233af1b78d453c7b711077b82e721e82
---
M 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/HybridHashJoinPOperator.java
D 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/HybridHashJoinOperatorDescriptor.java
D 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOptimizedHybridHashJoinTest.java
M 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOrderHashJoinTest.java
4 files changed, 247 insertions(+), 1,164 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6ed612cc233af1b78d453c7b711077b82e721e82
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO ISSUE][RT] Replace HybridHashJoin with OptimizedHybridHa...

2018-11-09 Thread Xikui Wang (Code Review)
Hello Jenkins,

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

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

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

Change subject: [NO ISSUE][RT] Replace HybridHashJoin with 
OptimizedHybridHashJoin
..

[NO ISSUE][RT] Replace HybridHashJoin with OptimizedHybridHashJoin

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The HybridHashJoinOperator is an old implenetation which haven't been
used in the runtime, and it lacks necessary documentation and memory
management. The OptimizedHybridHashJoinOperatorDescriptor serves the
same purpose. We should use this instead and avoid maintaining the old
one.

Change-Id: I6ed612cc233af1b78d453c7b711077b82e721e82
---
M 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/HybridHashJoinPOperator.java
D 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/HybridHashJoinOperatorDescriptor.java
D 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOptimizedHybridHashJoinTest.java
M 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOrderHashJoinTest.java
4 files changed, 243 insertions(+), 1,132 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6ed612cc233af1b78d453c7b711077b82e721e82
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO ISSUE][RT] Replace HybridHashJoin with OptimizedHybridHa...

2018-11-09 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new patch set (#2).

Change subject: [NO ISSUE][RT] Replace HybridHashJoin with 
OptimizedHybridHashJoin
..

[NO ISSUE][RT] Replace HybridHashJoin with OptimizedHybridHashJoin

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The HybridHashJoinOperator is an old implenetation which haven't been
used in the runtime, and it lacks necessary documentation and memory
management. The OptimizedHybridHashJoinOperatorDescriptor serves the
same purpose. We should use this instead and avoid maintaining the old
one.

Change-Id: I6ed612cc233af1b78d453c7b711077b82e721e82
---
M 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/physical/HybridHashJoinPOperator.java
D 
hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/join/HybridHashJoinOperatorDescriptor.java
D 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOptimizedHybridHashJoinTest.java
M 
hyracks-fullstack/hyracks/hyracks-examples/hyracks-integration-tests/src/test/java/org/apache/hyracks/tests/integration/TPCHCustomerOrderHashJoinTest.java
4 files changed, 245 insertions(+), 1,134 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6ed612cc233af1b78d453c7b711077b82e721e82
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Jenkins 


Change in asterixdb-bad[master]: [NO ISSUE][BAD] BAD clean-ups

2018-11-06 Thread Xikui Wang (Code Review)
Hello Jenkins,

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

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

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

Change subject: [NO ISSUE][BAD] BAD clean-ups
..

[NO ISSUE][BAD] BAD clean-ups

Details:
1. Cleaned up dependencies which are not used.
2. Changed logging to use log4j.
3. Refactored BADExecutionTest to be consistent with master.
4. Cleaned up test cases to make sure every test case is independent.
5. Unused file removed.

Change-Id: I76c5d201a95f71a8f9bfd2461620145c0c27a08d
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java
D asterix-bad/src/main/resources/asterix-build-configuration.xml
M asterix-bad/src/main/resources/cc.conf
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADExecutionTest.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADOptimizerTest.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java
D asterix-bad/src/test/resources/conf/cluster.xml
D asterix-bad/src/test/resources/conf/hyracks-deployment.properties
A asterix-bad/src/test/resources/conf/log4j2-bad.xml
D asterix-bad/src/test/resources/conf/test.properties
A asterix-bad/src/test/resources/runtimets/only_bad.xml
M 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_function/drop_function.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_function_dataverse/drop_function_dataverse.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_index/drop_index.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_results/drop_results.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_subscriptions/drop_subscriptions.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/create_procedure_check_metadata/create_procedure_check_metadata.3.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_drop_dataset/delete_procedure_drop_dataset.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_drop_function/delete_procedure_drop_function.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_drop_index/delete_procedure_drop_index.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/insert_procedure_drop_dataset/insert_procedure_drop_dataset.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/insert_procedure_drop_dataverse/insert_procedure_drop_dataverse.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_drop_dataset/query_procedure_drop_dataset.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_drop_function/query_procedure_drop_function.1.ddl.sqlpp
R asterix-bad/src/test/resources/runtimets/testsuite_bad.xml
29 files changed, 251 insertions(+), 405 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I76c5d201a95f71a8f9bfd2461620145c0c27a08d
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Jenkins 


Change in asterixdb-bad[master]: [NO ISSUE][BAD] BAD clean-ups

2018-11-06 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new change for review.

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

Change subject: [NO ISSUE][BAD] BAD clean-ups
..

[NO ISSUE][BAD] BAD clean-ups

Details:
1. Cleaned up dependencies which are not used.
2. Changed logging to use log4j.
3. Refactored BADExecutionTest to be consistent with master.
4. Cleaned up test cases to make sure every test case is independent.
5. Unused file removed.

Change-Id: I76c5d201a95f71a8f9bfd2461620145c0c27a08d
---
M asterix-bad/pom.xml
M asterix-bad/src/main/java/org/apache/asterix/bad/BADJobService.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/metadata/DeployedJobSpecEventListener.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/recovery/BADGlobalRecoveryManager.java
M 
asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java
D asterix-bad/src/main/resources/asterix-build-configuration.xml
M asterix-bad/src/main/resources/cc.conf
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADExecutionTest.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADOptimizerTest.java
M asterix-bad/src/test/java/org/apache/asterix/bad/test/BADRecoveryTest.java
D asterix-bad/src/test/resources/conf/cluster.xml
D asterix-bad/src/test/resources/conf/hyracks-deployment.properties
A asterix-bad/src/test/resources/conf/log4j2-bad.xml
D asterix-bad/src/test/resources/conf/test.properties
A asterix-bad/src/test/resources/runtimets/only_bad.xml
M 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_function/drop_function.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_function_dataverse/drop_function_dataverse.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_index/drop_index.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_results/drop_results.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/channel/drop_subscriptions/drop_subscriptions.1.ddl.sqlpp
A 
asterix-bad/src/test/resources/runtimets/queries/procedure/create_procedure_check_metadata/create_procedure_check_metadata.3.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_drop_dataset/delete_procedure_drop_dataset.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_drop_function/delete_procedure_drop_function.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/delete_procedure_drop_index/delete_procedure_drop_index.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/insert_procedure_drop_dataset/insert_procedure_drop_dataset.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/insert_procedure_drop_dataverse/insert_procedure_drop_dataverse.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_drop_dataset/query_procedure_drop_dataset.1.ddl.sqlpp
M 
asterix-bad/src/test/resources/runtimets/queries/procedure/query_procedure_drop_function/query_procedure_drop_function.1.ddl.sqlpp
R asterix-bad/src/test/resources/runtimets/testsuite_bad.xml
29 files changed, 251 insertions(+), 405 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-bad 
refs/changes/22/3022/1

diff --git a/asterix-bad/pom.xml b/asterix-bad/pom.xml
index d6c0602..6396b36 100644
--- a/asterix-bad/pom.xml
+++ b/asterix-bad/pom.xml
@@ -28,7 +28,7 @@
 0.9.5-SNAPSHOT
 0.3.5-SNAPSHOT
 true
-
${root.dir}/../../asterix-app/src/test/resources/log4j2-test.xml
+
${root.dir}/src/test/resources/conf/log4j2-bad.xml
 
 
 
@@ -153,25 +153,16 @@
   2.10
   
 
-  
org.apache.hadoop:hadoop-minicluster
   
org.apache.asterix:asterix-fuzzyjoin
+  
org.apache.hyracks:hyracks-storage-am-lsm-btree-test
+  
org.apache.asterix:asterix-common:test-jar
 
-
-  
org.apache.asterix:asterix-common
-
   
 
   
 
   
   
-
-  org.apache.hadoop
-  hadoop-minicluster
-  ${hadoop.version}
-  jar
-  test
-
 
   org.apache.asterix
   asterix-om
@@ -225,13 +216,6 @@
   test
 
 
-  org.apache.asterix
-  asterix-common
-  ${asterix.version}
-  test-jar
-  test
-
-
   org.apache.hyracks
   algebricks-common
 
@@ -248,10 +232,6 @@
   org.apache.asterix
   asterix-lang-common
   ${asterix.version}
-
-
-  log4j
-  log4j
 
 
   org.apache.commons
@@ -307,7 +287,22 @@
 
   commons-io
   commons-io
-  2.6
+
+
+  org.apache.hyracks
+  hyracks-api
+
+
+  org.apache.logging.log4j
+  log4j-api
+
+
+
+  org.apache.hyracks
+  hyracks-storage-am-lsm-btree-test
+  ${hyracks.version}
+  test-jar
+  

Change in asterixdb[master]: [ASTERIXDB-2467][STO] Fix locking protocol with bad tuples

2018-10-23 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [ASTERIXDB-2467][STO] Fix locking protocol with bad tuples
..


Patch Set 2: Code-Review+1

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I86baa1f21ef7390777c8e2b0ce226095528e7f18
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Luo Chen 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Ian Maxon 
Gerrit-Reviewer: Murtadha Hubail 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: No


Change in asterixdb[master]: [ASTERIXDB-2264][ING] Introduce Http Feed Adapter

2018-10-11 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged.

Change subject: [ASTERIXDB-2264][ING] Introduce Http Feed Adapter
..


[ASTERIXDB-2264][ING] Introduce Http Feed Adapter

- user-model changes: add http_adapter for feed.
- storage format changes: no
- interface changes: no

Details:
1. Added http feed. User may use following syntax to create a http feed:
create feed TweetFeed with {
"adapter-name" : "http_adapter",
"addresses" : "asterix_nc2:10002,asterix_nc1:10001",
"address-type" : "NC",
"type-name" : "TweetMessageType",
"format" : "adm"
};
2. Refactored insert-feed test case to avoid waiting for 10s.
3. Refactored some constants in feeds.

Change-Id: I3c197a3df557ecc01f07f0907688c4ea81379e40
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2994
Reviewed-by: Murtadha Hubail 
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Contrib: Jenkins 
Integration-Tests: Jenkins 
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.3.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.4.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.5.sleep.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.6.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.7.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.8.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed/http_feed.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed/http_feed.2.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed/http_feed.3.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M asterixdb/asterix-external-data/pom.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/api/IExternalDataSourceFactory.java
A 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
A 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/StreamRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/stream/factory/SocketServerInputStreamFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/provider/DatasourceFactoryProvider.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataConstants.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/FeedUtils.java
M 
asterixdb/asterix-external-data/src/main/resources/META-INF/services/org.apache.asterix.external.api.IRecordReaderFactory
23 files changed, 593 insertions(+), 106 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Jenkins: Verified; No violations found; ; Verified
  Murtadha Hubail: Looks good to me, approved



diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.1.ddl.sqlpp
new file mode 100644
index 000..b6e5aa3
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.1.ddl.sqlpp
@@ -0,0 +1,35 @@
+/*
+ * 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 experiments if exists;
+create dataverse experiments;
+use 

Change in asterixdb[master]: [ASTERIXDB-2264][ING] Introduce Http Feed Adapter

2018-10-11 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [ASTERIXDB-2264][ING] Introduce Http Feed Adapter
..

[ASTERIXDB-2264][ING] Introduce Http Feed Adapter

- user-model changes: add http_adapter for feed.
- storage format changes: no
- interface changes: no

Details:
1. Added http feed. User may use following syntax to create a http feed:
create feed TweetFeed with {
"adapter-name" : "http_adapter",
"addresses" : "asterix_nc2:10002,asterix_nc1:10001",
"address-type" : "NC",
"type-name" : "TweetMessageType",
"format" : "adm"
};
2. Refactored insert-feed test case to avoid waiting for 10s.
3. Refactored some constants in feeds.

Change-Id: I3c197a3df557ecc01f07f0907688c4ea81379e40
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.3.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.4.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.5.sleep.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.6.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.7.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.8.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed/http_feed.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed/http_feed.2.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed/http_feed.3.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M asterixdb/asterix-external-data/pom.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/api/IExternalDataSourceFactory.java
A 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
A 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/StreamRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/stream/factory/SocketServerInputStreamFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/provider/DatasourceFactoryProvider.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataConstants.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/FeedUtils.java
M 
asterixdb/asterix-external-data/src/main/resources/META-INF/services/org.apache.asterix.external.api.IRecordReaderFactory
23 files changed, 593 insertions(+), 106 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I3c197a3df557ecc01f07f0907688c4ea81379e40
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Murtadha Hubail 


Change in asterixdb[master]: [ASTERIXDB-2264][ING] Introduce Http Feed Adapter

2018-10-10 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [ASTERIXDB-2264][ING] Introduce Http Feed Adapter
..

[ASTERIXDB-2264][ING] Introduce Http Feed Adapter

- user-model changes: add http_adapter for feed.
- storage format changes: no
- interface changes: no

Details:
1. Added http feed. User may use following syntax to create a http feed:
create feed TweetFeed with {
"adapter-name" : "http_adapter",
"addresses" : "asterix_nc2:10002,asterix_nc1:10001",
"address-type" : "NC",
"type-name" : "TweetMessageType",
"format" : "adm"
};
2. Refactored insert-feed test case to avoid waiting for 10s.
3. Refactored some constants in feeds.

Change-Id: I3c197a3df557ecc01f07f0907688c4ea81379e40
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.3.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.4.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.5.sleep.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.6.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.7.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.8.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed/http_feed.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed/http_feed.2.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed/http_feed.3.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M asterixdb/asterix-external-data/pom.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/api/IExternalDataSourceFactory.java
A 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
A 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/StreamRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/stream/factory/SocketServerInputStreamFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/provider/DatasourceFactoryProvider.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataConstants.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/FeedUtils.java
M 
asterixdb/asterix-external-data/src/main/resources/META-INF/services/org.apache.asterix.external.api.IRecordReaderFactory
23 files changed, 591 insertions(+), 106 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I3c197a3df557ecc01f07f0907688c4ea81379e40
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [ASTERIXDB-2264][ING] Introduce Http Feed Adapter

2018-10-09 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new change for review.

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

Change subject: [ASTERIXDB-2264][ING] Introduce Http Feed Adapter
..

[ASTERIXDB-2264][ING] Introduce Http Feed Adapter

- user-model changes: add http_adapter for feed.
- storage format changes: no
- interface changes: no

Details:
1. Added http feed. User may use following syntax to create a http feed:
create feed TweetFeed with {
"adapter-name" : "http_adapter",
"addresses" : "asterix_nc2:10002,asterix_nc1:10001",
"address-type" : "NC",
"type-name" : "TweetMessageType",
"format" : "adm"
};
2. Refactored insert-feed test case to avoid waiting for 10s.
3. Refactored some constants in feeds.

Change-Id: I3c197a3df557ecc01f07f0907688c4ea81379e40
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.3.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.4.post.http
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.5.sleep.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.6.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.7.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.8.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed/http_feed.1.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed/http_feed.2.adm
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/http_feed/http_feed.3.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M asterixdb/asterix-external-data/pom.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/api/IExternalDataSourceFactory.java
A 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReader.java
A 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/http/HttpServerRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/stream/StreamRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/record/reader/twitter/TwitterRecordReaderFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/input/stream/factory/SocketServerInputStreamFactory.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/provider/DatasourceFactoryProvider.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataConstants.java
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/FeedUtils.java
M 
asterixdb/asterix-external-data/src/main/resources/META-INF/services/org.apache.asterix.external.api.IRecordReaderFactory
23 files changed, 587 insertions(+), 106 deletions(-)


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

diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.1.ddl.sqlpp
new file mode 100644
index 000..b6e5aa3
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.1.ddl.sqlpp
@@ -0,0 +1,35 @@
+/*
+ * 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 experiments if exists;
+create dataverse experiments;
+use experiments;
+
+create type TweetMessageType as open {
+id : string
+};
+
+create dataset Tweets(TweetMessageType) primary key id;
+
+create feed TweetFeed with {
+  "adapter-name" : 

Change in asterixdb[master]: [ASTERIXDB-2264][ING] Introduce Http Feed Adapter

2018-10-09 Thread Xikui Wang (Code Review)
Xikui Wang has abandoned this change.

Change subject: [ASTERIXDB-2264][ING] Introduce Http Feed Adapter
..


Abandoned

Replace this with another change.

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

Gerrit-MessageType: abandon
Gerrit-Change-Id: I9c03bddd0df59b69a1f2d6e989b8ee93cf50a6c0
Gerrit-PatchSet: 33
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Murtadha Hubail 


Change in asterixdb[master]: [ASTERIXDB-2264][ING] Introduce Http Feed Adapter

2018-10-05 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [ASTERIXDB-2264][ING] Introduce Http Feed Adapter
..

[ASTERIXDB-2264][ING] Introduce Http Feed Adapter

- user-model changes: add http_adapter for feed.
- storage format changes: no
- interface changes: no

Details:
1. Added http feed. User may use following syntax to create a http feed:

create feed TweetFeed with {
"adapter-name" : "http_adapter",
"addresses" : "asterix_nc2:10002,asterix_nc1:10001",
"address-type" : "NC",
"type-name" : "TweetMessageType",
"format" : "adm"
};

2. Refactored part of the test framework to be able to send http
requests to any port.
3. Refactored insert-feed test case to avoid waiting for 10s.
4. Refactored some constants in feeds.

Change-Id: I9c03bddd0df59b69a1f2d6e989b8ee93cf50a6c0
---
M 
asterixdb/asterix-app/src/test/java/org/apache/asterix/test/common/TestExecutor.java
M 
asterixdb/asterix-app/src/test/java/org/apache/asterix/test/runtime/LangExecutionUtil.java
M 
asterixdb/asterix-app/src/test/java/org/apache/asterix/test/runtime/ReplicationExecutionTest.java
M 
asterixdb/asterix-app/src/test/java/org/apache/asterix/test/runtime/SqlppExecutionIT.java
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.1.ddl.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.2.update.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.3.post.http
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.4.post.http
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.5.sleep.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.6.update.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.7.query.sqlpp
C 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/http_feed/http_feed.8.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/insert-feed/insert-feed.1.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/insert-feed/insert-feed.2.update.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/insert-feed/insert-feed.3.query.sqlpp
R 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/insert-feed/insert-feed.4.ddl.sqlpp
D 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/insert-feed/insert-feed.7.server.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/add_replica/add_replica.1.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/add_replica/add_replica.2.pollget.http
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/bulkload/bulkload.1.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/bulkload/bulkload.13.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/bulkload/bulkload.14.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/bulkload/bulkload.2.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/bulkload/bulkload.3.pollget.http
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/bulkload/bulkload.4.pollget.http
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/bulkload/bulkload.7.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/bulkload/bulkload.8.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/flushed_component/flushed_component.1.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/flushed_component/flushed_component.10.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/flushed_component/flushed_component.2.pollget.http
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/flushed_component/flushed_component.5.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/mem_component_recovery/mem_component_recovery.1.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/mem_component_recovery/mem_component_recovery.13.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/mem_component_recovery/mem_component_recovery.14.sto.cmd
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/replication/mem_component_recovery/mem_component_recovery.2.sto.cmd
M 

Change in asterixdb[master]: [NO ISSUE][FUN] Add more data types for external library

2018-10-02 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged.

Change subject: [NO ISSUE][FUN] Add more data types for external library
..


[NO ISSUE][FUN] Add more data types for external library

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
1. Added more types for external library.
2. Added test case for data types.
3. Fixed minor bug where the parameter type is not trimmed in UDF.

Change-Id: I6ce73e791533b0617074536e0d841242d9e0ee31
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2871
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Contrib: Jenkins 
Integration-Tests: Jenkins 
Reviewed-by: Dmitry Lychagin 
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/external/ExternalLibraryUtils.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.1.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.2.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.3.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.4.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/type_validation/type_validation.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/TypeValidationFunction.java
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/TypeValidationFunctionFactory.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-metadata/functionDataset/functionDataset.1.adm
13 files changed, 229 insertions(+), 7 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Jenkins: Verified; No violations found; ; Verified
  Dmitry Lychagin: Looks good to me, approved



diff --git 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/external/ExternalLibraryUtils.java
 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/external/ExternalLibraryUtils.java
index 0af1b9d..0eac212 100755
--- 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/external/ExternalLibraryUtils.java
+++ 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/external/ExternalLibraryUtils.java
@@ -222,7 +222,7 @@
 String functionType = function.getFunctionType().trim();
 List args = new ArrayList<>();
 for (String arg : fargs) {
-args.add(arg);
+args.add(arg.trim());
 }
 FunctionSignature signature = new 
FunctionSignature(dataverse, functionFullName, args.size());
 Function f = new Function(signature, args, 
functionReturnType, functionDefinition, functionLanguage,
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.1.lib.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.1.lib.sqlpp
new file mode 100644
index 000..25aff38
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.1.lib.sqlpp
@@ -0,0 +1,20 @@
+/*
+ * 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.
+ */
+
+install externallibtest testlib 
target/data/externallib/asterix-external-data-testlib.zip
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.2.query.sqlpp
 

Change in asterixdb[master]: [NO ISSUE] User-defined Function Documentation update

2018-09-28 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged.

Change subject: [NO ISSUE] User-defined Function Documentation update
..


[NO ISSUE] User-defined Function Documentation update

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
1. Updated the UDF documentation to be consisten with current master.
2. Cleaned default UDF package to remove useless UDFs.
3. Added the example in documentation as a test case for IT.
4. Reorganized the documentation to keep up with the new structure.
5. Minor changes to other documentation pages to keep style consistent.

Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2804
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Contrib: Jenkins 
Reviewed-by: Taewoo Kim 
Integration-Tests: Jenkins 
---
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.3.query.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.1.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.2.lib.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.3.update.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.5.pollquery.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.6.lib.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.7.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/feed-with-external-function/feed-with-external-function.1.adm
M asterixdb/asterix-doc/pom.xml
R asterixdb/asterix-doc/src/main/data_ingestion/feeds.md
A asterixdb/asterix-doc/src/main/data_ingestion/feeds_title.md
M asterixdb/asterix-doc/src/main/installation/ansible_title.md
M asterixdb/asterix-doc/src/main/installation/aws_title.md
A asterixdb/asterix-doc/src/main/user-defined_function/udf.md
A asterixdb/asterix-doc/src/main/user-defined_function/udf_title.md
M asterixdb/asterix-doc/src/site/markdown/ncservice.md
D asterixdb/asterix-doc/src/site/markdown/udf.md
M asterixdb/asterix-doc/src/site/site.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/Datatypes.java
D 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsFunction.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsInPlaceFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddMentionedUsersFactory.java
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/addMentionedUsersFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-metadata/functionDataset/functionDataset.1.adm
26 files changed, 329 insertions(+), 359 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Taewoo Kim: Looks good to me, approved
  Jenkins: Verified; No violations found; ; Verified



diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.3.query.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.3.query.sqlpp
index 9402e1f..a6a1cdc 100644
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.3.query.sqlpp
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.3.query.sqlpp
@@ -18,5 +18,4 @@
  */
 use externallibtest;
 
-let x=testlib#mysum(3,4)
-select VALUE x;
+testlib#mysum(3,4);
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.1.ddl.sqlpp
index 4fdc669..3bc33de 100644
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.1.ddl.sqlpp
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.1.ddl.sqlpp
@@ -22,34 +22,20 @@
  * Date : 4th Oct 2017
  */
 
-drop dataverse externallibtest if exists;
-create dataverse externallibtest;
-use 

Change in asterixdb[master]: [NO ISSUE] User-defined Function Documentation update

2018-09-28 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Taewoo Kim, Jenkins,

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

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

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

Change subject: [NO ISSUE] User-defined Function Documentation update
..

[NO ISSUE] User-defined Function Documentation update

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
1. Updated the UDF documentation to be consisten with current master.
2. Cleaned default UDF package to remove useless UDFs.
3. Added the example in documentation as a test case for IT.
4. Reorganized the documentation to keep up with the new structure.
5. Minor changes to other documentation pages to keep style consistent.

Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
---
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.3.query.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.1.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.2.lib.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.3.update.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.5.pollquery.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.6.lib.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.7.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/feed-with-external-function/feed-with-external-function.1.adm
M asterixdb/asterix-doc/pom.xml
R asterixdb/asterix-doc/src/main/data_ingestion/feeds.md
A asterixdb/asterix-doc/src/main/data_ingestion/feeds_title.md
M asterixdb/asterix-doc/src/main/installation/ansible_title.md
M asterixdb/asterix-doc/src/main/installation/aws_title.md
A asterixdb/asterix-doc/src/main/user-defined_function/udf.md
A asterixdb/asterix-doc/src/main/user-defined_function/udf_title.md
M asterixdb/asterix-doc/src/site/markdown/ncservice.md
D asterixdb/asterix-doc/src/site/markdown/udf.md
M asterixdb/asterix-doc/src/site/site.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/Datatypes.java
D 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsFunction.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsInPlaceFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddMentionedUsersFactory.java
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/addMentionedUsersFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-metadata/functionDataset/functionDataset.1.adm
26 files changed, 329 insertions(+), 359 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/04/2804/16
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2804
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
Gerrit-PatchSet: 16
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Ian Maxon 
Gerrit-Reviewer: Ian2 Maxon 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Carey 
Gerrit-Reviewer: Taewoo Kim 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [NO ISSUE] User-defined Function Documentation update

2018-09-28 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [NO ISSUE] User-defined Function Documentation update
..


Patch Set 14:

(1 comment)

https://asterix-gerrit.ics.uci.edu/#/c/2804/14/asterixdb/asterix-doc/src/main/user-defined_function/udf.md
File asterixdb/asterix-doc/src/main/user-defined_function/udf.md:

Line 54: the `asterixdb-external` sub-project. Assuming the UDFs are installed 
into the `udfs` dataverse and `testlib` library,
> Maybe if we have a stand-alone package for the same example under a new rep
Yes. There is one repo that I created under my account, but I'm not sure 
whether we want to make it official.


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
Gerrit-PatchSet: 14
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Ian Maxon 
Gerrit-Reviewer: Ian2 Maxon 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Carey 
Gerrit-Reviewer: Taewoo Kim 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [NO ISSUE] User-defined Function Documentation update

2018-09-27 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [NO ISSUE] User-defined Function Documentation update
..


Patch Set 15:

(1 comment)

https://asterix-gerrit.ics.uci.edu/#/c/2804/15/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.3.update.sqlpp
File 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.3.update.sqlpp:

Line 26: connect feed TweetFeed to dataset ProcessedTweets apply function 
testlib#addMentionedUsers;
> Is there a reason to remove the parallelism hint?
no particular reason... The hint here is not useful for the test.


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
Gerrit-PatchSet: 15
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Ian Maxon 
Gerrit-Reviewer: Ian2 Maxon 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Carey 
Gerrit-Reviewer: Taewoo Kim 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [NO ISSUE] User-defined Function Documentation update

2018-09-27 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [NO ISSUE] User-defined Function Documentation update
..


Patch Set 14:

(7 comments)

Thanks for the review!

https://asterix-gerrit.ics.uci.edu/#/c/2804/14/asterixdb/asterix-doc/src/main/user-defined_function/udf.md
File asterixdb/asterix-doc/src/main/user-defined_function/udf.md:

Line 22: Apache AsterixDB supports two types of user-defined functions (UDFs): 
SQLPP function and Programming language based function.
> maybe "Apache AsterixDB supports two languages for writing user-defined fun
Done


Line 26: mainly focus on how to install/invoke/uninstall a programming language 
function library using the Ansible script that we provided.
> s/programming language function/Java/g
Done


Line 27: Currently, AsterixDB only supports Java based programming UDF and we 
are working on supporting more languages. :)
> dunno if this really belongs here
Done


Line 33: to deploy an AsterixDB instance on your local machine or cluster. The 
UDFs have to be installed offline. Here are the
> "This section assumes you have followed the preceding ansible installation 
Done


Line 44: - Step 3: Start the AsterixDB
> no 'the'
Done


Line 48: After AsterixDB starts, you can use the following query to check 
whether your UDFs are sucessfully installed.
> are/have been
Done


Line 54: the `asterixdb-external` sub-project. Assuming the UDFs are installed 
into the `udfs` dataverse and `testlib` library,
> this is sort of vague, assumes knowledge of maven
couldn't find a better way to point people to the right place let's if the 
others have better ideas about this...


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
Gerrit-PatchSet: 14
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Ian Maxon 
Gerrit-Reviewer: Ian2 Maxon 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Carey 
Gerrit-Reviewer: Taewoo Kim 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [NO ISSUE] User-defined Function Documentation update

2018-09-27 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE] User-defined Function Documentation update
..

[NO ISSUE] User-defined Function Documentation update

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
1. Updated the UDF documentation to be consisten with current master.
2. Cleaned default UDF package to remove useless UDFs.
3. Added the example in documentation as a test case for IT.
4. Reorganized the documentation to keep up with the new structure.
5. Minor changes to other documentation pages to keep style consistent.

Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
---
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.3.query.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.1.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.2.lib.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.3.update.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.5.pollquery.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.6.lib.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.7.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/feed-with-external-function/feed-with-external-function.1.adm
M asterixdb/asterix-doc/pom.xml
R asterixdb/asterix-doc/src/main/data_ingestion/feeds.md
A asterixdb/asterix-doc/src/main/data_ingestion/feeds_title.md
M asterixdb/asterix-doc/src/main/installation/ansible_title.md
M asterixdb/asterix-doc/src/main/installation/aws_title.md
A asterixdb/asterix-doc/src/main/user-defined_function/udf.md
A asterixdb/asterix-doc/src/main/user-defined_function/udf_title.md
M asterixdb/asterix-doc/src/site/markdown/ncservice.md
D asterixdb/asterix-doc/src/site/markdown/udf.md
M asterixdb/asterix-doc/src/site/site.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/Datatypes.java
D 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsFunction.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsInPlaceFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddMentionedUsersFactory.java
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/addMentionedUsersFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-metadata/functionDataset/functionDataset.1.adm
26 files changed, 328 insertions(+), 359 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/04/2804/15
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2804
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
Gerrit-PatchSet: 15
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Ian Maxon 
Gerrit-Reviewer: Ian2 Maxon 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Carey 
Gerrit-Reviewer: Taewoo Kim 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 


Change in asterixdb[master]: [NO ISSUE] User-defined Function Documentation update

2018-09-27 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE] User-defined Function Documentation update
..

[NO ISSUE] User-defined Function Documentation update

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
1. Updated the UDF documentation to be consisten with current master.
2. Cleaned default UDF package to remove useless UDFs.
3. Added the example in documentation as a test case for IT.
4. Reorganized the documentation to keep up with the new structure.
5. Minor changes to other documentation pages to keep style consistent.

Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
---
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.3.query.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.1.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.2.lib.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.3.update.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.5.pollquery.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.6.lib.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.7.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/feed-with-external-function/feed-with-external-function.1.adm
M asterixdb/asterix-doc/pom.xml
R asterixdb/asterix-doc/src/main/data_ingestion/feeds.md
A asterixdb/asterix-doc/src/main/data_ingestion/feeds_title.md
M asterixdb/asterix-doc/src/main/installation/ansible_title.md
M asterixdb/asterix-doc/src/main/installation/aws_title.md
A asterixdb/asterix-doc/src/main/user-defined_function/udf.md
A asterixdb/asterix-doc/src/main/user-defined_function/udf_title.md
M asterixdb/asterix-doc/src/site/markdown/ncservice.md
D asterixdb/asterix-doc/src/site/markdown/udf.md
M asterixdb/asterix-doc/src/site/site.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/Datatypes.java
D 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsFunction.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsInPlaceFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddMentionedUsersFactory.java
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/addMentionedUsersFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-metadata/functionDataset/functionDataset.1.adm
26 files changed, 329 insertions(+), 359 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/04/2804/14
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2804
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
Gerrit-PatchSet: 14
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Ian2 Maxon 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Carey 
Gerrit-Reviewer: Taewoo Kim 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 


Change in asterixdb[master]: [NO ISSUE] User-defined Function Documentation update

2018-09-27 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE] User-defined Function Documentation update
..

[NO ISSUE] User-defined Function Documentation update

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
1. Updated the UDF documentation to be consisten with current master.
2. Cleaned default UDF package to remove useless UDFs.
3. Added the example in documentation as a test case for IT.
4. Reorganized the documentation to keep up with the new structure.
5. Minor changes to other documentation pages to keep style consistent.

Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
---
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.3.query.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.1.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.2.lib.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.3.update.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.5.pollquery.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.6.lib.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.7.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/feed-with-external-function/feed-with-external-function.1.adm
M asterixdb/asterix-doc/pom.xml
R asterixdb/asterix-doc/src/main/data_ingestion/feeds.md
A asterixdb/asterix-doc/src/main/data_ingestion/feeds_title.md
M asterixdb/asterix-doc/src/main/installation/ansible_title.md
M asterixdb/asterix-doc/src/main/installation/aws_title.md
A asterixdb/asterix-doc/src/main/user-defined_function/udf.md
A asterixdb/asterix-doc/src/main/user-defined_function/udf_title.md
M asterixdb/asterix-doc/src/site/markdown/ncservice.md
D asterixdb/asterix-doc/src/site/markdown/udf.md
M asterixdb/asterix-doc/src/site/site.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/Datatypes.java
D 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsFunction.java
M 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsInPlaceFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddMentionedUsersFactory.java
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/addMentionedUsersFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-metadata/functionDataset/functionDataset.1.adm
26 files changed, 337 insertions(+), 367 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/04/2804/13
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2804
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
Gerrit-PatchSet: 13
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Ian2 Maxon 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Michael Carey 
Gerrit-Reviewer: Taewoo Kim 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Wail Alkowaileet 


Change in asterixdb[master]: [NO ISSUE] User-defined Function Documentation update

2018-09-24 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE] User-defined Function Documentation update
..

[NO ISSUE] User-defined Function Documentation update

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
1. Updated the UDF documentation to be consisten with current master.
2. Cleaned default UDF package to remove useless UDFs.
3. Added the example in documentation as a test case for IT.
4. Reorganized the documentation to keep up with the new structure.
5. Minor changes to other documentation pages to keep style consistent.

Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
---
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/mysum/mysum.3.query.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.1.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.2.lib.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.3.update.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.5.pollquery.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.6.lib.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/feeds/feed-with-external-function/feed-with-external-function.7.ddl.sqlpp
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/feeds/feed-with-external-function/feed-with-external-function.1.adm
M asterixdb/asterix-doc/pom.xml
R asterixdb/asterix-doc/src/main/data_ingestion/feeds.md
A asterixdb/asterix-doc/src/main/data_ingestion/feeds_title.md
M asterixdb/asterix-doc/src/main/installation/ansible_title.md
M asterixdb/asterix-doc/src/main/installation/aws_title.md
A asterixdb/asterix-doc/src/main/user-defined_function/udf.md
A asterixdb/asterix-doc/src/main/user-defined_function/udf_title.md
M asterixdb/asterix-doc/src/site/markdown/ncservice.md
D asterixdb/asterix-doc/src/site/markdown/udf.md
M asterixdb/asterix-doc/src/site/site.xml
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/Datatypes.java
D 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsFactory.java
D 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddHashTagsFunction.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/AddMentionedUsersFactory.java
R 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/addMentionedUsersFunction.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-metadata/functionDataset/functionDataset.1.adm
26 files changed, 271 insertions(+), 403 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/04/2804/11
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2804
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I17b1b4d639ca38689298ce88145257e794eb90e1
Gerrit-PatchSet: 11
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 


Change in asterixdb[master]: [NO ISSUE][FUN] Add more data types for external library

2018-09-14 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [NO ISSUE][FUN] Add more data types for external library
..


Patch Set 7:

(1 comment)

https://asterix-gerrit.ics.uci.edu/#/c/2871/7/asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/TypeValidationFunction.java
File 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/TypeValidationFunction.java:

PS7, Line 46: System.out.println("De-Initialized");
> Can you please remove this? or at least use a logger?
Done


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I6ce73e791533b0617074536e0d841242d9e0ee31
Gerrit-PatchSet: 7
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: Xikui Wang 
Gerrit-Reviewer: abdullah alamoudi 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [NO ISSUE][FUN] Add more data types for external library

2018-09-14 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][FUN] Add more data types for external library
..

[NO ISSUE][FUN] Add more data types for external library

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
1. Added more types for external library.
2. Added test case for data types.
3. Fixed minor bug where the parameter type is not trimmed in UDF.

Change-Id: I6ce73e791533b0617074536e0d841242d9e0ee31
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/external/ExternalLibraryUtils.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.1.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.2.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.3.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.4.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/type_validation/type_validation.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/TypeValidationFunction.java
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/TypeValidationFunctionFactory.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-metadata/functionDataset/functionDataset.1.adm
13 files changed, 229 insertions(+), 7 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/71/2871/8
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2871
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6ce73e791533b0617074536e0d841242d9e0ee31
Gerrit-PatchSet: 8
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Till Westmann 
Gerrit-Reviewer: abdullah alamoudi 


Change in asterixdb[master]: [NO-ISSUE][COMP] Avoid adding redundant var in AbstractIntro...

2018-09-05 Thread Xikui Wang (Code Review)
Xikui Wang has submitted this change and it was merged.

Change subject: [NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule
..


[NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule

- user model changes: no
- storage format changes: no
- interface changes: no

For live variables added in new Group-by op, they should not be added
again.

Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2933
Sonar-Qube: Jenkins 
Tested-by: Jenkins 
Contrib: Jenkins 
Integration-Tests: Jenkins 
Reviewed-by: Dmitry Lychagin 
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.3.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.4.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/AbstractIntroduceGroupByCombinerRule.java
7 files changed, 120 insertions(+), 7 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Jenkins: Verified; No violations found; ; Verified
  Dmitry Lychagin: Looks good to me, approved



diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.ddl.sqlpp
new file mode 100644
index 000..3100af6
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.ddl.sqlpp
@@ -0,0 +1,44 @@
+/*
+ * 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 test if exists;
+create dataverse test;
+use test;
+
+create type TweetType as open {
+  id : int64
+};
+
+create dataset Tweets(TweetType) primary key id;
+
+drop type NearbyBuildingType if exists;
+create type NearbyBuildingType as open {
+buildingId: int64,
+buildingType : string,
+buildingLocation : point
+};
+create dataset NearbyBuildings(NearbyBuildingType) primary key buildingId;
+
+create function annotateTweet(x) {
+LET nearby_buildings = (select r.buildingType as buildingType, count(r) as 
cnt
+   from NearbyBuildings r
+   where spatial_intersect(create_point(x.latitude, x.longitude), 
create_circle(r.buildingLocation, 3.0))
+   group by r.buildingType)
+select x.*, nearby_buildings
+};
+
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.2.update.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.2.update.sqlpp
new file mode 100644
index 000..ab13484
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.2.update.sqlpp
@@ -0,0 +1,25 @@
+/*
+ * 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 

Change in asterixdb[master]: [NO-ISSUE][COMP] Avoid adding redundant var in AbstractIntro...

2018-09-05 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule
..

[NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule

- user model changes: no
- storage format changes: no
- interface changes: no

For live variables added in new Group-by op, they should not be added
again.

Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.3.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.4.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/AbstractIntroduceGroupByCombinerRule.java
7 files changed, 120 insertions(+), 7 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/33/2933/7
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2933
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
Gerrit-PatchSet: 7
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb[master]: [NO-ISSUE][COMP] Avoid adding redundant var in AbstractIntro...

2018-09-01 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule
..


Patch Set 4:

(4 comments)

https://asterix-gerrit.ics.uci.edu/#/c/2933/4/asterixdb/asterix-app/src/test/resources/log4j2-asterixdb-test.xml
File asterixdb/asterix-app/src/test/resources/log4j2-asterixdb-test.xml:

Line 44: 
> Let's revert these lines. We don't need query plans in the logs by default.
done. this was added mistakenly...


https://asterix-gerrit.ics.uci.edu/#/c/2933/4/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.ddl.sqlpp
File 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.ddl.sqlpp:

Line 38: LET nearby_buildings = (select r.buildingType as Religion, 
count(r) as cnt
> why "as Religion"? can we remove it? This is building type, so let this fie
Done


https://asterix-gerrit.ics.uci.edu/#/c/2933/4/hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/AbstractIntroduceGroupByCombinerRule.java
File 
hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/AbstractIntroduceGroupByCombinerRule.java:

Line 87: if (!newGbyLiveVars.contains(usedDecorVars.get(0))) {
> can we extract usedDecorVars.get(0) into a separate variable and use this v
Done


Line 108: if (!propagatedVars.contains(var) && 
!newGbyLiveVars.contains(var)) {
> The only difference between VariableUtilities.getLiveVariables(newGbyOp) an
Done


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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [NO-ISSUE][COMP] Avoid adding redundant var in AbstractIntro...

2018-09-01 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule
..

[NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule

- user model changes: no
- storage format changes: no
- interface changes: no

For live variables added in new Group-by op, they should not be added
again.

Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
---
M asterixdb/asterix-app/src/test/resources/optimizerts/only.txt
M asterixdb/asterix-app/src/test/resources/runtimets/only_sqlpp.xml
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.3.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.4.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/AbstractIntroduceGroupByCombinerRule.java
9 files changed, 126 insertions(+), 8 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
Gerrit-PatchSet: 6
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO-ISSUE][COMP] Avoid adding redundant var in AbstractIntro...

2018-09-01 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule
..

[NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule

- user model changes: no
- storage format changes: no
- interface changes: no

For live variables added in new Group-by op, they should not be added
again.

Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
---
M asterixdb/asterix-app/src/test/resources/optimizerts/only.txt
A 
asterixdb/asterix-app/src/test/resources/optimizerts/results/redundant-var-in-groupby.plan
M asterixdb/asterix-app/src/test/resources/runtimets/only_sqlpp.xml
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.3.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.4.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/AbstractIntroduceGroupByCombinerRule.java
10 files changed, 196 insertions(+), 8 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO-ISSUE][COMP] Avoid adding redundant var in AbstractIntro...

2018-08-30 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule
..

[NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule

- user model changes: no
- storage format changes: no
- interface changes: no

For live variables added in new Group-by op, they should not be added
again.

Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
---
M asterixdb/asterix-app/src/test/resources/log4j2-asterixdb-test.xml
A 
asterixdb/asterix-app/src/test/resources/optimizerts/results/redundant-var-in-groupby.plan
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.3.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/AbstractIntroduceGroupByCombinerRule.java
8 files changed, 170 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO-ISSUE][COMP] Avoid adding redundant var in AbstractIntro...

2018-08-30 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule
..

[NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule

- user model changes: no
- storage format changes: no
- interface changes: no

For live variables added in new Group-by op, they should not be added
again.

Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
---
M asterixdb/asterix-app/src/test/resources/log4j2-asterixdb-test.xml
A 
asterixdb/asterix-app/src/test/resources/optimizerts/results/redundant-var-in-groupby.plan
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.2.update.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/group-by/redundant-var-in-groupby/redundant-var-in-groupby.3.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/group-by/redundant-var-in-groupby/redundant-var-in-groupby.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
M 
hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/AbstractIntroduceGroupByCombinerRule.java
8 files changed, 170 insertions(+), 1 deletion(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO-ISSUE][COMP] Avoid adding redundant var in AbstractIntro...

2018-08-27 Thread Xikui Wang (Code Review)
Xikui Wang has uploaded a new change for review.

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

Change subject: [NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule
..

[NO-ISSUE][COMP] Avoid adding redundant var in 
AbstractIntroduceGroupByCombinerRule

- user model changes: no
- storage format changes: no
- interface changes: no

For live variables added in new Group-by op, they should not be added
again.

Change-Id: Ic1ab9aee31db95d5782385bc3d53777da54f6d83
---
A 
asterixdb/asterix-app/src/test/resources/optimizerts/queries/redundant-var-in-groupby.sqlpp
A 
asterixdb/asterix-app/src/test/resources/optimizerts/results/redundant-var-in-groupby.plan
M 
hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/AbstractIntroduceGroupByCombinerRule.java
3 files changed, 140 insertions(+), 1 deletion(-)


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

diff --git 
a/asterixdb/asterix-app/src/test/resources/optimizerts/queries/redundant-var-in-groupby.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/optimizerts/queries/redundant-var-in-groupby.sqlpp
new file mode 100644
index 000..202a03d
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/optimizerts/queries/redundant-var-in-groupby.sqlpp
@@ -0,0 +1,68 @@
+/*
+ * 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 test if exists;
+create  dataverse test;
+use test;
+
+create type TweetType as open {
+  id : int64,
+  created_at : datetime
+};
+
+create type StoredTweetType as open {
+  tid : uuid
+};
+create dataset Tweets1(StoredTweetType) primary key tid autogenerated;
+create dataset Tweets2(StoredTweetType) primary key tid autogenerated;
+
+drop dataset ReligiousBuildingDataset if exists;
+drop type ReligiousBuildingType if exists;
+create type ReligiousBuildingType as open {
+religiousBuildingId : string,
+religionName : string,
+buildingLocation : point,
+registeredBeliever: int
+};
+create dataset ReligiousBuildingDataset(ReligiousBuildingType) primary key 
religiousBuildingId;
+
+drop dataset AttackEventsDataset if exists;
+drop type AttackEventsType if exists;
+create type AttackEventsType as open {
+attackRecordId: string,
+attackDatetime: datetime,
+attackLocation: point,
+relatedReligion: string
+};
+create dataset AttackEventsDataset(AttackEventsType) primary key 
attackRecordId;
+
+create function annotateTweet(x) {
+LET nearby_religious_attack = (select r.religionName as Religion, 
count(a.attackRecordId) as AttackNum
+   from ReligiousBuildingDataset r, AttackEventsDataset a
+   where spatial_intersect(create_point(x.latitude, x.longitude), 
create_circle(r.buildingLocation, 3.0))
+   and x.created_at  < a.attackDatetime + duration("P2M")
+   and x.created_at  > a.attackDatetime
+   and r.religionName = a.relatedReligion
+   group by r.religionName)
+select x.*, nearby_religious_attack
+};
+
+insert into Tweets2 (
+select annotateTweet(t) from Tweets1
+);
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/optimizerts/results/redundant-var-in-groupby.plan
 
b/asterixdb/asterix-app/src/test/resources/optimizerts/results/redundant-var-in-groupby.plan
new file mode 100644
index 000..f3ae099
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/optimizerts/results/redundant-var-in-groupby.plan
@@ -0,0 +1,70 @@
+-- COMMIT  |PARTITIONED|
+  -- STREAM_PROJECT  |PARTITIONED|
+-- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
+  -- INSERT_DELETE  |PARTITIONED|
+-- HASH_PARTITION_EXCHANGE [$$105]  |PARTITIONED|
+  -- ASSIGN  |PARTITIONED|
+-- STREAM_PROJECT  |PARTITIONED|
+  -- ASSIGN  |PARTITIONED|
+-- STREAM_PROJECT  |PARTITIONED|
+  -- ASSIGN  |PARTITIONED|
+-- STREAM_PROJECT  |PARTITIONED|
+  -- ASSIGN  |PARTITIONED|
+-- STREAM_PROJECT  |PARTITIONED|
+  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
+-- 

Change in asterixdb[master]: [ASTERIX-2430][COMP] Avoid inlining function calls in WITH i...

2018-08-27 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: [ASTERIX-2430][COMP] Avoid inlining function calls in WITH in 
AST rewritting
..


Patch Set 5:

I've looked at the query in q2-11. For the modified query, the pure function 
should be inlined. That's something that I didn't notice before. I'll abandon 
this patch as it's not fully correct.

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I18afbe4165ca84c790d7693a7a7bd5f6fd53187a
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: No


Change in asterixdb[master]: [ASTERIX-2430][COMP] Avoid inlining function calls in WITH i...

2018-08-27 Thread Xikui Wang (Code Review)
Xikui Wang has abandoned this change.

Change subject: [ASTERIX-2430][COMP] Avoid inlining function calls in WITH in 
AST rewritting
..


Abandoned

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

Gerrit-MessageType: abandon
Gerrit-Change-Id: I18afbe4165ca84c790d7693a7a7bd5f6fd53187a
Gerrit-PatchSet: 5
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 


Change in asterixdb-bad[master]: Fix formatting of broker notification

2018-08-14 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: Fix formatting of broker notification
..


Patch Set 1: Code-Review+2

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

Gerrit-MessageType: comment
Gerrit-Change-Id: I6f73b64d56d06a8ea3f785d465d4e0cda027dfb2
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: No


Change in asterixdb-bad[master]: Fixed bug with pull-based channel

2018-08-10 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: Fixed bug with pull-based channel
..


Patch Set 3: Verified+1

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

Gerrit-MessageType: comment
Gerrit-Change-Id: If758f9e8d5c66c5badd819ad877d269bee4408c8
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: No


Change in asterixdb-bad[master]: Fixed bug with pull-based channel

2018-08-10 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: Fixed bug with pull-based channel
..


Patch Set 3: Code-Review+2

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

Gerrit-MessageType: comment
Gerrit-Change-Id: If758f9e8d5c66c5badd819ad877d269bee4408c8
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Steven Jacobs 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: No


Change in asterixdb-bad[master]: Fixed bug with pull-based channel

2018-08-10 Thread Xikui Wang (Code Review)
Xikui Wang has posted comments on this change.

Change subject: Fixed bug with pull-based channel
..


Patch Set 1:

(3 comments)

https://asterix-gerrit.ics.uci.edu/#/c/2876/1/asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java
File 
asterix-bad/src/main/java/org/apache/asterix/bad/runtime/NotifyBrokerRuntime.java:

Line 98: if (push) {
Could you add two line comments to the following so we would know why it's null.


Line 99: recordPrinterFactory = new 
ARecordPrinterFactory((ARecordType) recordType).createPrinter();
record type is the actual data records.


Line 100: } else {
record type is a list of subscription ids


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

Gerrit-MessageType: comment
Gerrit-Change-Id: If758f9e8d5c66c5badd819ad877d269bee4408c8
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb-bad
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs 
Gerrit-Reviewer: Jenkins 
Gerrit-Reviewer: Xikui Wang 
Gerrit-HasComments: Yes


Change in asterixdb[master]: [ASTERIX-2430][COMP] Avoid inlining function calls in WITH i...

2018-08-10 Thread Xikui Wang (Code Review)
Hello Jenkins,

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

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

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

Change subject: [ASTERIX-2430][COMP] Avoid inlining function calls in WITH in 
AST rewritting
..

[ASTERIX-2430][COMP] Avoid inlining function calls in WITH in AST rewritting

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
The inlineWithExperssion() call in QueryRewritter inlines with/let
experssion blindly. This can cause problem when the function call is on
the DoNotInlineFuncs list. We can safely skip the inlining of function
calls in the AST rewritting part as the calls that are not on the
DoNotInlineFuncs list will be inlined by InlineVariablesRule later.

Change-Id: I18afbe4165ca84c790d7693a7a7bd5f6fd53187a
---
A 
asterixdb/asterix-app/src/test/resources/optimizerts/queries/ASTERIXDB-2430.sqlpp
A 
asterixdb/asterix-app/src/test/resources/optimizerts/results/ASTERIXDB-2430.plan
M 
asterixdb/asterix-lang-sqlpp/src/main/java/org/apache/asterix/lang/sqlpp/rewrites/visitor/InlineWithExpressionVisitor.java
3 files changed, 117 insertions(+), 0 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I18afbe4165ca84c790d7693a7a7bd5f6fd53187a
Gerrit-PatchSet: 4
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Dmitry Lychagin 
Gerrit-Reviewer: Jenkins 


Change in asterixdb[master]: [NO ISSUE][FUN] Add more data types for external library

2018-08-10 Thread Xikui Wang (Code Review)
Hello Anon. E. Moose #1000171, Jenkins,

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

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

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

Change subject: [NO ISSUE][FUN] Add more data types for external library
..

[NO ISSUE][FUN] Add more data types for external library

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
1. Added more types for external library.
2. Added test case for data types.
3. Fixed minor bug where the parameter type is not trimmed in UDF.

Change-Id: I6ce73e791533b0617074536e0d841242d9e0ee31
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/external/ExternalLibraryUtils.java
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.1.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.2.query.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.3.lib.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/external-library/type_validation/type_validation.4.ddl.sqlpp
A 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/type_validation/type_validation.1.adm
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/external-library/validate-default-library/validate-default-library.1.adm
M asterixdb/asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/TypeValidationFunction.java
A 
asterixdb/asterix-external-data/src/test/java/org/apache/asterix/external/library/TypeValidationFunctionFactory.java
M asterixdb/asterix-external-data/src/test/resources/library_descriptor.xml
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/functions/ExternalFunctionCompilerUtil.java
M 
asterixdb/asterix-server/src/test/resources/integrationts/library/results/library-metadata/functionDataset/functionDataset.1.adm
13 files changed, 234 insertions(+), 7 deletions(-)


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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6ce73e791533b0617074536e0d841242d9e0ee31
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang 
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins 


  1   2   3   4   5   6   7   8   9   >