Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-5073

Bug in JcrPathParser

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.5.13, 1.6.0
    • core
    • None

    Description

      I seem to have found a bug in the org.apache.jackrabbit.oak.namepath.JcrPathParser, when looking up following property through the session, it returns me false, while the property does exist.
      I have debugged the code and found following results.

      A file.scss exists at /etc/shared/mixins/file.scss

      The api that I am using:

      session.propertyExists("/etc/shared/mixins/shared/../file.scss/jcr:content/jcr:data"); returns false
      => PathListener elements ["","etc","mixins","shared","file.scss","jcr:content","jcr:data"]

      session.propertyExists("/etc/shared/mixins/something/../file.scss/jcr:content/jcr:data"); returns true
      => PathListener elements ["","etc","shared","mixins","file.scss","jcr:content","jcr:data"]

      session.propertyExists("/etc/shared/mixins/file.scss/jcr:content/jcr:data"); returns true
      => PathListener elements ["","etc","shared","mixins","file.scss","jcr:content","jcr:data"]

      So it seems that when using the same word shared to go back on a second time after other words in between, results in an error: /etc/shared/mixins/shared/../file.scss/jcr:content/jcr:data
      I tried this with other examples (/etc/anything/mixins/anything/../file.scss/jcr:content/jcr:data) and always came to the same result that the api is not working correctly.

      Attachments

        1. OAK_5073.patch
          1 kB
          Michael Dürig

        Activity

          People

            mduerig Michael Dürig
            royteeuwen Roy Teeuwen
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: