Re: Missing FIN_CRC32 calls in logical replication code

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Andres Freund <andres(at)2ndQuadrant(dot)com>
Cc: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Missing FIN_CRC32 calls in logical replication code
Date: 2014-10-27 13:30:33
Message-ID: 18334.1414416633@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Andres Freund <andres(at)2ndQuadrant(dot)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.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2014-10-27 13:32:18 Lockless StrategyGetBuffer() clock sweep
Previous Message Heikki Linnakangas 2014-10-27 13:28:03 Re: proposal: CREATE DATABASE vs. (partial) CHECKPOINT