user/dev discussion of public-inbox itself
 help / color / mirror / code / Atom feed
Search results ordered by [date|relevance]  view[summary|nested|Atom feed]
thread overview below | download mbox.gz: |
* [PATCH] inbox: fix periodic git process cleanup
@ 2019-12-15  8:35  7% Eric Wong
  0 siblings, 0 replies; 1+ results
From: Eric Wong @ 2019-12-15  8:35 UTC (permalink / raw)
  To: meta

We need to use $PublicInbox::DS::in_loop instead of ::running().
The latter is not valid for systems with signalfd or kqueue and
is now gone, completely.

Not needing periodic cleanups at all to deal with unlinked pack
indices will be a tougher task...
---
 lib/PublicInbox/DS.pm    | 2 --
 lib/PublicInbox/Inbox.pm | 2 +-
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/lib/PublicInbox/DS.pm b/lib/PublicInbox/DS.pm
index 856884bb..62aa3c2d 100644
--- a/lib/PublicInbox/DS.pm
+++ b/lib/PublicInbox/DS.pm
@@ -255,8 +255,6 @@ sub reap_pids {
 # reentrant SIGCHLD handler (since reap_pids is not reentrant)
 sub enqueue_reap ($) { push @$nextq, \&reap_pids };
 
-sub running () { ($SIG{CHLD} // '') eq \&enqueue_reap }
-
 sub EpollEventLoop {
     local $in_loop = 1;
     do {
diff --git a/lib/PublicInbox/Inbox.pm b/lib/PublicInbox/Inbox.pm
index 43c6a428..f294c0d5 100644
--- a/lib/PublicInbox/Inbox.pm
+++ b/lib/PublicInbox/Inbox.pm
@@ -52,7 +52,7 @@ sub cleanup_task () {
 sub cleanup_possible () {
 	# no need to require DS, here, if it were enabled another
 	# module would've require'd it, already
-	eval { PublicInbox::DS::running() } or return 0;
+	eval { $PublicInbox::DS::in_loop } or return 0;
 
 	eval {
 		require Devel::Peek; # needs separate package in Fedora

^ permalink raw reply related	[relevance 7%]

Results 1-1 of 1 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2019-12-15  8:35  7% [PATCH] inbox: fix periodic git process cleanup Eric Wong

Code repositories for project(s) associated with this public inbox

	https://80x24.org/public-inbox.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).