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

Enforce and clarify Root contract wrt. invalid Tree instances

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.7
    • core
    • None

    Description

      The contract of Root.commit(), Root.refresh() and Root.rebase() specify that Tree instances acquired through that Root instance become invalid after one of these methods are called.

      In fact the hierarchy related methods are not affected by this, which is required for higher layers to be able to reload Tree instances that have become invalid. OTOH affected methods might not immediately throw an exception but just result in undefined behaviour. I'd like to change this such that invalid Tree instances immediately throw an IllegalStateException when accessed.

      Attachments

        Issue Links

          Activity

            People

              mduerig Michael Dürig
              mduerig Michael Dürig
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: