diff --git a/src/Solver/Mage.py b/src/Solver/Mage.py index 414eb649deb7b956bf733d4bb760e38d6aadc4b3..5525efafc6e80dcc15500b9f3cfa26718f0a9efc 100644 --- a/src/Solver/Mage.py +++ b/src/Solver/Mage.py @@ -717,7 +717,7 @@ class Mage(CommandLineSolver): # RESULTS # ########### - def read_bin(self, study, repertory, results, qlog=None, name="0"): + def read_bin(self, study, fname, results, qlog=None, name="0"): return @timer @@ -728,7 +728,16 @@ class Mage(CommandLineSolver): repertory=repertory, name=name, ) - self.read_bin(study, repertory, results, qlog, name=name) + fname = os.path.join(repertory, f"{name}.BIN") + if not os.path.isfile(fname): + logger.info(f"Result file {name}.BIN does not exist") + return None + try: + self.read_bin(study, fname, results, qlog, name=name) + except Exception as e: + logger.error(f"Failed to read results") + logger_exception(e) + return None return results @@ -934,8 +943,7 @@ class Mage8(Mage): ########### @timer - def read_bin(self, study, repertory, results, qlog=None, name="0"): - fname = os.path.join(repertory, f"{name}.BIN") + def read_bin(self, study, fname, results, qlog=None, name="0"): logger.info(f"read_bin: Start reading '{fname}' ...") with mage_file_open(fname, "r") as f: @@ -1066,7 +1074,6 @@ class Mage8(Mage): endline() end = newline().size <= 0 - logger.debug(reachs[0].profiles[0]._data) results.set("timestamps", ts) ts_list = sorted(ts) logger.info(f"compute tab...") @@ -1265,6 +1272,8 @@ class Mage8(Mage): name = study.name.replace(" ", "_") results = super(Mage8, self).results(study, repertory, qlog, name=name) + if results is None: + return None if with_gra: self.read_gra(study, repertory, results, qlog, name=name)