From 5d264e5f211c068749c92395df34a63b60755d8d Mon Sep 17 00:00:00 2001 From: Marcin Kuzminski Date: Tue, 10 Apr 2018 10:52:28 +0200 Subject: [PATCH] beaker: patch for better debugging of function locks --- pkgs/patch-beaker-lock-func-debug.diff | 20 ++++++++++++++++++++ pkgs/python-packages-overrides.nix | 6 ++++++ 2 files changed, 26 insertions(+) create mode 100644 pkgs/patch-beaker-lock-func-debug.diff diff --git a/pkgs/patch-beaker-lock-func-debug.diff b/pkgs/patch-beaker-lock-func-debug.diff new file mode 100644 index 00000000..bede0d66 --- /dev/null +++ b/pkgs/patch-beaker-lock-func-debug.diff @@ -0,0 +1,20 @@ +diff -rup Beaker-1.9.1-orig/beaker/container.py Beaker-1.9.1/beaker/container.py +--- Beaker-1.9.1-orig/beaker/container.py 2018-04-10 10:23:04.000000000 +0200 ++++ Beaker-1.9.1/beaker/container.py 2018-04-10 10:23:34.000000000 +0200 +@@ -353,13 +353,13 @@ class Value(object): + debug("get_value returning old value while new one is created") + return value + else: +- debug("lock_creatfunc (didnt wait)") ++ debug("lock_creatfunc `%s` (didnt wait)", self.createfunc.__name__) + has_createlock = True + + if not has_createlock: +- debug("lock_createfunc (waiting)") ++ debug("lock_createfunc `%s` (waiting)", self.createfunc.__name__) + creation_lock.acquire() +- debug("lock_createfunc (waited)") ++ debug("lock_createfunc `%s` (waited)", self.createfunc.__name__) + + try: + # see if someone created the value already diff --git a/pkgs/python-packages-overrides.nix b/pkgs/python-packages-overrides.nix index 9f7507bd..a5581580 100644 --- a/pkgs/python-packages-overrides.nix +++ b/pkgs/python-packages-overrides.nix @@ -25,6 +25,12 @@ self: super: { }; }); + Beaker = super.Beaker.override (attrs: { + patches = [ + ./patch-beaker-lock-func-debug.diff + ]; + }); + future = super.future.override (attrs: { meta = { license = [ pkgs.lib.licenses.mit ];