patroni debian bullseye package file inconsistency

Поиск
Список
Период
Сортировка
От Kirill
Тема patroni debian bullseye package file inconsistency
Дата
Msg-id 1651059454.883106565@f420.i.mail.ru
обсуждение исходный текст
Ответы Re: patroni debian bullseye package file inconsistency
Список pgsql-pkg-debian
Hello, community!
 
First of all, thanks for fast version releases of patroni package.
 
I am using that package:
 
$ apt-cache policy patroni
patroni:
  Installed: 2.1.3-2.pgdg110+1
  Candidate: 2.1.3-2.pgdg110+1
  Version table:
 *** 2.1.3-2.pgdg110+1 500
        500 http://apt.postgresql.org/pub/repos/apt bullseye-pgdg/main amd64 Packages
        100 /var/lib/dpkg/status
 
 
During the usage of patroni I got an error:
 
$ patroni --version
patroni 2.1.3
 
$ patroni --validate-config /etc/patroni-server/config.yaml
...
Traceback (most recent call last):
  File "/usr/bin/patroni", line 33, in <module>
    sys.exit(load_entry_point('patroni==2.1.3', 'console_scripts', 'patroni')())
  File "/usr/lib/python3/dist-packages/patroni/__main__.py", line 143, in main
    return patroni_main()
  File "/usr/lib/python3/dist-packages/patroni/__main__.py", line 135, in patroni_main
    abstract_main(Patroni, schema)
  File "/usr/lib/python3/dist-packages/patroni/daemon.py", line 88, in abstract_main
    Config(args.configfile, validator=validator)
  File "/usr/lib/python3/dist-packages/patroni/config.py", line 105, in __init__
    error = validator(self._local_configuration)
  File "/usr/lib/python3/dist-packages/patroni/validator.py", line 177, in __call__
    for i in self.validate(data):
  File "/usr/lib/python3/dist-packages/patroni/validator.py", line 209, in validate
    for i in self.iter():
  File "/usr/lib/python3/dist-packages/patroni/validator.py", line 217, in iter
    for i in self.iter_dict():
  File "/usr/lib/python3/dist-packages/patroni/validator.py", line 244, in iter_dict
    validator = self.validator[key]._schema[d]
KeyError: 'etcd3'
 
 
I started to investigate and found that actual file:
 
$ dpkg -S  /usr/lib/python3/dist-packages/patroni/validator.py
patroni: /usr/lib/python3/dist-packages/patroni/validator.py
 
 
is different from source file:
 
$ git clone https://github.com/zalando/patroni.git
$ cd patroni/
$ git checkout v2.1.3
 
$ diff patroni/validator.py /usr/lib/python3/dist-packages/patroni/validator.py
 
56,60d55
< def validate_host_port_list(value):
<     assert all([validate_host_port(v) for v in value]), "didn't pass the validation"
<     return True
62c57,58
<     return validate_host_port_list([s.strip() for s in string.split(",")])
---
>     assert all([validate_host_port(s.strip()) for s in string.split(",")]), "didn't pass the validation"
>     return True
298d293
< validate_host_port_list.expected_type = list
304,312d298
< validate_etcd = {
<     Or("host", "hosts", "srv", "srv_suffix", "url", "proxy"): Case({
<         "host": validate_host_port,
<         "hosts": Or(comma_separated_host_port, [validate_host_port]),
<         "srv": str,
<         "srv_suffix": str,
<         "url": str,
<         "proxy": str})
< }
337,338c323,330
<       "etcd": validate_etcd,
<       "etcd3": validate_etcd,
---
>       "etcd": {
>           Or("host", "hosts", "srv", "url", "proxy"): Case({
>               "host": validate_host_port,
>               "hosts": Or(comma_separated_host_port, [validate_host_port]),
>               "srv": str,
>               "url": str,
>               "proxy": str})
 
So my question — is it intended inconsistency or just a bug?
 
i will appreciate to any feedback. Thanks! 
 

В списке pgsql-pkg-debian по дате отправления:

Предыдущее
От: apt.postgresql.org Repository Update
Дата:
Сообщение: pg-auto-failover updated to version 1.6.4-1.pgdg+1
Следующее
От: apt.postgresql.org Repository Update
Дата:
Сообщение: rdkit updated to version 202203.2-1.pgdg+1