Author: catholicon
Date: Fri Nov 10 06:58:45 2017
New Revision: 1814821

URL: http://svn.apache.org/viewvc?rev=1814821&view=rev
Log:
OAK-6838: IS NOT NULL condition for relative properties not working as expected

revert r1814817 as it breaks 
"org.apache.jackrabbit.oak.jcr.query.QueryTest.relativeNotExistsProperty[SegmentTar]"

Removed:
    
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/query/PropertyInexistenceTest.java
Modified:
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/PropertyInexistenceImpl.java

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/PropertyInexistenceImpl.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/PropertyInexistenceImpl.java?rev=1814821&r1=1814820&r2=1814821&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/PropertyInexistenceImpl.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/ast/PropertyInexistenceImpl.java
 Fri Nov 10 06:58:45 2017
@@ -32,8 +32,6 @@ import org.apache.jackrabbit.oak.query.i
  * "child/propertyName"), then this requires that the given child node exists.
  */
 public class PropertyInexistenceImpl extends ConstraintImpl {
-    //OAK-6838
-    private final boolean USE_OLD_INEXISTENCE_CHECK = 
Boolean.getBoolean("oak.useOldInexistenceCheck");
 
     private final String selectorName;
     private final String propertyName;
@@ -65,7 +63,7 @@ public class PropertyInexistenceImpl ext
         String name = PathUtils.getName(pn);
         for (String p : PathUtils.elements(relativePath)) {
             if (t == null || !t.exists()) {
-                return !USE_OLD_INEXISTENCE_CHECK;
+                return false;
             }
             if (p.equals("..")) {
                 t = t.isRoot() ? null : t.getParent();
@@ -75,12 +73,7 @@ public class PropertyInexistenceImpl ext
                 t = t.getChild(p);
             }
         }
-
-        if (USE_OLD_INEXISTENCE_CHECK) {
-            return t != null && t.exists() && !t.hasProperty(name);
-        } else {
-            return t == null || !t.exists() || !t.hasProperty(name);
-        }
+        return t != null && t.exists() && !t.hasProperty(name);
     }
 
     @Override


Reply via email to