From: Greg Hudson Date: Wed, 8 Apr 2015 21:35:56 +0000 (-0400) Subject: Document kpropd -t and fix it in iprop mode X-Git-Tag: krb5-1.14-alpha1~143 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=334f761ba485e4af6d5fb8822e276d4590b97bf5;p=thirdparty%2Fkrb5.git Document kpropd -t and fix it in iprop mode If kpropd is asked to run just once, don't exit after starting a full resync; we want to wait for the fullprop child to process the request, and then request incremental updates afterwards. Also don't exit from do_standalone() in the fullprop child, in case multiple full resyncs are required to get the database up to date. Document the -t flag in kpropd.rst. ticket: 8161 --- diff --git a/doc/admin/admin_commands/kpropd.rst b/doc/admin/admin_commands/kpropd.rst index 465d4f52e6..5e01e2f14b 100644 --- a/doc/admin/admin_commands/kpropd.rst +++ b/doc/admin/admin_commands/kpropd.rst @@ -15,6 +15,7 @@ SYNOPSIS [**-p** *kdb5_util_prog*] [**-P** *port*] [**-d**] +[**-t**] DESCRIPTION ----------- @@ -89,6 +90,12 @@ OPTIONS it will run in the foreground and print out debugging messages during the database propagation. +**-t** + In standalone mode without incremental propagation, exit after one + dump file is received. In incremental propagation mode, exit as + soon as the database is up to date, or if the master returns an + error. + **-P** Allow for an alternate port number for kpropd to listen on. This is only useful in combination with the **-S** option. diff --git a/src/slave/kpropd.c b/src/slave/kpropd.c index 1bac58e2a1..13831560b7 100644 --- a/src/slave/kpropd.c +++ b/src/slave/kpropd.c @@ -444,7 +444,7 @@ do_standalone() * process that it should poll for incremental updates. */ if (fullprop_child == 0) kill(getppid(), SIGUSR1); - if (runonce) + else if (runonce) exit(0); } } @@ -963,7 +963,7 @@ reinit: break; } - if (runonce == 1) + if (runonce == 1 && incr_ret->ret != UPDATE_FULL_RESYNC_NEEDED) goto done; /*