Re: Missing FIN_CRC32 calls in logical replication code
От | Andres Freund |
---|---|
Тема | Re: Missing FIN_CRC32 calls in logical replication code |
Дата | |
Msg-id | 20141031134631.GG13584@awork2.anarazel.de обсуждение исходный текст |
Ответ на | Re: Missing FIN_CRC32 calls in logical replication code (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Missing FIN_CRC32 calls in logical replication code
|
Список | pgsql-hackers |
On 2014-10-27 09:30:33 -0400, Tom Lane wrote: > Andres Freund <andres@2ndQuadrant.com> writes: > > On 2014-10-27 12:51:44 +0200, Heikki Linnakangas wrote: > >> replication/slot.c and replication/logical/snapbuild.c use a CRC on the > >> physical slot and snapshot files. It uses the same algorithm as used e.g. > >> for the WAL. However, they are not doing the finalization step, FIN_CRC32() > >> on the calculated checksums. Not that it matters much, but it's a bit weird > >> and inconsistent, and was probably an oversight. > > > Hm. Good catch - that's stupid. I wonder what to do about it. I'm > > tempted to just add a comment about it to 9.4 and fix it on master as > > changing it is essentially a catversion bump. Any objections to that? > > Yeah, I think you should get it right the first time. It hardly seems > likely that any 9.4 beta testers are depending on those files to be stable > yet. Since both state files have the version embedded it'd be trivial to just do the FIN_CRC32() when loading a version 2 file. Does anybody object to the relevant two lines of code + docs? Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training & Services
В списке pgsql-hackers по дате отправления: