summary refs log tree commit diff
path: root/pkgs/applications/science/math/sage/patches/fix-ecl-race.patch
blob: 6056416c3a28199acc55cad168c35071f10fc15a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
diff --git a/src/sage/doctest/forker.py b/src/sage/doctest/forker.py
index 02e18e67e7..2ebf6eb35f 100644
--- a/src/sage/doctest/forker.py
+++ b/src/sage/doctest/forker.py
@@ -1075,6 +1075,14 @@ class SageDocTestRunner(doctest.DocTestRunner, object):
             sage: set(ex2.predecessors) == set([ex0,ex1])
             True
         """
+
+        # Fix ECL dir race conditions by using a separate dir for each process
+        # (https://trac.sagemath.org/ticket/26968)
+        os.environ['MAXIMA_USERDIR'] = "{}/sage-maxima-{}".format(
+            tempfile.gettempdir(),
+            os.getpid()
+        )
+
         if isinstance(globs, RecordingDict):
             globs.start()
         example.sequence_number = len(self.history)