From 923d1563e94d2ba1ebdda1f6579def467ed08d2d Mon Sep 17 00:00:00 2001
From: Colm Talbot <colm.talbot@ligo.org>
Date: Thu, 2 Apr 2020 11:16:35 -0400
Subject: [PATCH] Make checkpointing even safer

---
 bilby/core/sampler/dynesty.py | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/bilby/core/sampler/dynesty.py b/bilby/core/sampler/dynesty.py
index 3d8c6cd85..c1604c6fd 100644
--- a/bilby/core/sampler/dynesty.py
+++ b/bilby/core/sampler/dynesty.py
@@ -546,6 +546,7 @@ class Dynesty(NestedSampler):
         self.sampler.versions = dict(
             bilby=bilby_version, dynesty=dynesty_version
         )
+        del self.sampler.pool, self.sampler.M
         if dill.pickles(self.sampler):
             safe_file_dump(self.sampler, self.resume_file, dill)
             logger.info("Written checkpoint file {}".format(self.resume_file))
@@ -554,6 +555,12 @@ class Dynesty(NestedSampler):
                 "Cannot write pickle resume file! "
                 "Job will not resume if interrupted."
             )
+        self.sampler.pool = self.pool
+        if self.sampler.pool is not None:
+            self.sampler.M = self.sampler.pool.M
+        else:
+            self.sampler.M = map
+
 
     def plot_current_state(self):
         if self.check_point_plot:
-- 
GitLab