This commit breaks the build.

Tommaso could you please have a look?

in oak-core

Tests in error:
 
sql1(org.apache.jackrabbit.oak.plugins.index.property.OrderedIndexQueryTest):
Results in target/oajopi.property.OrderedIndexQueryTest_sql1.txt don't
match expected results in
/Users/dgiannel/work/sources/apache/jackrabbit-oak/oak-core/target/test-classes/org/apache/jackrabbit/oak/query/sql1.txt;
compare the files for details; got=(..)
 
sql1(org.apache.jackrabbit.oak.plugins.index.property.PropertyIndexQueryTest):
Results in target/oajopi.property.PropertyIndexQueryTest_sql1.txt don't
match expected results in
/Users/dgiannel/work/sources/apache/jackrabbit-oak/oak-core/target/test-classes/org/apache/jackrabbit/oak/query/sql1.txt;
compare the files for details; got=(..)
  sql1(org.apache.jackrabbit.oak.query.index.TraversingIndexQueryTest):
Results in
target/org.apache.jackrabbit.oak.query.index.TraversingIndexQueryTest_sql1.txt
don't match expected results in
/Users/dgiannel/work/sources/apache/jackrabbit-oak/oak-core/target/test-classes/org/apache/jackrabbit/oak/query/sql1.txt;
compare the files for details; got=(..)

