Program: 188535
Project: 188535
Buggy source:
@Override public void onReceive(Object msg) throws Exception {
  super.setup(msg);
  if (msg instanceof Job) {
    Job job=(Job)msg;
    Plugin<? extends IsRODAObject> plugin=super.getPluginManager().getPlugin(job.getPlugin());
    if (plugin == null) {
      JobsHelper.updateJobState(job,super.getModel(),JOB_STATE.FAILED_TO_COMPLETE,Optional.of("String_Node_Str"));
      getSender().tell("String_Node_Str",getSelf());
      return;
    }
    JobsHelper.setPluginParameters(plugin,job);
    String jobId=job.getId();
    ActorRef jobStateInfoActor=getContext().actorOf(Props.create(AkkaJobStateInfoActor.class,plugin,getSender(),JobsHelper.getNumberOfJobsWorkers()),jobId);
    super.getPluginOrchestrator().setJobContextInformation(jobId,jobStateInfoActor);
    jobStateInfoActor.tell(new Messages.JobStateUpdated(plugin,JOB_STATE.STARTED),getSelf());
    try {
      if (job.getSourceObjects() instanceof SelectedItemsAll<?>) {
        runOnAll(job,plugin);
      }
 else       if (job.getSourceObjects() instanceof SelectedItemsNone<?>) {
        super.getPluginOrchestrator().runPlugin(getSelf(),plugin);
      }
 else       if (job.getSourceObjects() instanceof SelectedItemsList<?>) {
        runFromList(job,plugin);
      }
 else       if (job.getSourceObjects() instanceof SelectedItemsFilter<?>) {
        runFromFilter(job,plugin);
      }
    }
 catch (    Exception e) {
      LOGGER.error("String_Node_Str",e);
      jobStateInfoActor.tell(new Messages.JobStateUpdated(plugin,JOB_STATE.FAILED_TO_COMPLETE,e),getSelf());
      getSender().tell("String_Node_Str",getSelf());
    }
  }
 else {
    LOGGER.error("String_Node_Str",msg.getClass().getName());
    unhandled(msg);
  }
}

Fixed version (ground truth):
@Override public void onReceive(Object msg) throws Exception {
  super.setup(msg);
  if (msg instanceof Job) {
    Job job=(Job)msg;
    Plugin<? extends IsRODAObject> plugin=super.getPluginManager().getPlugin(job.getPlugin());
    if (plugin == null) {
      JobsHelper.updateJobState(job,super.getModel(),JOB_STATE.FAILED_TO_COMPLETE,Optional.of("String_Node_Str"));
      getSender().tell("String_Node_Str",getSelf());
      return;
    }
    JobsHelper.setPluginParameters(plugin,job);
    String jobId=job.getId();
    ActorRef jobStateInfoActor=getContext().actorOf(Props.create(AkkaJobStateInfoActor.class,plugin,getSender(),jobsManager,JobsHelper.getNumberOfJobsWorkers()),jobId);
    super.getPluginOrchestrator().setJobContextInformation(jobId,jobStateInfoActor);
    jobStateInfoActor.tell(new Messages.JobStateUpdated(plugin,JOB_STATE.STARTED),getSelf());
    try {
      if (job.getSourceObjects() instanceof SelectedItemsAll<?>) {
        runOnAll(job,plugin);
      }
 else       if (job.getSourceObjects() instanceof SelectedItemsNone<?>) {
        super.getPluginOrchestrator().runPlugin(getSelf(),plugin);
      }
 else       if (job.getSourceObjects() instanceof SelectedItemsList<?>) {
        runFromList(job,plugin);
      }
 else       if (job.getSourceObjects() instanceof SelectedItemsFilter<?>) {
        runFromFilter(job,plugin);
      }
    }
 catch (    Exception e) {
      LOGGER.error("String_Node_Str",e);
      jobStateInfoActor.tell(new Messages.JobStateUpdated(plugin,JOB_STATE.FAILED_TO_COMPLETE,e),getSelf());
      getSender().tell("String_Node_Str",getSelf());
    }
  }
 else {
    LOGGER.error("String_Node_Str",msg.getClass().getName());
    unhandled(msg);
  }
}