プライマリサーバで規則的に、かつ頻繁に更新する業務を行う場合、スタンバイサーバの参照系の業務で行われる問い合わせが取り消されやすくなります。この場合には、postgresql.confファイルの以下のどちらかのパラメータを編集してください。
パラメータ | 内容 |
---|---|
hot_standby_feedback | onに設定することで、プライマリサーバで削除・更新したデータ領域の削除(vacuum)を抑止します。 これにより、スタンバイサーバでの問い合わせが取り消されなくなります。 (注) |
vacuum_defer_cleanup_age | 指定した数のトランザクションが処理されるまでのあいだ、プライマリサーバで削除や更新したデータ領域の削除(vacuum)を遅らせます。これにより、スタンバイサーバでの問い合わせが取り消される確率を低減します。 |
注)vacuumが遅れるため、プライマリサーバのデータ格納先ディスクの容量が圧迫されます。
また、スタンバイサーバで実行される問い合わせとアクセスが競合すると、競合したことを示す内容のトランザクションログが転送されます。
したがって、アクセスの競合が発生しないようにmax_standby_archive_delayパラメータにできるだけ大きい値を指定してください。
参照
hot_standby_feedbackパラメータの詳細は“PostgreSQL文書”の“スタンバイサーバ”を参照してください。
vacuum_defer_cleanup_ageパラメータの詳細は、“PostgreSQL文書”の“マスターサーバ”を参照してください。