]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
osd: clear data digest when write_trunc 42019/head
authorAran85 <z13121369189@gmail.com>
Wed, 12 May 2021 01:33:06 +0000 (09:33 +0800)
committerNeha Ojha <nojha@redhat.com>
Thu, 24 Jun 2021 23:22:14 +0000 (23:22 +0000)
commit614b5d3d3bcf8f373b38ec75ea6607b8e1f7f867
tree8d66b2c54d3e107e1099d676a2de4a0f0fa3ee49
parentcdbccf35af6f52ed9f678dd056935b6ce0f863f9
osd: clear data digest when write_trunc

like CEPH_OSD_OP_TRUNCATE, the truncate within CEPH_OSD_OP_WRITE should
clear oi.data_digest too.

consider such circumstance:
[write 0~10]
[write 5~10 [1@5]]

the first write will generate data_digest, if the second write don't
clear digest, it will continue calc digest and make crc mismatch.

Fixes: https://tracker.ceph.com/issues/50763
Signed-off-by: Zengran Zhang <zhangzengran@sangfor.com.cn>
(cherry picked from commit 0e4ffe5e51291d1776aacfc0d88aa3b5f4c3ecca)
src/osd/PrimaryLogPG.cc