You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@asterixdb.apache.org by mb...@apache.org on 2021/08/13 14:13:57 UTC

[asterixdb] branch master updated (2b6cf22 -> 9d5485a)

This is an automated email from the ASF dual-hosted git repository.

mblow pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git.


    from 2b6cf22  [ASTERIXDB-2935] Azure Blob: add support to active directory auth
     new 790ce54  [ASTERIXDB-2943][STO] Upgrade Snappy to v1.1.8.4
     new c884535  [ASTERIXDB-2947][COMP] Fix internal compiler error
     new 71cd417  [NO ISSUE][DOC] Documentation for ROLLUP and CUBE
     new 0e33c16  Merge branch 'stabilization-3b6982ce7f'
     new 9d5485a  Merge branch 'gerrit/cheshire-cat'

The 5 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../subplan/InlineAllNtsInSubplanVisitor.java      |   2 +-
 .../query-ASTERIXDB-2947.1.ddl.sqlpp}              |   7 +-
 .../query-ASTERIXDB-2947.2.update.sqlpp}           |  14 +-
 .../query-ASTERIXDB-2947.3.query.sqlpp}            |  10 +-
 .../query-ASTERIXDB-2947.3.adm                     |   2 +
 .../test/resources/runtimets/testsuite_sqlpp.xml   |   5 +
 .../asterix-doc/src/main/markdown/sqlpp/3_query.md | 323 ++++++++++++++++++++-
 asterixdb/asterix-server/pom.xml                   |   1 +
 .../appended-resources/supplemental-models.xml     |   7 +-
 .../hyracks/hyracks-storage-common/pom.xml         |   1 -
 hyracks-fullstack/pom.xml                          |   6 +
 11 files changed, 361 insertions(+), 17 deletions(-)
 copy asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/{subquery/query-ASTERIXDB-2845/query-ASTERIXDB-2845.1.ddl.sqlpp => quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.1.ddl.sqlpp} (86%)
 copy asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/{api/readonly-request/readonly-request.2.update.sqlpp => quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.2.update.sqlpp} (81%)
 copy asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/{misc/query-ASTERIXDB-2550/query-ASTERIXSB-2550.3.query.sqlpp => quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.3.query.sqlpp} (86%)
 create mode 100644 asterixdb/asterix-app/src/test/resources/runtimets/results/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.3.adm

[asterixdb] 02/05: [ASTERIXDB-2947][COMP] Fix internal compiler error

Posted by mb...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mblow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git

commit c88453531e7b7d88fc0109ec1b7260297e6da41e
Author: Dmitry Lychagin <dm...@couchbase.com>
AuthorDate: Wed Aug 11 17:45:33 2021 -0700

    [ASTERIXDB-2947][COMP] Fix internal compiler error
    
    - user model changes: no
    - storage format changes: no
    - interface changes: no
    
    Details:
    - Fixed optimizer sanity check failure caused by
      InlineSubplanInputForNestedTupleSourceRule
    
    Change-Id: If8e50a0909481e98e25d9c12ebe1a8e8f1464c9e
    Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/12785
    Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
    Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
    Reviewed-by: Dmitry Lychagin <dm...@couchbase.com>
    Reviewed-by: Ali Alsuliman <al...@gmail.com>
---
 .../subplan/InlineAllNtsInSubplanVisitor.java      |  2 +-
 .../query-ASTERIXDB-2947.1.ddl.sqlpp               | 29 ++++++++++++++++++
 .../query-ASTERIXDB-2947.2.update.sqlpp            | 35 ++++++++++++++++++++++
 .../query-ASTERIXDB-2947.3.query.sqlpp             | 30 +++++++++++++++++++
 .../query-ASTERIXDB-2947.3.adm                     |  2 ++
 .../test/resources/runtimets/testsuite_sqlpp.xml   |  5 ++++
 6 files changed, 102 insertions(+), 1 deletion(-)

