Hi, When I looked at pg_stat_replication just after starting the standby before executing any write transactions on the master, I found that replay_location indicated incorrect location different from sent/write/flush_location. Then, if I ran write transaction on the master, replay_location indicated the same location as the others. The cause of this problem is that Xlogctl->recoveryLastRecPtr which points to replay_location is initialized with wrong variable ReadRecPtr. Instead, it should be initialized with EndRecPtr. Attached patch does that. This needs to be backported to 9.0. Regards, -- Fujii Masao NIPPON TELEGRAPH AND TELEPHONE CORPORATION NTT Open Source Software Center
On Fri, Jan 13, 2012 at 10:04 AM, Fujii Masao <masao.fujii@gmail.com> wrote: > When I looked at pg_stat_replication just after starting the standby before > executing any write transactions on the master, I found that replay_location > indicated incorrect location different from sent/write/flush_location. Then, > if I ran write transaction on the master, replay_location indicated the same > location as the others. > > The cause of this problem is that Xlogctl->recoveryLastRecPtr which points > to replay_location is initialized with wrong variable ReadRecPtr. Instead, it > should be initialized with EndRecPtr. Attached patch does that. This needs > to be backported to 9.0. Agreed. Will commit. -- Simon Riggs http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера