Hi,

I tend to consider it a bug that there's no known way under windows to
use the same trick as under Unix by using '/usr/bin/true' as your
archive command. And this Unix trick itself does feel like a hack.

Also I'd very much like to be able to recommend (even if not change the
official defaults) to setup wal_level to archive, archive_mode=on and
archive_command=pg_archive_bypass, so that the day you have a HA budget
ain't the day you're going to restart the server to enable the fault
tolerance settingsā€¦

So please find attached a very simple "let's see about it" patch to
implement an internal archive_command that just returns true and is
called pg_archive_bypass. It's missing documentation, which I'll provide
if needed (meaning there's some will to consider applying such a patch).

Regards,
-- 
dim

*** a/src/backend/postmaster/pgarch.c
--- b/src/backend/postmaster/pgarch.c
***************
*** 475,481 **** pgarch_ArchiverCopyLoop(void)
  /*
   * pgarch_archiveXlog
   *
!  * Invokes system(3) to copy one archive file to wherever it should go
   *
   * Returns true if successful
   */
--- 475,485 ----
  /*
   * pgarch_archiveXlog
   *
!  * Invokes system(3) to copy one archive file to wherever it should go, or
!  * just return true if set to the internal command "pg_archive_bypass". That
!  * allows windows users to easily have the "/usr/bin/true", and that allows
!  * for setting up a archiving only when you need it by changing the command
!  * and issuing a reload.
   *
   * Returns true if successful
   */
***************
*** 490,495 **** pgarch_archiveXlog(char *xlog)
--- 494,509 ----
  	const char *sp;
  	int			rc;
  
+ 	/*
+ 	 * If the command is "pg_archive_bypass", just return true
+ 	 */
+ 	if( strcmp(XLogArchiveCommand, "pg_archive_bypass") == 0 )
+ 	{
+ 		ereport(DEBUG3,
+ 				(errmsg_internal("bypassing archive command")));
+ 		return true;
+ 	}
+ 
  	snprintf(pathname, MAXPGPATH, XLOGDIR "/%s", xlog);
  
  	/*
-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to