Re: incorrect handling of the timeout in pg_receivexlog
От | Heikki Linnakangas |
---|---|
Тема | Re: incorrect handling of the timeout in pg_receivexlog |
Дата | |
Msg-id | 4F315176.7010001@enterprisedb.com обсуждение исходный текст |
Ответ на | Re: incorrect handling of the timeout in pg_receivexlog (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: incorrect handling of the timeout in pg_receivexlog
|
Список | pgsql-hackers |
On 07.02.2012 16:55, Tom Lane wrote: > (The integer vs float TimestampTz issue is a kind of portability > problem, but we've already bought into the assumption that sender and > receiver must be built with the same choice, no?) Hmm, true. In hindsight, I think that was a bad choice, but it's a bit late to change that. pg_basebackup doesn't otherwise care about the integer/float timestamps, but it does send a timestamp back to the server. You won't be able to actually start up the database if the config options don't match, but I think it would be good if pg_basebackup still worked across platforms and versions. For example, you might have a central backup server that calls pg_basebackup on several database servers, running on different platforms. In 9.0, the only field in the protocol that depends on timestamp format is WalDataMessageHeader->sendTime. That goes from server to client, and pg_basebackup/pg_receivexlog don't care about that. In 9.1 we introduced StandbyReplyMessage->sendTime, which is sent from client to server, but looking at the code it looks like the server doesn't use it for anything. In 9.2, we added WalSndrMessage->sendTime, which is used by a standby server to calculate how far behind the standby is. I'm tempted to just change all of those TimestampTz fields to something that's independent of integer/float timestamp setting, in 9.2. At a quick glance, it seems that it wouldn't break anything. -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: