Bug 41714 - Ошибка при использовании pg_partman с postgres11-server на p10
Summary: Ошибка при использовании pg_partman с postgres11-server на p10
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: postgresql11-pg_partman (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 critical
Assignee: Alexei Takaseev
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-01-14 07:41 MSK by NecroJoke
Modified: 2023-07-06 09:04 MSK (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description NecroJoke 2022-01-14 07:41:07 MSK
Добрый день!
Обновился с p9 до p10. На сервере уставлен Zabbix использующий в качестве СУБД postgresql 11, с настроенным секционированием таблиц. СУБД не запускается, получаю при запуске ошибку похожую на несоответствие версий библиотек. Прошу помочь разобраться. 

--------------
Начат процесс запуска юнита postgresql.service.
янв 13 12:18:14 glx-zabbix.glx.local pg_ctl[3162]: 2022-01-13 12:18:14.170 +07 [3162] ВАЖНО:  загрузить библиотеку "/usr/lib64/pgsql/pg_partman_bgw.so" не удалось: /usr/lib64/pgsql/pg_partman_bgw.so: undefined symbol: pg_snprintf
янв 13 12:18:14 glx-zabbix.glx.local pg_ctl[3162]: 2022-01-13 12:18:14.170 +07 [3162] СООБЩЕНИЕ:  система БД выключена
янв 13 12:18:14 glx-zabbix.glx.local pg_ctl[3160]: pg_ctl: не удалось запустить сервер
янв 13 12:18:14 glx-zabbix.glx.local pg_ctl[3160]: Изучите протокол выполнения.
янв 13 12:18:14 glx-zabbix.glx.local systemd[1]: postgresql.service: Control process exited, code=exited, status=1/FAILURE
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░
░░ An ExecStart= process belonging to unit postgresql.service has exited.
░░
░░ The process' exit code is 'exited' and its exit status is 1.
-----------------
Comment 1 Alexei Takaseev 2022-01-14 07:46:44 MSK
Есть возможность обновить PG до 14-й версии?
Comment 2 NecroJoke 2022-01-15 19:41:51 MSK
Думаю есть, не совсем понимаю как базу конвертировать, как то нужно видимо две СУБД сразу обновить, ну или экспортировать буду, прицеплю доп диск и попробую. Виртуальная машина делает бэкап на уровне гипервизора, поэтому отдельного бэкапа базы нет. Сделаю до 18 числа обновление.
Comment 3 Alexei Takaseev 2022-01-15 20:26:17 MSK
По-идее достаточно сделать дамп на старой версии через

$ pg_dumpall -U postgres > base-dump.sql

Обновиться до PG14, доставить расширение postgresql14-pg_partman, посмотреть что там надо подправить в postgresql.conf, залить бэкап, и потом

$ echo "ALTER EXTENSION pg_partman UPDATE TO '4.6.0';" psql -U postgres BASE_NAME
Comment 4 NecroJoke 2022-01-27 07:43:02 MSK
Добрый день!
Спасибо, мигрировать удалось успешно, единственное замечание: пока Zabbix 5.4 не поддерживает 14 версию Postgres из за этого база не конвертировалась, что было видно в логе Zabbix сервера

---
Unsupported DB! PostgreSQL version is 140001 which is higher than maximum of 139999
 54172:20220125:175136.621 current database version (mandatory/optional): 05040000/05040000
 54172:20220125:175136.621 required mandatory version: 05040000
 54172:20220125:175136.656 database is not upgraded to use double precision values
---
что в целом подтверждено и официальной документацией https://www.zabbix.com/documentation/current/ru/manual/installation/requirements
После установки 13 версии, все отлично поднялось.

Я свою проблему закрыл, спасибо. В целом конечно должна работать и 11 версия, которая вроде как присутствует в p10, поэтому баг закрывать или нет решать не мне.
Comment 5 Alexei Takaseev 2023-07-06 09:04:34 MSK
4.7.3-alt1 все работает.