execute_job

in lib/core/jobs/consumer.rb [102:121]


      def execute_job(job, connector_settings)
        pool.post do
          Utility::Logger.info("Connector #{connector_settings.formatted} picked up the job #{job.id}")
          Core::ElasticConnectorActions.ensure_content_index_exists(connector_settings.index_name)
          job_runner = Core::SyncJobRunner.new(
            connector_settings,
            job,
            @max_ingestion_queue_size,
            @max_ingestion_queue_bytes
          )
          job_runner.execute
        rescue Core::JobAlreadyRunningError
          Utility::Logger.info("Sync job for #{connector_settings.formatted} is already running, skipping.")
        rescue Core::ConnectorVersionChangedError => e
          Utility::Logger.info("Could not start the job because #{connector_settings.formatted} has been updated externally. Message: #{e.message}")
        rescue StandardError => e
          Utility::ExceptionTracking.log_exception(e, "Sync job for #{connector_settings.formatted} failed due to unexpected error.")
        end
      end