On 15/12/2015 09:59, [email protected] wrote:
> Author: tommaso
> Date: Tue Dec 15 09:59:57 2015
> New Revision: 1720106
>
> URL: http://svn.apache.org/viewvc?rev=1720106&view=rev
> Log:
> OAK-2509 - support for facets in query engine
>
> Added:
>     
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/FacetColumnImpl.java
>    (with props)
> Modified:
>     
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/QueryImpl.java
>     
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/SQL2Parser.java
>     
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/AstElementFactory.java
>     
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/SelectorImpl.java
>     
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/package-info.java
>
> Modified: 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/QueryImpl.java
> URL: 
> http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/QueryImpl.java?rev=1720106&r1=1720105&r2=1720106&view=diff
> ==============================================================================
> --- 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/QueryImpl.java
>  (original)
> +++ 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/QueryImpl.java
>  Tue Dec 15 09:59:57 2015
> @@ -119,6 +119,11 @@ public class QueryImpl implements Query
>      public static final String REP_EXCERPT = "rep:excerpt";
>  
>      /**
> +     * The "rep:facet" pseudo-property.
> +     */
> +    public static final String REP_FACET = "rep:facet";
> +
> +    /**
>       * The "oak:explainScore" pseudo-property.
>       */
>      public static final String OAK_SCORE_EXPLANATION = 
> "oak:scoreExplanation";
>
> Modified: 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/SQL2Parser.java
> URL: 
> http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/SQL2Parser.java?rev=1720106&r1=1720105&r2=1720106&view=diff
> ==============================================================================
> --- 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/SQL2Parser.java
>  (original)
> +++ 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/SQL2Parser.java
>  Tue Dec 15 09:59:57 2015
> @@ -856,7 +856,7 @@ public class SQL2Parser {
>                  if (readIf("*")) {
>                      column.propertyName = null;
>                  } else if (readIf("EXCERPT")) {
> -                    column.propertyName = "rep:excerpt";
> +                    column.propertyName = QueryImpl.REP_EXCERPT;
>                      read("(");
>                      if (!readIf(")")) {
>                          if (!readIf(".")) {
> @@ -867,12 +867,12 @@ public class SQL2Parser {
>                      readOptionalAlias(column);
>                  } else {                    
>                      column.propertyName = readName();
> -                    if (column.propertyName.equals("rep:spellcheck")) {
> +                    if 
> (column.propertyName.equals(QueryImpl.REP_SPELLCHECK)) {
>                          if (readIf("(")) {
>                              read(")");
>                              column.propertyName = ":spellcheck";
>                          }
> -                        readOptionalAlias(column);                        
> +                        readOptionalAlias(column);
>                      } else if (readIf(".")) {
>                          column.selectorName = column.propertyName;
>                          if (readIf("*")) {
>
> Modified: 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/AstElementFactory.java
> URL: 
> http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/AstElementFactory.java?rev=1720106&r1=1720105&r2=1720106&view=diff
> ==============================================================================
> --- 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/AstElementFactory.java
>  (original)
> +++ 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/AstElementFactory.java
>  Tue Dec 15 09:59:57 2015
> @@ -20,6 +20,7 @@ import java.util.ArrayList;
>  import javax.annotation.Nonnull;
>  
>  import org.apache.jackrabbit.oak.api.PropertyValue;
> +import org.apache.jackrabbit.oak.query.QueryImpl;
>  import org.apache.jackrabbit.oak.spi.state.NodeState;
>  import org.slf4j.Logger;
>  import org.slf4j.LoggerFactory;
> @@ -52,7 +53,11 @@ public class AstElementFactory {
>      }
>  
>      public ColumnImpl column(String selectorName, String propertyName, 
> String columnName) {
> -        return new ColumnImpl(selectorName, propertyName, columnName);
> +        if (propertyName.startsWith(QueryImpl.REP_FACET)) {
> +            return new FacetColumnImpl(selectorName, propertyName, 
> columnName);
> +        } else {
> +            return new ColumnImpl(selectorName, propertyName, columnName);
> +        }
>      }
>  
>      public ComparisonImpl comparison(DynamicOperandImpl operand1, Operator 
> operator, StaticOperandImpl operand2) {
>
> Added: 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/FacetColumnImpl.java
> URL: 
> http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/FacetColumnImpl.java?rev=1720106&view=auto
> ==============================================================================
> --- 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/FacetColumnImpl.java
>  (added)
> +++ 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/FacetColumnImpl.java
>  Tue Dec 15 09:59:57 2015
> @@ -0,0 +1,36 @@
> +/*
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements.  See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership.  The ASF licenses this file
> + * to you under the Apache License, Version 2.0 (the
> + * "License"); you may not use this file except in compliance
> + * with the License.  You may obtain a copy of the License at
> + *
> + *   http://www.apache.org/licenses/LICENSE-2.0
> + *
> + * Unless required by applicable law or agreed to in writing,
> + * software distributed under the License is distributed on an
> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> + * KIND, either express or implied.  See the License for the
> + * specific language governing permissions and limitations
> + * under the License.
> + */
> +package org.apache.jackrabbit.oak.query.ast;
> +
> +import org.apache.jackrabbit.oak.api.PropertyValue;
> +
> +/**
> + * A facet result column expression.
> + */
> +public class FacetColumnImpl extends ColumnImpl {
> +    FacetColumnImpl(String selectorName, String propertyName, String 
> columnName) {
> +        super(selectorName, propertyName, columnName);
> +    }
> +
> +    @Override
> +    public PropertyValue currentProperty() {
> +        return this.getSelector().currentOakProperty(getPropertyName());
> +    }
> +
> +}
> \ No newline at end of file
>
> Propchange: 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/FacetColumnImpl.java
> ------------------------------------------------------------------------------
>     svn:eol-style = native
>
> Modified: 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/SelectorImpl.java
> URL: 
> http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/SelectorImpl.java?rev=1720106&r1=1720105&r2=1720106&view=diff
> ==============================================================================
> --- 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/SelectorImpl.java
>  (original)
> +++ 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/SelectorImpl.java
>  Tue Dec 15 09:59:57 2015
> @@ -392,6 +392,8 @@ public class SelectorImpl extends Source
>                  String columnName = c.getColumnName();
>                  if (columnName.equals(QueryImpl.REP_EXCERPT) || 
> columnName.equals(QueryImpl.OAK_SCORE_EXPLANATION)) {
>                      f.restrictProperty(columnName, Operator.NOT_EQUAL, null);
> +                } else if (columnName.startsWith(QueryImpl.REP_FACET)) {
> +                    f.restrictProperty(QueryImpl.REP_FACET, Operator.EQUAL, 
> PropertyValues.newString(columnName));
>                  }
>              }
>          }
> @@ -668,6 +670,8 @@ public class SelectorImpl extends Source
>              result = currentRow.getValue(QueryImpl.REP_SPELLCHECK);
>          } else if (oakPropertyName.equals(QueryImpl.REP_SUGGEST)) {
>              result = currentRow.getValue(QueryImpl.REP_SUGGEST);
> +        } else if (oakPropertyName.startsWith(QueryImpl.REP_FACET)) {
> +            result = currentRow.getValue(oakPropertyName);
>          } else {
>              result = PropertyValues.create(t.getProperty(oakPropertyName));
>          }
>
> Modified: 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/package-info.java
> URL: 
> http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/package-info.java?rev=1720106&r1=1720105&r2=1720106&view=diff
> ==============================================================================
> --- 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/package-info.java
>  (original)
> +++ 
> jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/package-info.java
>  Tue Dec 15 09:59:57 2015
> @@ -14,7 +14,7 @@
>   * See the License for the specific language governing permissions and
>   * limitations under the License.
>   */
> -@Version("4.1")
> +@Version("4.2")
>  @Export(optional = "provide:=true")
>  package org.apache.jackrabbit.oak.query;
>  
>
>

Reply via email to