From 36c4c31e834179051ca5523f6b9083c359d64a8b Mon Sep 17 00:00:00 2001 From: Christopher Winslett Date: Sun, 10 May 2015 19:36:59 -0700 Subject: [PATCH] compare xlog positions based on bytes since 0/000000 based on feedback --- helpers/postgresql.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/helpers/postgresql.py b/helpers/postgresql.py index d682bd4e..7e4d4c22 100644 --- a/helpers/postgresql.py +++ b/helpers/postgresql.py @@ -126,7 +126,7 @@ class Postgresql: member_conn = psycopg2.connect(member["address"]) member_conn.autocommit = True member_cursor = member_conn.cursor() - member_cursor.execute("SELECT '%s'::pg_lsn - pg_last_xlog_replay_location() AS bytes;" % self.xlog_position()) + member_cursor.execute("SELECT %s - (pg_last_xlog_replay_location() - '0/000000'::pg_lsn) AS bytes;" % self.xlog_position()) xlog_diff = member_cursor.fetchone()[0] logger.info([self.name, member["hostname"], xlog_diff]) if xlog_diff < 0: @@ -181,4 +181,4 @@ recovery_target_timeline = 'latest' self.query("CREATE USER \"%s\" WITH REPLICATION ENCRYPTED PASSWORD '%s';" % (self.replication["username"], self.replication["password"])) def xlog_position(self): - return self.query("SELECT pg_last_xlog_replay_location();").fetchone()[0] + return self.query("SELECT pg_last_xlog_replay_location() - '0/0000000'::pg_lsn;").fetchone()[0]