Re: AW: beta testing version - Mailing list pgsql-hackers

From Daniele Orlandi
Subject Re: AW: beta testing version
Date
Msg-id 3A31385E.B6475418@orlandi.com
Whole thread Raw
In response to AW: beta testing version  (Zeugswetter Andreas SB <ZeugswetterA@Wien.Spardat.at>)
List pgsql-hackers
Bruce Guenter wrote:
> 
> CRCs are designed to catch N-bit errors (ie N bits in a row with their
> values flipped).  N is (IIRC) the number of bits in the CRC minus one.
> So, a 32-bit CRC can catch all 31-bit errors.  That's the only guarantee
> a CRC gives.  Everything else has a 1 in 2^32-1 chance of producing the
> same CRC as the original data.  That's pretty good odds, but not a
> guarantee.

Nothing is a guarante. Everywhere you have a non-null probability of
failure. Memories of any kind doesn't give you a *guarantee* that the
data you read is exactly the one you wrote. CPUs and transmsision lines
are subject to errors too.

You only may be guaranteed that the overall proabability of your system
is under a specified level. When the level is low enought you usually
suppose the absence of errors guaranteed.

With CRC32 you considerably reduce p, and given the frequency when CRC
would need to reveal an error, I would consider it enought.

Bye!

-- Daniele

-------------------------------------------------------------------------------Daniele Orlandi - Utility Line Italia -
http://www.orlandi.comViaMezzera 29/A - 20030 - Seveso (MI) - Italy
 
-------------------------------------------------------------------------------


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: OK, does anyone have any better ideas?
Next
From: Tom Lane
Date:
Subject: Re: CRC was: Re: beta testing version