asterixdb-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Till Westmann (Code Review)" <do-not-re...@asterixdb.incubator.apache.org>
Subject Change in hyracks[master]: PLEASE EDIT to provide a meaningful commit message!
Date Wed, 09 Dec 2015 17:54:02 GMT
Till Westmann has uploaded a new change for review.

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

Change subject: PLEASE EDIT to provide a meaningful commit message!
......................................................................

PLEASE EDIT to provide a meaningful commit message!

The following commits from your working branch will be included:

commit c444772d766a7bd24a21d5b21a076439c54e4298
Merge: 45af08a 4a69238
Author: Till Westmann <tillw@apache.org>
Date:   Thu Dec 3 16:52:09 2015 -0800

    merge release-0.2.17

commit 4a69238d2c8626fc9b8f3beeb03b7df4e62a827d
Author: Ian Maxon <imaxon@apache.org>
Date:   Mon Nov 23 16:38:03 2015 -0800

    Fix ASTERIXDB-1108

    Just adding some missing licenses, for jQuery plugins and text examples in
    the Hyracks textserver examples.

    Reviewed-on: https://asterix-gerrit.ics.uci.edu/513
    Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
    Reviewed-by: Till Westmann <tillw@apache.org>

commit 2378ed680bfb50d4312b5f65ce41731e6a456db2
Author: Ian Maxon <imaxon@apache.org>
Date:   Tue Nov 24 13:04:19 2015 -0800

    Fix ASTERIXDB-1104

    This changes the wrapper hyracks-ecosystem POM to a name that makes
    more sense for distributing as a source tarball. Nothing depends on
    this artifact so changing its name should not be a big deal.

    Reviewed-on: https://asterix-gerrit.ics.uci.edu/516
    Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
    Reviewed-by: Till Westmann <tillw@apache.org>

commit 0980f4c7e316678bf22f5ea1dfb3021e6b683de4
Author: Ildar Absalyamov <ildar.absalyamov@gmail.com>
Date:   Wed Nov 11 17:27:38 2015 -0800

    ASTERIXDB-1109: Fixed deletion of records from open secondary index
     - Changed printers for idx\dataset insert\delete operators
     - Fixed visiting policy for idx insert\delete operator

    Reviewed-on: https://asterix-gerrit.ics.uci.edu/462
    Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
    Reviewed-by: Taewoo Kim <wangsaeu@gmail.com>
    Reviewed-by: Yingyi Bu <buyingyi@gmail.com>

Change-Id: I23fddb0dc306ed78866ba17a7e60e808786314c5
---
M LICENSE
M algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/expressions/AbstractFunctionCallExpression.java
M algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/logical/IndexInsertDeleteOperator.java
M algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/prettyprint/LogicalOperatorPrettyPrintVisitor.java
M algebricks/pom.xml
M hyracks/pom.xml
M pom.xml
7 files changed, 404 insertions(+), 22 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/hyracks refs/changes/43/543/1

diff --git a/LICENSE b/LICENSE
index 868d71d..e906e66 100644
--- a/LICENSE
+++ b/LICENSE
@@ -299,3 +299,348 @@
    externally maintained libraries used by this software which have their
    own licenses; we recommend you read them, as their terms may differ from
    the terms above.
