2.0 + PostgreSQLで値があふれた(T_T) 【MIRACLE ZBX 2.0】
Zabbix 2.0のPostgreSQLのスキーマには、bigserialが必要なところにserialが使われています。テーブルのスキーマ変更をすることをお薦めします。
2.0 + PostgreSQLで値があふれました(T_T)
というお問い合わせがありました。
このお客様は既にご自身で解決されたとのことでしたが、知っておいてもよい情報だと思いますので記事にしてみました。
serialは32bit値となります
PostgreSQL用のスキーマに下記のようにserialとしているものが何箇所かあります。
CREATE TABLE history_sync (
id serial NOT NULL,
...
確かに、serial は 32bit値となるので大規模な監視を行うとあふれる心配があります。
MySQL用のスキーマでは、問題なく bigint unsigned となっています。また、対応するCコードも64bitとなっています。
問題解決のためにテーブル情報を変更する
問題解決のためにはテーブル情報を、PostgreSQLに接続し下記のように変更する必要があります。
# alter table history_sync alter id bigserial;
# alter table history_uint_sync alter id bigserial;
# alter table history_str_sync alter id bigserial;
# alter table proxy_history alter id bigserial;
# alter table proxy_dhistory alter id bigserial;
# alter table proxy_autoreg_host alter id bigserial;