Skip to content

Версия 3.5.2 модуль wal.py нет проверки if not Pooler.in_recovery(): #190

Open
@sgrinko

Description

@sgrinko

Некоторые функции модуля wal.py не могут быть выполнены на сервере который находится в режиме recovery
В частности: pg_catalog.pg_current_wal_lsn() - выдаёт ошибку
К примеру можно это сделать так:

    def run(self, zbx):

        # count of WAL files
        result = Pooler.run_sql_type("count_wal_files", args=["wal" if Pooler.server_version_greater("10.0") else "xlog"])
        zbx.send(self.key_count_wall.format("[]"), int(result[0][0]))

        if not Pooler.in_recovery():
            if Pooler.server_version_greater("10"):
                result = Pooler.query(self.query_wal_lsn_diff)
                zbx.send(self.key_wall.format("[]"), float(result[0][0]), self.DELTA_SPEED)
            else:
                result = Pooler.query(self.query_xlog_lsn_diff)
                zbx.send(self.key_wall.format("[]"), float(result[0][0]), self.DELTA_SPEED)
...

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions