code: def crossreference_job(job):
      
      logger.debug("Crossreference %s: started", job.id)
  
      if job.autoclassify_status >= Job.CROSSREFERENCED:
          logger.info("Job %i already crossreferenced", job.id)
          return False
      try:
          rv = _crossreference(job)
      except IntegrityError:
          job.autoclassify_status = Job.FAILED
          job.save(update_fields=['autoclassify_status'])
          logger.warning("IntegrityError crossreferencing error lines for job %s", job.id)
          return False
  
      job.autoclassify_status = Job.CROSSREFERENCED
      job.save(update_fields=['autoclassify_status'])
      return rv
docs: Try to match the unstructured error lines with the corresponding structured error
      lines, relying on the fact that serialization of mozlog (and hence errorsummary files)
      is determinisic so we can reserialize each structured error line and perform an in-order
      textual match.
  
      :job: - Job for which to perform the crossreferencing