diff --git a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
index 1b7b7d2..4ac44b4 100644
--- a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
+++ b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/subplan/InlineAllNtsInSubplanVisitor.java
@@ -743,7 +743,7 @@ class InlineAllNtsInSubplanVisitor implements IQueryOperatorVisitor<ILogicalOper
         gbyOp.getNestedPlans().add(nestedPlan);
 
         OperatorManipulationUtil.computeTypeEnvironmentBottomUp(gbyOp, context);
-        return op;
+        return gbyOp;
     }
 
     private ILogicalOperator visitMultiInputOperator(ILogicalOperator op) throws AlgebricksException {
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.1.ddl.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.1.ddl.sqlpp
new file mode 100644
index 0000000..0ab290f
--- /dev/null
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.1.ddl.sqlpp
@@ -0,0 +1,29 @@
+/*
+ * 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.
+ */
+
+/*
+ * Description: This test case is to verify the fix for ASTERIXDB-2947
+ */
+
+drop dataverse test if exists;
+create dataverse test;
+
+use test;
+
+create dataset t1(id uuid not unknown) open type primary key id autogenerated;
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.2.update.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.2.update.sqlpp
new file mode 100644
index 0000000..5dcf4b9
--- /dev/null
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.2.update.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.
+ */
+
+use test;
+
+insert into t1
+([
+  {"x":1, "y":"A" },
+  {"x":1, "y":"B" },
+  {"x":1, "y":"C" },
+
+  {"x":2, "y":"D" },
+  {"x":2, "y":"E" },
+  {"x":2, "y":"F" },
+
+  {"x":3, "y":"G" },
+  {"x":3, "y":"H" },
+  {"x":3, "y":"I" }
+]);
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.3.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.3.query.sqlpp
new file mode 100644
index 0000000..712b8d1
--- /dev/null
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.3.query.sqlpp
@@ -0,0 +1,30 @@
+/*
+ * 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.
+ */
+
+/*
+ * Description: This test case is to verify the fix for ASTERIXDB-2947
+ */
+
+use test;
+
+select x, array_sort(array_agg({y})) yy
+from t1
+group by x
+having some r in array_agg({y}) satisfies r.y in ["B", "H"]
+order by x;
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.3.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.3.adm
new file mode 100644
index 0000000..4f412c8
--- /dev/null
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/quantifiers/query-ASTERIXDB-2947/query-ASTERIXDB-2947.3.adm
@@ -0,0 +1,2 @@
+{ "yy": [ { "y": "A" }, { "y": "B" }, { "y": "C" } ], "x": 1 }
+{ "yy": [ { "y": "G" }, { "y": "H" }, { "y": "I" } ], "x": 3 }
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml b/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
index a76cb8b..f0b20bf 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
@@ -8828,6 +8828,11 @@
         <output-dir compare="Text">query-ASTERIXDB-2696</output-dir>
       </compilation-unit>
     </test-case>
+    <test-case FilePath="quantifiers">
+      <compilation-unit name="query-ASTERIXDB-2947">
+        <output-dir compare="Text">query-ASTERIXDB-2947</output-dir>
+      </compilation-unit>
+    </test-case>
     <!--
         <test-case FilePath="quantifiers">
           <compilation-unit name="everysat_02">

[asterixdb] 03/05: [NO ISSUE][DOC] Documentation for ROLLUP and CUBE

Posted by mb...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mblow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git

commit 71cd417ee6c279b20968a9f1067765a7e00f78f2
Author: Simon Dew <Si...@couchbase.com>
AuthorDate: Thu Aug 12 12:06:02 2021 +0100

    [NO ISSUE][DOC] Documentation for ROLLUP and CUBE
    
      - Add documentation for ROLLUP subclause
      - Add documentation for CUBE subclause
    
    Change-Id: I67a63f17ca459e313321bce569056a7f07f3a17f
    Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/12783
    Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
    Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
    Reviewed-by: Dmitry Lychagin <dm...@couchbase.com>
---
 .../asterix-doc/src/main/markdown/sqlpp/3_query.md | 323 ++++++++++++++++++++-
 1 file changed, 322 insertions(+), 1 deletion(-)

diff --git a/asterixdb/asterix-doc/src/main/markdown/sqlpp/3_query.md b/asterixdb/asterix-doc/src/main/markdown/sqlpp/3_query.md
index 3e70922..c54467f 100644
--- a/asterixdb/asterix-doc/src/main/markdown/sqlpp/3_query.md
+++ b/asterixdb/asterix-doc/src/main/markdown/sqlpp/3_query.md
@@ -742,7 +742,7 @@ Of course, a grouping expression need not be a simple field-name. In Q3.18, orde
     WHERE get_year(date(o.order_date)) = 2020
     GROUP BY get_month(date(o.order_date)) AS month
     SELECT month, COUNT(*) AS order_count
-    ORDER BY order_count desc
+    ORDER BY order_count DESC, month DESC
     LIMIT 3;
 
 Result:
@@ -794,6 +794,327 @@ Result:
         }
     ]
 
+#### <a id="Rollup">ROLLUP</a>
+
+The `ROLLUP` subclause is an aggregation feature that extends the functionality of the `GROUP BY` clause.
+It returns extra _super-aggregate_ items in the query results, giving subtotals and a grand total for the aggregate
+functions in the query.
+To illustrate, first consider the following query.
+
+##### Example
+
+(Q3.R1) List the number of orders, grouped by customer region and city.
+
+    SELECT customer_region AS Region,
+           customer_city AS City,
+           COUNT(o.orderno) AS `Order Count`
+    FROM customers AS c LEFT OUTER JOIN orders AS o ON c.custid = o.custid
+    LET address_line = SPLIT(c.address.city, ","),
+        customer_city = TRIM(address_line[0]),
+        customer_region = TRIM(address_line[1])
+    GROUP BY customer_region, customer_city
+    ORDER BY customer_region ASC, customer_city ASC, `Order Count` DESC;
+
+Result:
+
+    [
+      {
+        "Region": "Italy",
+        "City": "Rome",
+        "Order Count": 0
+      },
+      {
+        "Region": "MA",
+        "City": "Boston",
+        "Order Count": 2
+      },
+      {
+        "Region": "MA",
+        "City": "Hanover",
+        "Order Count": 0
+      },
+      {
+        "Region": "MO",
+        "City": "St. Louis",
+        "Order Count": 7
+      }
+    ]
+
+This query uses string functions to split each customer's address into city and region.
+The query then counts the total number of orders placed by each customer, and groups the results first by customer
+region, then by customer city.
+The aggregate results (labeled `Order Count`) are only shown by city, and there are no subtotals or grand total.
+We can add these using the `ROLLUP` subclause, as in the following example.
+
+##### Example
+
+(Q3.R2) List the number of orders by customer region and city, including subtotals and a grand total.
+
+    SELECT customer_region AS Region,
+           customer_city AS City,
+           COUNT(o.orderno) AS `Order Count`
+    FROM customers AS c LEFT OUTER JOIN orders AS o ON c.custid = o.custid
+    LET address_line = SPLIT(c.address.city, ","),
+        customer_city = TRIM(address_line[0]),
+        customer_region = TRIM(address_line[1])
+    GROUP BY ROLLUP(customer_region, customer_city)
+    ORDER BY customer_region ASC, customer_city ASC, `Order Count` DESC;
+
+Result:
+
+    [
+      {
+        "Region": null,
+        "City": null,
+        "Order Count": 9
+      },
+      {
+        "Region": "Italy",
+        "City": null,
+        "Order Count": 0
+      },
+      {
+        "Region": "Italy",
+        "City": "Rome",
+        "Order Count": 0
+      },
+      {
+        "Region": "MA",
+        "City": null,
+        "Order Count": 2
+      },
+      {
+        "Region": "MA",
+        "City": "Boston",
+        "Order Count": 2
+      },
+      {
+        "Region": "MA",
+        "City": "Hanover",
+        "Order Count": 0
+      },
+      {
+        "Region": "MO",
+        "City": null,
+        "Order Count": 7
+      },
+      {
+        "Region": "MO",
+        "City": "St. Louis",
+        "Order Count": 7
+      }
+    ]
+
+With the addition of the `ROLLUP` subclause, the results now include an extra item at the start of each region,
+giving the subtotal for that region.
+There is also another extra item at the very start of the results, giving the grand total for all regions.
+
+The order of the fields specified by the `ROLLUP` subclause determines the hierarchy of the super-aggregate items.
+The customer region is specified first, followed by the customer city; so the results are aggregated by region first,
+and then by city within each region.
+
+The grand total returns `null` as a value for the city and the region, and the subtotals return `null` as the
+value for the city, which may make the results hard to understand at first glance.
+A workaround for this is given in the next example.
+
+##### Example
+
+(Q3.R3) List the number of orders by customer region and city, with meaningful subtotals and grand total.
+
+    SELECT IFNULL(customer_region, "All regions") AS Region,
+           IFNULL(customer_city, "All cities") AS City,
+           COUNT(o.orderno) AS `Order Count`
+    FROM customers AS c LEFT OUTER JOIN orders AS o ON c.custid = o.custid
+    LET address_line = SPLIT(c.address.city, ","),
+        customer_city = TRIM(address_line[0]),
+        customer_region = TRIM(address_line[1])
+    GROUP BY ROLLUP(customer_region, customer_city)
+    ORDER BY customer_region ASC, customer_city ASC, `Order Count` DESC;
+
+Result:
+
+    [
+      {
+        "Region": "All regions",
+        "City": "All cities",
+        "Order Count": 9
+      },
+      {
+        "Region": "Italy",
+        "City": "All cities",
+        "Order Count": 0
+      },
+      {
+        "Region": "Italy",
+        "City": "Rome",
+        "Order Count": 0
+      },
+      {
+        "Region": "MA",
+        "City": "All cities",
+        "Order Count": 2
+      },
+      {
+        "Region": "MA",
+        "City": "Boston",
+        "Order Count": 2
+      },
+      {
+        "Region": "MA",
+        "City": "Hanover",
+        "Order Count": 0
+      },
+      {
+        "Region": "MO",
+        "City": "All cities",
+        "Order Count": 7
+      },
+      {
+        "Region": "MO",
+        "City": "St. Louis",
+        "Order Count": 7
+      }
+    ]
+
+This query uses the `IFNULL` function to populate the region and city fields with meaningful values for the
+super-aggregate items.
+This makes the results clearer and more readable.
+
+#### <a id="Cube">CUBE</a>
+
+The `CUBE` subclause is similar to the `ROLLUP` subclause, in that it returns extra super-aggregate items in the query
+results, giving subtotals and a grand total for the aggregate functions.
+Whereas `ROLLUP` returns a grand total and a hierarchy of subtotals based on the specified fields,
+the `CUBE` subclause returns a grand total and subtotals for every possible combination of the specified fields.
+
+The following example is a modification of Q3.R3 which illustrates the `CUBE` subclause.
+
+##### Example
+
+(Q3.C) List the number of orders by customer region and order date, with all possible subtotals and a grand total.
+
+    SELECT IFNULL(customer_region, "All regions") AS Region,
+           IFNULL(order_month, "All months") AS Month,
+           COUNT(o.orderno) AS `Order Count`
+    FROM customers AS c INNER JOIN orders AS o ON c.custid = o.custid
+    LET address_line = SPLIT(c.address.city, ","),
+        customer_region = TRIM(address_line[1]),
+        order_month = get_month(date(o.order_date))
+    GROUP BY CUBE(customer_region, order_month)
+    ORDER BY customer_region ASC, order_month ASC;
+
+Result:
+
+    [
+      {
+        "Region": "All regions",
+        "Order Count": 9,
+        "Month": "All months"
+      },
+      {
+        "Region": "All regions",
+        "Order Count": 1,
+        "Month": 4
+      },
+      {
+        "Region": "All regions",
+        "Order Count": 1,
+        "Month": 5
+      },
+      {
+        "Region": "All regions",
+        "Order Count": 1,
+        "Month": 6
+      },
+      {
+        "Region": "All regions",
+        "Order Count": 1,
+        "Month": 7
+      },
+      {
+        "Region": "All regions",
+        "Order Count": 1,
+        "Month": 8
+      },
+      {
+        "Region": "All regions",
+        "Order Count": 2,
+        "Month": 9
+      },
+      {
+        "Region": "All regions",
+        "Order Count": 2,
+        "Month": 10
+      },
+      {
+        "Region": "MA",
+        "Order Count": 2,
+        "Month": "All months"
+      },
+      {
+        "Region": "MA",
+        "Order Count": 1,
+        "Month": 7
+      },
+      {
+        "Region": "MA",
+        "Order Count": 1,
+        "Month": 8
+      },
+      {
+        "Region": "MO",
+        "Order Count": 7,
+        "Month": "All months"
+      },
+      {
+        "Region": "MO",
+        "Order Count": 1,
+        "Month": 4
+      },
+      {
+        "Region": "MO",
+        "Order Count": 1,
+        "Month": 5
+      },
+      {
+        "Region": "MO",
+        "Order Count": 1,
+        "Month": 6
+      },
+      {
+        "Region": "MO",
+        "Order Count": 2,
+        "Month": 9
+      },
+      {
+        "Region": "MO",
+        "Order Count": 2,
+        "Month": 10
+      }
+    ]
+
+To simplify the results, this query uses an inner join, so that customers who have not placed an order are not included
+in the totals.
+The query uses string functions to extract the region from each customer's address,
+and a temporal function to extract the year from the order date.
+
+The query uses the `CUBE` subclause with customer region and order month.
+This means that there are four possible aggregates to calculate:
+
+* All regions, all months
+* All regions, each month
+* Each region, all months
+* Each region, each month
+
+The results start with the grand total, showing the total number of orders across all regions for all months.
+This is followed by date subtotals, showing the number of orders across all regions for each month.
+Following that are the regional subtotals, showing the total number of orders for all months in each region;
+and the result items, giving the number of orders for each month in each region.
+
+The query also uses the `IFNULL` function to populate the region and date fields with meaningful values for the
+super-aggregate items.
+This makes the results clearer and more readable.
+
 ### <a id="Having_clauses">HAVING Clause</a>
 
 ##### HavingClause

