Solr
  1. Solr
  2. SOLR-4608

Update Log replay should use the default processor chain

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 4.1, 4.2
    • Fix Version/s: 4.2.1, 4.3, 5.0
    • Component/s: SolrCloud
    • Labels:
      None

      Description

      If a processor chain is used with custom processors,
      they are not used in case of node failure during log replay.

      Here is the code:

      UpdateLog.java
          public void doReplay(TransactionLog translog) {
            try {
              loglog.warn("Starting log replay " + translog + " active="+activeLog + " starting pos=" + recoveryInfo.positionOfStart);
      
              tlogReader = translog.getReader(recoveryInfo.positionOfStart);
      
              // NOTE: we don't currently handle a core reload during recovery.  This would cause the core
              // to change underneath us.
      
              // TODO: use the standard request factory?  We won't get any custom configuration instantiating this way.
              RunUpdateProcessorFactory runFac = new RunUpdateProcessorFactory();
              DistributedUpdateProcessorFactory magicFac = new DistributedUpdateProcessorFactory();
              runFac.init(new NamedList());
              magicFac.init(new NamedList());
      
              UpdateRequestProcessor proc = magicFac.getInstance(req, rsp, runFac.getInstance(req, rsp, null));
      

      I think this is a big issue, because a lot of people will discover it when a node will crash in the best case... and I think it's too late.

      It means to me that processor chains are not usable with Solr Cloud currently.

      1. SOLR-4608.patch
        4 kB
        Yonik Seeley

        Activity

          People

          • Assignee:
            Yonik Seeley
            Reporter:
            ludovic Boutros
          • Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development