diff --git a/contrib/convert-config.pl b/contrib/convert-config.pl index c0e68f69..ea7916cc 100755 --- a/contrib/convert-config.pl +++ b/contrib/convert-config.pl @@ -73,7 +73,16 @@ while(<$fh>) { if ($param eq 'data_directory') { $data_directory_found = 1; } - push @outp, $line; + + # Don't quote numbers + if ($value =~ /^\d+$/) { + push @outp, sprintf(q|%s=%s|, $param, $value); + } + # Quote everything else + else { + $value =~ s/'/''/g; + push @outp, sprintf(q|%s='%s'|, $param, $value); + } } } @@ -83,6 +92,6 @@ print join("\n", @outp); print "\n"; if ($data_directory_found == 0) { - print "data_directory=\n"; + print "data_directory=''\n"; } diff --git a/doc/upgrading-repmgr.xml b/doc/upgrading-repmgr.xml index 006348b2..b1939267 100644 --- a/doc/upgrading-repmgr.xml +++ b/doc/upgrading-repmgr.xml @@ -419,13 +419,13 @@ ALTER EXTENSION repmgr UPDATE $ ./convert-config.pl /etc/repmgr.conf node_id=2 - node_name=node2 - conninfo=host=node2 dbname=repmgr user=repmgr connect_timeout=2 + node_name='node2' + conninfo='host=node2 dbname=repmgr user=repmgr connect_timeout=2' pg_ctl_options='-l /var/log/postgres/startup.log' - rsync_options=--exclude=postgresql.local.conf --archive - log_level=INFO - pg_basebackup_options=--no-slot - data_directory= + rsync_options='--exclude=postgresql.local.conf --archive' + log_level='INFO' + pg_basebackup_options='--no-slot' + data_directory='' The converted file is printed to STDOUT and the original file is not @@ -434,8 +434,7 @@ ALTER EXTENSION repmgr UPDATE Please note that the the conversion script will add an empty placeholder parameter for data_directory, which - is a required parameter in repmgr4 and which must - be provided. + is a required parameter from &repmgr; 4.