+
+and also the Hyracks adminconsole resource at:
+hyracks/hyracks-control/hyracks-control-cc/src/main/resources/static/javascript/jquery/plugins/jquery.getParams.js
+
+
+   Copyright (c) 2006 Mathias Bank (http://www.mathias-bank.de)
+   Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
+   and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
+
+   Thanks to Hinnerk Ruemenapf - http://hinnerk.ruemenapf.de/ for bug reporting and fixing.
+
+and also the Hyracks adminconsole resource at:
+hyracks/hyracks-control/hyracks-control-cc/src/main/resources/static/javascript/jquery/plugins/jquery.timer.js
+
+   jquery.timer.js
+
+   Copyright (c) 2011 Jason Chavannes <jason.chavannes@gmail.com>
+
+   http://jchavannes.com/jquery-timer
+
+   Permission is hereby granted, free of charge, to any person
+   obtaining a copy of this software and associated documentation
+   files (the "Software"), to deal in the Software without
+   restriction, including without limitation the rights to use, copy,
+   modify, merge, publish, distribute, sublicense, and/or sell copies
+   of the Software, and to permit persons to whom the Software is
+   furnished to do so, subject to the following conditions:
+
+   The above copyright notice and this permission notice shall be
+   included in all copies or substantial portions of the Software.
+
+   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+   NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+   BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+   ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+   CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+   SOFTWARE.
+
+also the test data for the Hyracks textserver examples at
+hyracks/hyracks-examples/text-example/textserver/data/file1.txt and
+hyracks/hyracks-examples/text-example/textserver/data/file2.txt
+
+THE FULL PROJECT GUTENBERG LICENSE
+
+PLEASE READ THIS BEFORE YOU DISTRIBUTE OR USE THIS WORK
+
+To protect the Project Gutenberg-tm mission of promoting the free distribution
+of electronic works, by using or distributing this work (or any other work
+associated in any way with the phrase "Project Gutenberg"), you agree to comply
+with all the terms of the Full Project Gutenberg-tm License available with this
+file or online at www.gutenberg.org/license.
+
+Section 1.
+General Terms of Use and Redistributing Project Gutenberg-tm electronic works
+
+1.A. By reading or using any part of this Project Gutenberg-tm
+electronic work, you indicate that you have read, understand, agree to and
+accept all the terms of this license and intellectual property
+(trademark/copyright) agreement. If you do not agree to abide by all the terms
+of this agreement, you must cease using and return or destroy all copies of
+Project Gutenberg-tm electronic works in your possession. If you paid a fee for
+obtaining a copy of or access to a Project Gutenberg-tm electronic work and you
+do not agree to be bound by the terms of this agreement, you may obtain a
+refund from the person or entity to whom you paid the fee as set forth in
+paragraph 1.E.8.
+
+1.B. "Project Gutenberg" is a registered trademark. It may only be used on or
+associated in any way with an electronic work by people who agree to be bound
+by the terms of this agreement. There are a few things that you can do with
+most Project Gutenberg-tm electronic works even without complying with the full
+terms of this agreement. See paragraph 1.C below. There are a lot of things you
+can do with Project Gutenberg-tm electronic works if you follow the terms of
+this agreement and help preserve free future access to Project Gutenberg-tm
+electronic works. See paragraph 1.E below.
+
+1.C. The Project Gutenberg Literary Archive Foundation ("the Foundation" or
+PGLAF), owns a compilation copyright in the collection of Project Gutenberg-tm
+electronic works. Nearly all the individual works in the collection are in the
+public domain in the United States. If an individual work is unprotected by
+copyright law in the United States and you are located in the United States, we
+do not claim a right to prevent you from copying, distributing, performing,
+displaying or creating derivative works based on the work as long as all
+references to Project Gutenberg are removed. Of course, we hope that you will
+support the Project Gutenberg-tm mission of promoting free access to electronic
+works by freely sharing Project Gutenberg-tm works in compliance with the terms
+of this agreement for keeping the Project Gutenberg-tm name associated with the
+work. You can easily comply with the terms of this agreement by keeping this
+work in the same format with its attached full Project Gutenberg-tm License
+when you share it without charge with others.
+
+[*] This particular work is one of the few individual works protected by
+copyright law in the United States and most of the remainder of the world,
+included in the Project Gutenberg collection with the permission of the
+copyright holder. Information on the copyright owner for this particular work
+and the terms of use imposed by the copyright holder on this work are set forth
+at the beginning of this work.
+
+1.D. The copyright laws of the place where you are located also govern what you
+can do with this work. Copyright laws in most countries are in a constant state
+of change. If you are outside the United States, check the laws of your country
+in addition to the terms of this agreement before downloading, copying,
+displaying, performing, distributing or creating derivative works based on this
+work or any other Project Gutenberg-tm work. The Foundation makes no
+representations concerning the copyright status of any work in any country
+outside the United States.
+
+1.E. Unless you have removed all references to Project Gutenberg:
+
+1.E.1. The following sentence, with active links to, or other immediate access
+to, the full Project Gutenberg-tm License must appear prominently whenever any
+copy of a Project Gutenberg-tm work (any work on which the phrase "Project
+Gutenberg" appears, or with which the phrase "Project Gutenberg" is associated)
+is accessed, displayed, performed, viewed, copied or distributed:
+
+This eBook is for the use of anyone anywhere in the United States and most
+other parts of the world at no cost and with almost no restrictions whatsoever.
+You may copy it, give it away or re-use it under the terms of the Project
+Gutenberg License included with this eBook or online at www.gutenberg.org. If
+you are not located in the United States, you'll have to check the laws of the
+country where you are located before using this ebook.
+
+1.E.2. If an individual Project Gutenberg-tm electronic work is derived from
+texts not protected by U.S. copyright law (does not contain a notice indicating
+that it is posted with permission of the copyright holder), the work can be
+copied and distributed to anyone in the United States without paying any fees
+or charges. If you are redistributing or providing access to a work with the
+phrase "Project Gutenberg" associated with or appearing on the work, you must
+comply either with the requirements of paragraphs 1.E.1 through 1.E.7 or obtain
+permission for the use of the work and the Project Gutenberg-tm trademark as
+set forth in paragraphs 1.E.8 or 1.E.9.
+
+1.E.3. If an individual Project Gutenberg-tm electronic work is posted with the
+permission of the copyright holder, your use and distribution must comply with
+both paragraphs 1.E.1 through 1.E.7 and any additional terms imposed by the
+copyright holder. Additional terms will be linked to the Project Gutenberg-tm
+License for all works posted with the permission of the copyright holder found
+at the beginning of this work.
+
+1.E.4. Do not unlink or detach or remove the full Project Gutenberg-tm License
+terms from this work, or any files containing a part of this work or any other
+work associated with Project Gutenberg-tm.
+
+1.E.5. Do not copy, display, perform, distribute or redistribute this
+electronic work, or any part of this electronic work, without prominently
+displaying the sentence set forth in paragraph 1.E.1 with active links or
+immediate access to the full terms of the Project Gutenberg-tm License.
+
+1.E.6. You may convert to and distribute this work in any binary, compressed,
+marked up, nonproprietary or proprietary form, including any word processing or
+hypertext form. However, if you provide access to or distribute copies of a
+Project Gutenberg-tm work in a format other than "Plain Vanilla ASCII" or other
+format used in the official version posted on the official Project Gutenberg-tm
+web site (www.gutenberg.org), you must, at no additional cost, fee or expense
+to the user, provide a copy, a means of exporting a copy, or a means of
+obtaining a copy upon request, of the work in its original "Plain Vanilla
+ASCII" or other form. Any alternate format must include the full Project
+Gutenberg-tm License as specified in paragraph 1.E.1.
+
+1.E.7. Do not charge a fee for access to, viewing, displaying, performing,
+copying or distributing any Project Gutenberg-tm works unless you comply with
+paragraph 1.E.8 or 1.E.9.
+
+1.E.8. You may charge a reasonable fee for copies of or providing access to or
+distributing Project Gutenberg-tm electronic works provided that
+
+You pay a royalty fee of 20% of the gross profits you derive from the use of
+Project Gutenberg-tm works calculated using the method you already use to
+calculate your applicable taxes. The fee is owed to the owner of the Project
+Gutenberg-tm trademark, but he has agreed to donate royalties under this
+paragraph to the Project Gutenberg Literary Archive Foundation. Royalty
+payments must be paid within 60 days following each date on which you prepare
+(or are legally required to prepare) your periodic tax returns. Royalty
+payments should be clearly marked as such and sent to the Project Gutenberg
+Literary Archive Foundation at the address specified in Section 4, "Information
+about donations to the Project Gutenberg Literary Archive Foundation." You
+provide a full refund of any money paid by a user who notifies you in writing
+(or by e-mail) within 30 days of receipt that s/he does not agree to the terms
+of the full Project Gutenberg-tm License. You must require such a user to
+return or destroy all copies of the works possessed in a physical medium and
+discontinue all use of and all access to other copies of Project Gutenberg-tm
+works.  You provide, in accordance with paragraph 1.F.3, a full refund of any
+money paid for a work or a replacement copy, if a defect in the electronic work
+is discovered and reported to you within 90 days of receipt of the work.  You
+comply with all other terms of this agreement for free distribution of Project
+Gutenberg-tm works.  1.E.9. If you wish to charge a fee or distribute a Project
+Gutenberg-tm electronic work or group of works on different terms than are set
+forth in this agreement, you must obtain permission in writing from both the
+Project Gutenberg Literary Archive Foundation and The Project Gutenberg
+Trademark LLC, the owner of the Project Gutenberg-tm trademark. Contact the
+Foundation as set forth in Section 3 below.
+
+1.F.
+
+1.F.1. Project Gutenberg volunteers and employees expend considerable effort to
+identify, do copyright research on, transcribe and proofread works not
+protected by U.S. copyright law in creating the Project Gutenberg-tm
+collection. Despite these efforts, Project Gutenberg-tm electronic works, and
+the medium on which they may be stored, may contain "Defects," such as, but not
+limited to, incomplete, inaccurate or corrupt data, transcription errors, a
+copyright or other intellectual property infringement, a defective or damaged
+disk or other medium, a computer virus, or computer codes that damage or cannot
+be read by your equipment.
+
+1.F.2. LIMITED WARRANTY, DISCLAIMER OF DAMAGES - Except for the "Right of
+Replacement or Refund" described in paragraph 1.F.3, the Project Gutenberg
+Literary Archive Foundation, the owner of the Project Gutenberg-tm trademark,
+and any other party distributing a Project Gutenberg-tm electronic work under
+this agreement, disclaim all liability to you for damages, costs and expenses,
+including legal fees. YOU AGREE THAT YOU HAVE NO REMEDIES FOR NEGLIGENCE,
+STRICT LIABILITY, BREACH OF WARRANTY OR BREACH OF CONTRACT EXCEPT THOSE
+PROVIDED IN PARAGRAPH 1.F.3. YOU AGREE THAT THE FOUNDATION, THE TRADEMARK
+OWNER, AND ANY DISTRIBUTOR UNDER THIS AGREEMENT WILL NOT BE LIABLE TO YOU FOR
+ACTUAL, DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE OR INCIDENTAL DAMAGES EVEN IF
+YOU GIVE NOTICE OF THE POSSIBILITY OF SUCH DAMAGE.
+
+1.F.3. LIMITED RIGHT OF REPLACEMENT OR REFUND - If you discover a defect in
+this electronic work within 90 days of receiving it, you can receive a refund
+of the money (if any) you paid for it by sending a written explanation to the
+person you received the work from. If you received the work on a physical
+medium, you must return the medium with your written explanation. The person or
+entity that provided you with the defective work may elect to provide a
+replacement copy in lieu of a refund. If you received the work electronically,
+the person or entity providing it to you may choose to give you a second
+opportunity to receive the work electronically in lieu of a refund. If the
+second copy is also defective, you may demand a refund in writing without
+further opportunities to fix the problem.
+
+1.F.4. Except for the limited right of replacement or refund set forth in
+paragraph 1.F.3, this work is provided to you 'AS-IS', WITH NO OTHER WARRANTIES
+OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF
+MERCHANTABILITY OR FITNESS FOR ANY PURPOSE.
+
+1.F.5. Some states do not allow disclaimers of certain implied warranties or
+the exclusion or limitation of certain types of damages. If any disclaimer or
+limitation set forth in this agreement violates the law of the state applicable
+to this agreement, the agreement shall be interpreted to make the maximum
+disclaimer or limitation permitted by the applicable state law. The invalidity
+or unenforceability of any provision of this agreement shall not void the
+remaining provisions.
+
+1.F.6. INDEMNITY - You agree to indemnify and hold the Foundation, the
+trademark owner, any agent or employee of the Foundation, anyone providing
+copies of Project Gutenberg-tm electronic works in accordance with this
+agreement, and any volunteers associated with the production, promotion and
+distribution of Project Gutenberg-tm electronic works, harmless from all
+liability, costs and expenses, including legal fees, that arise directly or
+indirectly from any of the following which you do or cause to occur: (a)
+distribution of this or any Project Gutenberg-tm work, (b) alteration,
+modification, or additions or deletions to any Project Gutenberg-tm work, and
+(c) any Defect you cause.
+
+Section 2.
+Information about the Mission of Project Gutenberg-tm Project
+
+Gutenberg-tm is synonymous with the free distribution of electronic works in
+formats readable by the widest variety of computers including obsolete, old,
+middle-aged and new computers. It exists because of the efforts of hundreds of
+volunteers and donations from people in all walks of life.
+
+Volunteers and financial support to provide volunteers with the assistance they
+need are critical to reaching Project Gutenberg-tm's goals and ensuring that
+the Project Gutenberg-tm collection will remain freely available for
+generations to come. In 2001, the Project Gutenberg Literary Archive Foundation
+was created to provide a secure and permanent future for Project Gutenberg-tm
+and future generations. To learn more about the Project Gutenberg Literary
+Archive Foundation and how your efforts and donations can help, see Sections 3
+and 4 and the Foundation information page at www.gutenberg.org
+
+Section 3.
+Information about the Project Gutenberg Literary Archive Foundation
+
+The Project Gutenberg Literary Archive Foundation is a non profit 501(c)(3)
+educational corporation organized under the laws of the state of Mississippi
+and granted tax exempt status by the Internal Revenue Service. The Foundation's
+EIN or federal tax identification number is 64-6221541. Contributions to the
+Project Gutenberg Literary Archive Foundation are tax deductible to the full
+extent permitted by U.S. federal laws and your state's laws.
+
+The Foundation's principal office is located at 4557 Melan Dr. S. Fairbanks,
+AK, 99712., but its volunteers and employees are scattered throughout numerous
+locations. Its business office is located at 809 North 1500 West, Salt Lake
+City, UT 84116, (801) 596-1887. Email contact links and up to date contact
+information can be found at the Foundation's web site and official page at
+www.gutenberg.org/contact
+
+For additional contact information:
+    Dr. Gregory B. Newby Chief Executive and Director
+    gbnewby@pglaf.org
+
+Section 4.
+Information about Donations to the Project Gutenberg Literary Archive
+
+Foundation Project Gutenberg-tm depends upon and cannot survive without
+wide spread public support and donations to carry out its mission of
+increasing the number of public domain and licensed works that can be
+freely distributed in machine readable form accessible by the widest array
+of equipment including outdated equipment. Many small donations ($1 to
+$5,000) are particularly important to maintaining tax exempt status with
+the IRS.
+
+The Foundation is committed to complying with the laws regulating charities and
+charitable donations in all 50 states of the United States. Compliance
+requirements are not uniform and it takes a considerable effort, much paperwork
+and many fees to meet and keep up with these requirements. We do not solicit
+donations in locations where we have not received written confirmation of
+compliance. To SEND DONATIONS or determine the status of compliance for any
+particular state visit www.gutenberg.org/donate
+
+While we cannot and do not solicit contributions from states where we have not
+met the solicitation requirements, we know of no prohibition against accepting
+unsolicited donations from donors in such states who approach us with offers to
+donate.
+
+International donations are gratefully accepted, but we cannot make any
+statements concerning tax treatment of donations received from outside the
+United States. U.S. laws alone swamp our small staff.
+
+Please check the Project Gutenberg Web pages for current donation methods and
+addresses. Donations are accepted in a number of other ways including checks,
+online payments and credit card donations. To donate, please visit:
+www.gutenberg.org/donate
+
+Section 5.
+General Information About Project Gutenberg-tm electronic works.
+
+Professor Michael S. Hart was the originator of the Project Gutenberg-tm
+concept of a library of electronic works that could be freely shared with
+anyone. For forty years, he produced and distributed Project Gutenberg-tm
+eBooks with only a loose network of volunteer support.
+
+Project Gutenberg-tm eBooks are often created from several printed editions,
+all of which are confirmed as not protected by copyright in the U.S. unless a
+copyright notice is included. Thus, we do not necessarily keep eBooks in
+compliance with any particular paper edition.
+
+Most people start at our Web site which has the main PG search facility:
+www.gutenberg.org
+
+This Web site includes information about Project Gutenberg-tm, including how to
+make donations to the Project Gutenberg Literary Archive Foundation, how to
+help produce our new eBooks, and how to subscribe to our email newsletter to
+hear about new eBooks.
+
diff --git a/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/expressions/AbstractFunctionCallExpression.java
b/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/expressions/AbstractFunctionCallExpression.java
index bab23f1..cfdd6a5 100644
--- a/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/expressions/AbstractFunctionCallExpression.java
+++ b/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/expressions/AbstractFunctionCallExpression.java
@@ -27,7 +27,6 @@
 
 import org.apache.commons.lang3.mutable.Mutable;
 import org.apache.commons.lang3.mutable.MutableObject;
-
 import org.apache.hyracks.algebricks.core.algebra.base.EquivalenceClass;
 import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression;
 import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag;
@@ -50,7 +49,7 @@
     final private List<Mutable<ILogicalExpression>> arguments;
     private Object[] opaqueParameters;
     private final FunctionKind kind;
-    private Map<Object, IExpressionAnnotation> annotationMap = new HashMap<Object,
IExpressionAnnotation>();
+    private final Map<Object, IExpressionAnnotation> annotationMap = new HashMap<Object,
IExpressionAnnotation>();
 
     public AbstractFunctionCallExpression(FunctionKind kind, IFunctionInfo finfo,
             List<Mutable<ILogicalExpression>> arguments) {
@@ -110,6 +109,7 @@
         return arguments;
     }
 
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
         sb.append("function-call: " + finfo.getFunctionIdentifier() + ", Args:[");
@@ -124,6 +124,18 @@
             sb.append(ref.getValue());
         }
         sb.append("]");
+        if (opaqueParameters != null) {
+            sb.append(", OpaqueArgs:[");
+            first = true;
+            for (Object param : opaqueParameters) {
+                if (first) {
+                    first = false;
+                } else {
+                    sb.append(", ");
+                }
+                sb.append(param);
+            }
+        }
         return sb.toString();
     }
 
