From f8b6b212979d38811c4d859488cbf6f8a56f624a Mon Sep 17 00:00:00 2001 From: Alexander Kukushkin Date: Fri, 26 Jan 2018 09:56:17 +0100 Subject: [PATCH] Avoid calling pg_controldata during bootstrap (#612) Fixes https://github.com/zalando/patroni/issues/608 --- patroni/postgresql.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/patroni/postgresql.py b/patroni/postgresql.py index d0145b5f..7805172e 100644 --- a/patroni/postgresql.py +++ b/patroni/postgresql.py @@ -547,6 +547,7 @@ class Postgresql(object): return ret def _custom_bootstrap(self, config): + self.set_state('running custom bootstrap script') params = ['--scope=' + self.scope, '--datadir=' + self._data_dir] try: logger.info('Running custom bootstrap script: %s', config['command']) @@ -1161,7 +1162,7 @@ class Postgresql(object): """ return the contents of pg_controldata, or non-True value if pg_controldata call failed """ result = {} # Don't try to call pg_controldata during backup restore - if self._version_file_exists() and self.state != 'creating replica': + if not self.bootstrapping and self._version_file_exists() and self.state != 'creating replica': try: data = subprocess.check_output([self._pgcommand('pg_controldata'), self._data_dir], env={'LANG': 'C', 'LC_ALL': 'C', 'PATH': os.environ['PATH']})