sks-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Sks-devel] [PATCH] Minor SKS changes


From: Peter Pramberger
Subject: [Sks-devel] [PATCH] Minor SKS changes
Date: Wed, 25 Mar 2009 19:34:52 +0100
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de-AT; rv:1.8.1.21) Gecko/20090303 SeaMonkey/1.1.15

Hi all,

just a set of some small changes I've used the last years, which might be 
useful.

*) spider_set_starthost.patch

Give spider an (optional) hostname to start with.

*) dbsync_on_ext_signal.patch

Trigger database sync and checkpointing on -USR1; I'm using this for online
keydumps (in combination with rsync).

*) ignore_sigusr2.patch

Ignore -USR2; I can't remember anymore how I've hit this, but it prevents an
unclean shutdown.


Br,
Peter


diff -Naurp sks-1.1.0.orig/spider.ml sks-1.1.0/spider.ml
--- sks-1.1.0.orig/spider.ml    2008-05-09 03:46:37.000000000 +0200
+++ sks-1.1.0/spider.ml 2009-03-25 19:21:20.000000000 +0100
@@ -8,7 +8,14 @@ module Unix = UnixLabels
 
 let stats_timeout = 10
 
-let root = ("stinkfoot.org",11370)
+(** Argument parsing *)
+let root =
+  let l = Array.length Sys.argv in
+  if (l<>2)
+  then
+    ("stinkfoot.org",11370)
+  else
+    (Sys.argv.(1),11370)
 
 let input_lines cin = 
   let rec loop lines = 
diff -Naurp sks-1.1.0.orig/dbserver.ml sks-1.1.0/dbserver.ml
--- sks-1.1.0.orig/dbserver.ml  2008-05-08 03:05:54.000000000 +0200
+++ sks-1.1.0/dbserver.ml       2009-03-25 19:16:12.000000000 +0100
@@ -618,6 +618,15 @@ struct
 
   (***********************************************************************)
 
+  let sync_db_on_sig () =
+    sync ();
+    checkpoint ()
+
+  let () = Sys.set_signal Sys.sigusr1
+         (Sys.Signal_handle (fun _ -> sync_db_on_sig ()))
+
+  (***********************************************************************)
+
   let run () = 
     Keydb.open_dbs settings;
     if !Settings.initial_stat then ignore (calculate_stats_page ());
diff -Naurp sks-1.1.0.orig/reconserver.ml sks-1.1.0/reconserver.ml
--- sks-1.1.0.orig/reconserver.ml       2008-05-08 03:05:54.000000000 +0200
+++ sks-1.1.0/reconserver.ml    2009-03-25 19:18:28.000000000 +0100
@@ -312,6 +312,10 @@ struct
 
   (***************************************************************)
 
+  let () = Sys.set_signal Sys.sigusr1 Sys.Signal_ignore
+
+  (***********************************************************************)
+
   let prepare () = 
     set_logfile "recon";
     plerror 1 "sks_recon, SKS version %s" version; 
diff -Naurp sks-1.1.0.orig/common.ml sks-1.1.0/common.ml
--- sks-1.1.0.orig/common.ml    2008-05-08 03:05:54.000000000 +0200
+++ sks-1.1.0/common.ml 2009-03-25 19:19:40.000000000 +0100
@@ -131,6 +131,7 @@ let handle_interrupt i =
 let () = Sys.set_signal Sys.sigterm (Sys.Signal_handle handle_interrupt)
 let () = Sys.set_signal Sys.sigint (Sys.Signal_handle handle_interrupt)
 let () = Sys.set_signal Sys.sigpipe Sys.Signal_ignore
+let () = Sys.set_signal Sys.sigusr2 Sys.Signal_ignore
 let () = Sys.set_signal Sys.sighup 
           (Sys.Signal_handle (fun _ -> reopen_logfile ()))
 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]