Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.4.1, 2.5
    • Component/s: indexing, jackrabbit-core
    • Labels:
      None

      Description

      The re-indexing process should be more resilient, log an error and simply continue with the next node. It doesn't seem useful to refuse repository startup in this case.

        Activity

        Hide
        Alex Parvulescu added a comment -

        In the case of a corrupt bundle the ItemStateManager#getItemState can throw an ItemStateException that stops the repository from starting.

        My proposal is to have MultiIndex.createInitialIndex catch the ItemStateException and have it logged via the OnWorkspaceInconsistency handler.
        The error wouldn't be a blocker anymore and if anybody is looking at the workspace consystency logs will see its message as well.

        The simplest way to do this is to wrap log.error into a public method OnWorkspaceInconsistency#logError and use it from the MultiIndex.

        Show
        Alex Parvulescu added a comment - In the case of a corrupt bundle the ItemStateManager#getItemState can throw an ItemStateException that stops the repository from starting. My proposal is to have MultiIndex.createInitialIndex catch the ItemStateException and have it logged via the OnWorkspaceInconsistency handler. The error wouldn't be a blocker anymore and if anybody is looking at the workspace consystency logs will see its message as well. The simplest way to do this is to wrap log.error into a public method OnWorkspaceInconsistency#logError and use it from the MultiIndex.
        Hide
        Claus Köll added a comment -

        Is this not be handled with JCR-2651
        greets

        Show
        Claus Köll added a comment - Is this not be handled with JCR-2651 greets
        Hide
        Alex Parvulescu added a comment -

        Hi Claus, I don't understand what you are saying
        Is that a question or a suggestion?

        It is not currently handled by JCR-2651 because it addresses only NoSuchItemStateException.
        In this issue I'm dealing with is an ItemStateException generated by a corrupt bundle.

        Show
        Alex Parvulescu added a comment - Hi Claus, I don't understand what you are saying Is that a question or a suggestion? It is not currently handled by JCR-2651 because it addresses only NoSuchItemStateException. In this issue I'm dealing with is an ItemStateException generated by a corrupt bundle.
        Hide
        Claus Köll added a comment -

        ahh sorry for my typo ..
        ok i see you are handling with ItemStateException... so i think it will be good as you have proposed to catch it and handle it with OnWorkspaceInconsistency#logError

        Show
        Claus Köll added a comment - ahh sorry for my typo .. ok i see you are handling with ItemStateException... so i think it will be good as you have proposed to catch it and handle it with OnWorkspaceInconsistency#logError
        Hide
        Marcel Reutegger added a comment -

        > wrap log.error into a public method OnWorkspaceInconsistency#logError

        sounds good to me.

        Show
        Marcel Reutegger added a comment - > wrap log.error into a public method OnWorkspaceInconsistency#logError sounds good to me.
        Hide
        Alex Parvulescu added a comment -

        fixed in revision 1304323.

        Show
        Alex Parvulescu added a comment - fixed in revision 1304323.
        Hide
        Alex Parvulescu added a comment -

        backported to 2.4 in revision 1304466.

        Show
        Alex Parvulescu added a comment - backported to 2.4 in revision 1304466.

          People

          • Assignee:
            Alex Parvulescu
            Reporter:
            Alex Parvulescu
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development