@@ -172,7 +184,8 @@
     }
 
     @Override
-    public void getConstraintsForOuterJoin(Collection<FunctionalDependency> fds, Collection<LogicalVariable>
outerVars) {
+    public void getConstraintsForOuterJoin(Collection<FunctionalDependency> fds,
+            Collection<LogicalVariable> outerVars) {
         FunctionIdentifier funId = getFunctionIdentifier();
         if (funId.equals(AlgebricksBuiltinFunctions.AND)) {
             for (Mutable<ILogicalExpression> a : arguments) {
@@ -356,4 +369,4 @@
         return true;
     }
 
-}
\ No newline at end of file
+}
diff --git a/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/logical/IndexInsertDeleteOperator.java
b/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/logical/IndexInsertDeleteOperator.java
index e9e3b01..378b916 100644
--- a/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/logical/IndexInsertDeleteOperator.java
+++ b/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/logical/IndexInsertDeleteOperator.java
@@ -22,13 +22,11 @@
 import java.util.List;
 
 import org.apache.commons.lang3.mutable.Mutable;
-
 import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException;
 import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression;
 import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag;
 import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable;
 import org.apache.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment;
-import org.apache.hyracks.algebricks.core.algebra.metadata.IDataSource;
 import org.apache.hyracks.algebricks.core.algebra.metadata.IDataSourceIndex;
 import org.apache.hyracks.algebricks.core.algebra.operators.logical.InsertDeleteOperator.Kind;
 import org.apache.hyracks.algebricks.core.algebra.properties.VariablePropagationPolicy;
@@ -79,6 +77,18 @@
                 b = true;
             }
         }
+        if (filterExpr != null) {
+            if (visitor.transform(filterExpr)) {
+                b = true;
+            }
+        }
+        if (additionalFilteringExpressions != null) {
+            for (int i = 0; i < additionalFilteringExpressions.size(); i++) {
+                if (visitor.transform(additionalFilteringExpressions.get(i))) {
+                    b = true;
+                }
+            }
+        }
         return b;
     }
 
diff --git a/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/prettyprint/LogicalOperatorPrettyPrintVisitor.java
b/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/prettyprint/LogicalOperatorPrettyPrintVisitor.java
index 17f2285..686fcf7 100644
--- a/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/prettyprint/LogicalOperatorPrettyPrintVisitor.java
+++ b/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/prettyprint/LogicalOperatorPrettyPrintVisitor.java
@@ -327,10 +327,17 @@
     @Override
     public String visitInsertDeleteOperator(InsertDeleteOperator op, Integer indent) throws
AlgebricksException {
         StringBuilder buffer = new StringBuilder();
-        String header = op.getOperation() == Kind.INSERT ? "insert into " : "delete from
";
-        addIndent(buffer, indent).append(header).append(op.getDataSource()).append(" from
")
-                .append(op.getPayloadExpression().getValue().accept(exprVisitor, indent)).append("
partitioned by ");
+        if (op.getOperation() == Kind.INSERT)
+            addIndent(buffer, indent).append("insert ")
+                    .append(op.getPayloadExpression().getValue().accept(exprVisitor, indent)).append("
into ");
+        else
+            addIndent(buffer, indent).append("delete from ");
+        buffer.append(op.getDataSource()).append(" partitioned by ");
         pprintExprList(op.getPrimaryKeyExpressions(), buffer, indent);
+        if (op.getAdditionalFilteringExpressions() != null) {
+            buffer.append(" filtered by ");
+            pprintExprList(op.getAdditionalFilteringExpressions(), buffer, indent);
+        }
         if (op.isBulkload()) {
             buffer.append(" [bulkload]");
         }
@@ -341,10 +348,18 @@
     public String visitIndexInsertDeleteOperator(IndexInsertDeleteOperator op, Integer indent)
             throws AlgebricksException {
         StringBuilder buffer = new StringBuilder();
-        String header = op.getOperation() == Kind.INSERT ? "insert into " : "delete from
";
-        addIndent(buffer, indent).append(header).append(op.getIndexName()).append(" on ")
-                .append(op.getDataSourceIndex().getDataSource()).append(" from ");
+        addIndent(buffer, indent).append(op.getOperation() == Kind.INSERT ? "insert " : "delete
");
         pprintExprList(op.getSecondaryKeyExpressions(), buffer, indent);
+        buffer.append(op.getOperation() == Kind.INSERT ? " into " : " from ").append(op.getIndexName()).append("
on ")
+                .append(op.getDataSourceIndex().getDataSource()).append(" partitioned by
");
+        pprintExprList(op.getPrimaryKeyExpressions(), buffer, indent);
+        if (op.getFilterExpression() != null || op.getAdditionalFilteringExpressions() !=
null) {
+            buffer.append(" filtered by ");
+            if (op.getFilterExpression() != null)
+                buffer.append(op.getFilterExpression().getValue().accept(exprVisitor, indent));
+            if (op.getAdditionalFilteringExpressions() != null)
+                pprintExprList(op.getAdditionalFilteringExpressions(), buffer, indent);
+        }
         if (op.isBulkload()) {
             buffer.append(" [bulkload]");
         }
diff --git a/algebricks/pom.xml b/algebricks/pom.xml
index a59edba..b3d54d0 100644
--- a/algebricks/pom.xml
+++ b/algebricks/pom.xml
@@ -27,7 +27,7 @@
 
   <parent>
     <groupId>org.apache.hyracks</groupId>
-    <artifactId>fullstack</artifactId>
+    <artifactId>apache-asterixdb-hyracks</artifactId>
     <version>0.2.17-SNAPSHOT</version>
   </parent>
 
diff --git a/hyracks/pom.xml b/hyracks/pom.xml
index 7af92c7..f68626c 100644
--- a/hyracks/pom.xml
+++ b/hyracks/pom.xml
@@ -27,7 +27,7 @@
 
   <parent>
     <groupId>org.apache.hyracks</groupId>
-    <artifactId>fullstack</artifactId>
+    <artifactId>apache-asterixdb-hyracks</artifactId>
     <version>0.2.17-SNAPSHOT</version>
   </parent>
 
diff --git a/pom.xml b/pom.xml
index 368ba2a..f627937 100644
--- a/pom.xml
+++ b/pom.xml
@@ -18,14 +18,13 @@
  !-->
 
 
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <groupId>org.apache.hyracks</groupId>
-    <artifactId>fullstack</artifactId>
-    <version>0.2.17-SNAPSHOT</version>
-    <packaging>pom</packaging>
-    <name>hyracks-ecosystem-full-stack</name>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.apache.hyracks</groupId>
+  <artifactId>apache-asterixdb-hyracks</artifactId>
+  <version>0.2.17-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>hyracks-ecosystem-full-stack</name>
 
     <parent>
         <groupId>org.apache</groupId>

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I23fddb0dc306ed78866ba17a7e60e808786314c5
Gerrit-PatchSet: 1
Gerrit-Project: hyracks
Gerrit-Branch: master
Gerrit-Owner: Till Westmann <tillw@apache.org>

Mime
View raw message