it should be ok now, sorry for the noise. Tommaso
2015-12-15 13:25 GMT+01:00 Tommaso Teofili <[email protected]>: > thanks, I'll have a look. > > Tommaso > > 2015-12-15 13:12 GMT+01:00 Davide Giannella <[email protected]>: > >> 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; >> > >> > >> > >> >> >
