RE: unit test for messaging crc32c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: ceph-devel-owner@xxxxxxxxxxxxxxx [mailto:ceph-devel-
> owner@xxxxxxxxxxxxxxx] On Behalf Of Dan van der Ster
> 
> Hi all,
> 
> We've recently experienced a broken router than was corrupting packets in
> way that the tcp checksums were still valid. There has been some resulting
> data corruption -- thus far the confirmed corruptions were outside of Ceph
> communications -- but it has made us want to double check the Ceph
> messenger crc32c code.
> 
> We have crc32c enabled (as default), and I expected to find some "bad crc"
> messages logged on the clients and/or osds, but thus far we haven't found
> any.
> 
> Is there a unit test which validates this mechanism, e.g. one which
> intentionally corrupts a Message then confirms that the crc code drops it? I
> didn't find anything relevant in src/test/, but I'm not too familiar with the
> framework.

Actually, all it takes is just to disable CRC in configuration on one node (or even 
daemon). It'll cause to put zeros in CRC fields in all messages sent, triggering
CRC check failures cluster-wide (on remaining, unaffected nodes/daemons).

There's also internal CRC32 calculator test in src/test/common/test_crc32c.cc.

With best regards / Pozdrawiam
Piotr Dałek

��.n��������+%������w��{.n����z��u���ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f




[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux