Uploaded image for project: 'NetarchiveSuite'
  1. NetarchiveSuite
  2. NAS-2674

During the harvester Registration phase the harvester shuts down if its channel ID is unknown

    XMLWordPrintable

Details

    • Improvement
    • Resolution: Fixed
    • Major
    • 5.4
    • None
    • None
    • NAS 5.4
    • Hide

      In a running NAS instance.

      1. Log into any harvester
      2. Go to the conf directory and change the settings for a harvester to an invalid channel name - ie any name that doesn't exist in the system
      3. Restart the harvester
      4. Check the logs for a statement that an email warning has been sent.
      5. Check that you receive a mail like
        Host: sb-test-har-001.statsbiblioteket.dk
        Date: Wed Apr 25 14:15:20 CEST 2018
        dk.netarkivet.harvester.heritrix3.HarvestControllerServer.visit(HarvestControllerServer.java:243)
        Received message stating that channel 'HIPRIORITY' is invalid. Will stop. Probable cause: the channel is not one of the known channels stored in the channels table
        
      Show
      In a running NAS instance. Log into any harvester Go to the conf directory and change the settings for a harvester to an invalid channel name - ie any name that doesn't exist in the system Restart the harvester Check the logs for a statement that an email warning has been sent. Check that you receive a mail like Host: sb-test-har-001.statsbiblioteket.dk Date: Wed Apr 25 14:15:20 CEST 2018 dk.netarkivet.harvester.heritrix3.HarvestControllerServer.visit(HarvestControllerServer.java:243) Received message stating that channel 'HIPRIORITY' is invalid. Will stop. Probable cause: the channel is not one of the known channels stored in the channels table

    Description

      During the harvester Registration phase the harvester shuts down if its channel ID is unknown

      @Override
          public void visit(HarvesterRegistrationResponse msg) {
              // If we have already started or the message notifies for another channel, resend it.
              String channelName = msg.getHarvestChannelName();
              if (status.isChannelValid() || !CHANNEL.equals(channelName)) {
                  // Controller has already started
                  jmsConnection.resend(msg, msg.getTo());
                  if (log.isTraceEnabled()) {
                      log.trace("Resending harvest channel validity message for channel '{}'", channelName);
                  }
                  return;
              }
      
              if (!msg.isValid()) {
                  log.error("Received message stating that channel '{}' is invalid. Will stop. "
                              + "Probable cause: the channel is not one of the known channels stored in the channels table", channelName);
                  close();
                  return;
              }
      

      It should also send a notification about the problem before shutting down.

      Attachments

        Activity

          People

            svc Søren Vejrup Carlsen (Inactive)
            svc Søren Vejrup Carlsen (Inactive)
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - Not Specified
                Not Specified
                Logged:
                Time Spent - 1m
                1m