[asterixdb] 04/05: Merge branch 'stabilization-3b6982ce7f'

Posted by mb...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mblow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git

commit 0e33c16a244eeac78203f2baf3c753859f773401
Merge: c884535 71cd417
Author: Dmitry Lychagin <dm...@couchbase.com>
AuthorDate: Thu Aug 12 11:02:40 2021 -0700

    Merge branch 'stabilization-3b6982ce7f'
    
    Change-Id: Ic5ceadf6cf4c2f5c2ac942470606823ec85118c5

 .../asterix-doc/src/main/markdown/sqlpp/3_query.md | 323 ++++++++++++++++++++-
 1 file changed, 322 insertions(+), 1 deletion(-)

[asterixdb] 05/05: Merge branch 'gerrit/cheshire-cat'

Posted by mb...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mblow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git

commit 9d5485a9e7f07a6193034292d82ae77c2ccabd4c
Merge: 2b6cf22 0e33c16
Author: Michael Blow <mi...@couchbase.com>
AuthorDate: Fri Aug 13 08:24:36 2021 -0400

    Merge branch 'gerrit/cheshire-cat'
    
    Change-Id: Ie6a4c591cf0581775f57979c62f69801c21edb9b

 .../subplan/InlineAllNtsInSubplanVisitor.java      |   2 +-
 .../query-ASTERIXDB-2947.1.ddl.sqlpp               |  29 ++
 .../query-ASTERIXDB-2947.2.update.sqlpp            |  35 +++
 .../query-ASTERIXDB-2947.3.query.sqlpp             |  30 ++
 .../query-ASTERIXDB-2947.3.adm                     |   2 +
 .../test/resources/runtimets/testsuite_sqlpp.xml   |   5 +
 .../asterix-doc/src/main/markdown/sqlpp/3_query.md | 323 ++++++++++++++++++++-
 asterixdb/asterix-server/pom.xml                   |   1 +
 .../appended-resources/supplemental-models.xml     |   7 +-
 .../hyracks/hyracks-storage-common/pom.xml         |   1 -
 hyracks-fullstack/pom.xml                          |   6 +
 11 files changed, 435 insertions(+), 6 deletions(-)

diff --cc asterixdb/asterix-server/pom.xml
index 98e3e59,0176ef8..afaad49
--- a/asterixdb/asterix-server/pom.xml
+++ b/asterixdb/asterix-server/pom.xml
@@@ -343,12 -254,8 +343,13 @@@
                  <aliasUrl>http://www.apache.org/licenses/LICENSE-2.0</aliasUrl>
                  <aliasUrl>https://www.apache.org/licenses/LICENSE-2.0.txt</aliasUrl>
                  <aliasUrl>http://www.apache.org/licenses/LICENSE-2.0.html</aliasUrl>
+                 <aliasUrl>https://www.apache.org/licenses/LICENSE-2.0.html</aliasUrl>
                  <aliasUrl>https://aws.amazon.com/apache2.0</aliasUrl>
 +                <aliasUrl>https://raw.githubusercontent.com/jorabin/KeePassJava2/KeePassJava2-2.1.4/LICENSE</aliasUrl>
 +                <aliasUrl>https://raw.githubusercontent.com/reactor/reactor-netty/v1.0.7/LICENSE</aliasUrl>
 +                <aliasUrl>https://raw.githubusercontent.com/reactor/reactor-core/v3.4.6/LICENSE</aliasUrl>
 +                <aliasUrl>https://raw.githubusercontent.com/codehaus/stax/master/dev/ASF2.0.txt</aliasUrl>
 +                <aliasUrl>https://bitbucket.org/connect2id/oauth-2.0-sdk-with-openid-connect-extensions/raw/5d13925b57ace092ea5e1131c338f464d85545f4/LICENSE.txt</aliasUrl>
                </aliasUrls>
                <metric>1</metric>
              </license>

[asterixdb] 01/05: [ASTERIXDB-2943][STO] Upgrade Snappy to v1.1.8.4

Posted by mb...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mblow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git

commit 790ce54088dd9bebc949b11ad86908abfb1399a1
Author: Wail Alkowaileet <wa...@gmail.com>
AuthorDate: Sat Aug 7 16:21:17 2021 -0700

    [ASTERIXDB-2943][STO] Upgrade Snappy to v1.1.8.4
    
    - user model changes: no
    - storage format changes: no
    - interface changes: no
    
    Details:
    - The current Snappy version v1.1.7.1 has a bug when running on aarch64
    - Also, it is not supported by the new Apple Silicon
      - Probably uses the Java-pure version
    - v1.1.8.4 solves those two issues
    
    Change-Id: Id82da58edbdee8a80a419fafcd474880a235e3aa
    Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/12703
    Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
    Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
    Reviewed-by: Michael Blow <mb...@apache.org>
---
 asterixdb/asterix-server/pom.xml                              | 1 +
 asterixdb/src/main/appended-resources/supplemental-models.xml | 7 ++++---
 hyracks-fullstack/hyracks/hyracks-storage-common/pom.xml      | 1 -
 hyracks-fullstack/pom.xml                                     | 6 ++++++
 4 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/asterixdb/asterix-server/pom.xml b/asterixdb/asterix-server/pom.xml
