レプリケーション時のシーケンス状態に差異がある

マスターとスレーブでシーケンスのlast_valueがずれる場合があるので注意

master

 last_value    | bigint  | 50
 start_value   | bigint  | 1
 increment_by  | bigint  | 1
 max_value     | bigint  | 9223372036854775807
 min_value     | bigint  | 1
 cache_value   | bigint  | 1
 log_cnt       | bigint  | 32
 is_cycled     | boolean | f
 is_called     | boolean | t

slave

 last_value    | bigint  | 82
 start_value   | bigint  | 1
 increment_by  | bigint  | 1
 max_value     | bigint  | 9223372036854775807
 min_value     | bigint  | 1
 cache_value   | bigint  | 1
 log_cnt       | bigint  | 0
 is_cycled     | boolean | f
 is_called     | boolean | t

テーブル自体の値はマスターからのwalログ伝播なので差異はないが、フェイルオーバー時には数値が先に進む可能性があるので注意。

参考
https://devon.so/2015/02/06/as-tale-of-sequences-and-postgresql-replication-9/