From fa6b3464a10de71e45666cdb9191b80fca9f8164 Mon Sep 17 00:00:00 2001 From: Mike Rylander Date: Wed, 1 Nov 2017 18:22:21 -0400 Subject: [PATCH] LP#1704396: reset the facet alarm timer When using alarm() one must reset the timer via alarm(0) or incur the wrath of the spurious signal. Signed-off-by: Mike Rylander Signed-off-by: Jason Stephenson --- Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm index 4a0336d125..06ec97d92d 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm @@ -1364,11 +1364,13 @@ sub retrieve_cached_facets { eval { local $SIG{ALRM} = sub {die}; - alarm(4); # we'll sleep for as much as 4s + alarm(10); # we'll sleep for as much as 10s do { die if $cache->get_cache($key . '_COMPLETE'); } while (sleep(0.05)); + alarm(0); }; + alarm(0); my $blob = $cache->get_cache($key) || {}; -- 2.11.0