index ce943ad..0176ef8 100644
--- a/asterixdb/asterix-server/pom.xml
+++ b/asterixdb/asterix-server/pom.xml
@@ -254,6 +254,7 @@
                 <aliasUrl>http://www.apache.org/licenses/LICENSE-2.0</aliasUrl>
                 <aliasUrl>https://www.apache.org/licenses/LICENSE-2.0.txt</aliasUrl>
                 <aliasUrl>http://www.apache.org/licenses/LICENSE-2.0.html</aliasUrl>
+                <aliasUrl>https://www.apache.org/licenses/LICENSE-2.0.html</aliasUrl>
                 <aliasUrl>https://aws.amazon.com/apache2.0</aliasUrl>
               </aliasUrls>
               <metric>1</metric>
diff --git a/asterixdb/src/main/appended-resources/supplemental-models.xml b/asterixdb/src/main/appended-resources/supplemental-models.xml
index 79ece5e..4849544 100644
--- a/asterixdb/src/main/appended-resources/supplemental-models.xml
+++ b/asterixdb/src/main/appended-resources/supplemental-models.xml
@@ -287,9 +287,10 @@
       <properties>
         <!-- snappy-java is ALv2, and does not contain any embedded LICENSE or NOTICE file -->
         <!-- license override not needed, ALv2 is specified in its pom.xml -->
-        <!-- see https://github.com/xerial/snappy-java/blob/1.1.7.1/LICENSE -->
-        <license.ignoreMissingEmbeddedLicense>1.1.7.1</license.ignoreMissingEmbeddedLicense>
-        <license.ignoreMissingEmbeddedNotice>1.1.7.1</license.ignoreMissingEmbeddedNotice>
+        <!-- see https://github.com/xerial/snappy-java/blob/1.1.8.4/LICENSE -->
+        <license.ignoreMissingEmbeddedLicense>1.1.7.1,1.1.8.4</license.ignoreMissingEmbeddedLicense>
+        <license.ignoreMissingEmbeddedNotice>1.1.7.1,1.1.8.4</license.ignoreMissingEmbeddedNotice>
+        <license.ignoreLicenseOverride>1.1.7.1</license.ignoreLicenseOverride>
       </properties>
     </project>
   </supplement>
diff --git a/hyracks-fullstack/hyracks/hyracks-storage-common/pom.xml b/hyracks-fullstack/hyracks/hyracks-storage-common/pom.xml
index d0dfbf4..7ed6d34 100644
--- a/hyracks-fullstack/hyracks/hyracks-storage-common/pom.xml
+++ b/hyracks-fullstack/hyracks/hyracks-storage-common/pom.xml
@@ -69,7 +69,6 @@
     <dependency>
       <groupId>org.xerial.snappy</groupId>
       <artifactId>snappy-java</artifactId>
-      <version>1.1.7.1</version>
     </dependency>
     <dependency>
       <groupId>com.google.guava</groupId>
diff --git a/hyracks-fullstack/pom.xml b/hyracks-fullstack/pom.xml
index 09ae228..81970b4 100644
--- a/hyracks-fullstack/pom.xml
+++ b/hyracks-fullstack/pom.xml
@@ -73,6 +73,7 @@
     <hadoop.version>2.8.5</hadoop.version>
     <jacoco.version>0.7.6.201602180812</jacoco.version>
     <log4j.version>2.14.1</log4j.version>
+    <snappy.version>1.1.8.4</snappy.version>
 
     <implementation.title>Apache Hyracks and Algebricks - ${project.name}</implementation.title>
     <implementation.url>https://asterixdb.apache.org/</implementation.url>
@@ -331,6 +332,11 @@
         <artifactId>powermock-core</artifactId>
         <version>2.0.9</version>
       </dependency>
+      <dependency>
+        <groupId>org.xerial.snappy</groupId>
+        <artifactId>snappy-java</artifactId>
+        <version>${snappy.version}</version>
+      </dependency>
     </dependencies>
   </dependencyManagement>
   <build>