def run_ensemble_evaluator(self, run_context: ErtRunContext, ee_config: EvaluatorServerConfig) -> int: if run_context.get_step(): self.ert().eclConfig().assert_restart() ensemble = EnsembleBuilder.from_legacy( run_context, self.get_forward_model(), self._queue_config, self.ert().analysisConfig(), self.ert().resConfig(), ).build() self.ert().initRun(run_context) totalOk = EnsembleEvaluator( ensemble, ee_config, run_context.get_iter(), ee_id=str(uuid.uuid1()).split("-", maxsplit=1)[0], ).run_and_get_successful_realizations() for iens, run_arg in enumerate(run_context): if run_context.is_active(iens): if run_arg.run_status in ( RunStatusType.JOB_LOAD_FAILURE, RunStatusType.JOB_RUN_FAILURE, ): run_context.deactivate_realization(iens) run_context.get_sim_fs().fsync() return totalOk
def run_ensemble_evaluator(self, run_context: ErtRunContext, ee_config: EvaluatorServerConfig) -> int: if run_context.get_step(): self.ert().eclConfig().assert_restart() iactive = run_context.get_mask() run_context.get_sim_fs().getStateMap().deselectMatching( iactive, RealizationStateEnum.STATE_LOAD_FAILURE | RealizationStateEnum.STATE_PARENT_FAILURE, ) ensemble = create_ensemble_builder_from_legacy( run_context, self.get_forward_model(), self._queue_config, self.ert().analysisConfig(), self.ert().resConfig(), ).build() self.ert().initRun(run_context) totalOk = EnsembleEvaluator( ensemble, ee_config, run_context.get_iter(), ee_id=str(uuid.uuid1()).split("-")[0], ).run_and_get_successful_realizations() for i in range(len(run_context)): if run_context.is_active(i): run_arg = run_context[i] if (run_arg.run_status == RunStatusType.JOB_LOAD_FAILURE or run_arg.run_status == RunStatusType.JOB_RUN_FAILURE): run_context.deactivate_realization(i) run_context.get_sim_fs().fsync() return totalOk
def _get_run_context_iter(run_context: ErtRunContext) -> int: """Return the iter from run_context.""" try: return run_context.get_iter() except AttributeError: return -1