Project

General

Profile

Actions

Bug #53240

open

full-object read crc is mismatch, because truncate modify oi.size and forget to clear data_digest

Added by wendong jia over 2 years ago. Updated 13 days ago.

Status:
Fix Under Review
Priority:
High
Category:
-
Target version:
% Done:

100%

Source:
Community (user)
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(RADOS):
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

I use 100 threads to dd on multiple files under the directory, so the same file can be truncated at any time.
When dd is completed, md5sum will be called to calculate the crc, and then Loop this operation .

I encountered such a situation :
osd.log:
2021-10-14 00:13:24.700 7f592ef32700 1 -- [v2:10.61.152.7:6808/412130,v1:10.61.152.7:6809/412130] --> 10.61.152.108:0/1245157660 -- osd_op_reply(15860425 10000178110.00000006 [write 3932160~0 [25@0]] v114962'126357 uv126357 ondisk = 0) v8 -- 0x7f598eebe780 con 0x7f5984f9ec00
2021-10-14 00:13:24.700 7f592ef32700 1 -- [v2:10.61.152.7:6808/412130,v1:10.61.152.7:6809/412130] --> 10.61.152.108:0/1245157660 -- osd_op_reply(15860680 10000178110.00000006 [write 4063232~0 [25@0]] v114962'126358 uv126358 ondisk = 0) v8 -- 0x7f596efcec80 con 0x7f5984f9ec00
2021-10-14 00:13:43.302 7f592ef32700 1 -- [v2:192.168.75.3:6808/412130,v1:192.168.75.3:6809/412130] --> [v2:192.168.75.2:6808/24047,v1:192.168.75.2:6809/24047] -- MOSDECSubOpRead(16.2ads1 114962/114951 ECSubRead(tid=6751702, to_read={16:b555bed4:::10000178110.00000006:head=0,2031616,0}, subchunks={16:b555bed4:::10000178110.00000006:head=[0,1]}, attrs_to_read=)) v3 -- 0x7f596af31b80 con 0x7f596ba5b000
2021-10-14 00:13:43.302 7f592ef32700 1 -- [v2:192.168.75.3:6808/412130,v1:192.168.75.3:6809/412130] --> [v2:192.168.75.3:6808/412130,v1:192.168.75.3:6809/412130] -- MOSDECSubOpRead(16.2ads0 114962/114951 ECSubRead(tid=6751702, to_read={16:b555bed4:::10000178110.00000006:head=0,2031616,0}, subchunks={16:b555bed4:::10000178110.00000006:head=[0,1]}, attrs_to_read=)) v3 -- 0x7f596cbcd180 con 0x7f5964bb9800
2021-10-14 00:13:43.302 7f5936f42700 1 -- [v2:192.168.75.3:6808/412130,v1:192.168.75.3:6809/412130] <== osd.13 v2:192.168.75.3:6808/412130 0 ==== MOSDECSubOpRead(16.2ads0 114962/114951 ECSubRead(tid=6751702, to_read={16:b555bed4:::10000178110.00000006:head=0,2031616,0}, subchunks={16:b555bed4:::10000178110.00000006:head=[0,1]}, attrs_to_read=)) v3 ==== 0+0+0 (unknown 0 0 0) 0x7f596cbcd180 con 0x7f5964bb9800
2021-10-14 00:13:43.597 7f592ef32700 1 log_channel(cluster) log [ERR] : full-object read crc 0x29d98db8 != expected 0xffffffff on 16:b555bed4:::10000178110.00000006:head
2021-10-14 00:13:43.597 7f592ef32700 1 -
[v2:10.61.152.7:6808/412130,v1:10.61.152.7:6809/412130] --> 10.61.152.108:0/1245157660 -- osd_op_reply(15913661 10000178110.00000006 [read 0~0 [26@0]] v0'0 uv0 ondisk = 5 ((5) Input/output error)) v8 - 0x7f596c20a000 con 0x7f5984f9ec00
2021-10-14 00:14:11.948 7f592ef32700 1 -- [v2:192.168.75.3:6808/412130,v1:192.168.75.3:6809/412130] --> [v2:192.168.75.2:6808/24047,v1:192.168.75.2:6809/24047] -- MOSDECSubOpRead(16.2ads1 114962/114951 ECSubRead(tid=6753957, to_read={16:b555bed4:::10000178110.00000006:head=0,2031616,0}, subchunks={16:b555bed4:::10000178110.00000006:head=[0,1]}, attrs_to_read=)) v3 -- 0x7f597358bb80 con 0x7f596ba5b000
2021-10-14 00:14:11.948 7f592ef32700 1 -- [v2:192.168.75.3:6808/412130,v1:192.168.75.3:6809/412130] --> [v2:192.168.75.3:6808/412130,v1:192.168.75.3:6809/412130] -- MOSDECSubOpRead(16.2ads0 114962/114951 ECSubRead(tid=6753957, to_read={16:b555bed4:::10000178110.00000006:head=0,2031616,0}, subchunks={16:b555bed4:::10000178110.00000006:head=[0,1]}, attrs_to_read=)) v3 -- 0x7f5973adc780 con 0x7f5964bb9800
2021-10-14 00:14:11.948 7f5936f42700 1 -- [v2:192.168.75.3:6808/412130,v1:192.168.75.3:6809/412130] <== osd.13 v2:192.168.75.3:6808/412130 0 ==== MOSDECSubOpRead(16.2ads0 114962/114951 ECSubRead(tid=6753957, to_read={16:b555bed4:::10000178110.00000006:head=0,2031616,0}, subchunks={16:b555bed4:::10000178110.00000006:head=[0,1]}, attrs_to_read=)) v3 ==== 0+0+0 (unknown 0 0 0) 0x7f5973adc780 con 0x7f5964bb9800
2021-10-14 00:14:12.131 7f592ef32700 1 log_channel(cluster) log [ERR] : full-object read crc 0x29d98db8 != expected 0xffffffff on 16:b555bed4:::10000178110.00000006:head
2021-10-14 00:14:12.131 7f592ef32700 1 -
[v2:10.61.152.7:6808/412130,v1:10.61.152.7:6809/412130] --> 10.61.152.108:0/1245157660 -- osd_op_reply(16002738 10000178110.00000006 [read 0~0 [26@0]] v0'0 uv0 ondisk = 5 ((5) Input/output error)) v8 - 0x7f59833e1900 con 0x7f5984f9ec00
2021-10-14 00:14:21.565 7f592ef32700 1 -- [v2:10.61.152.7:6808/412130,v1:10.61.152.7:6809/412130] --> 10.61.152.108:0/1245157660 -- osd_op_reply(16026297 10000178110.00000006 [write 0~131072 [26@0]] v114962'126480 uv126480 ondisk = 0) v8 -- 0x7f598435d900 con 0x7f5984f9ec00

object infO: {
"id": {
"oid": "10000178110.00000006",
"key": "",
"snapid": -2,
"hash": 729655981,
"max": 0,
"pool": 16,
"namespace": "",
"shard_id": 0,
"max": 0
},
"info": {
"oid": {
"oid": "10000178110.00000006",
"key": "",
"snapid": -2,
"hash": 729655981,
"max": 0,
"pool": 16,
"namespace": ""
},
"version": "114962'126498",
"prior_version": "114962'126497",
"last_reqid": "client.60778083.0:16028694",
"user_version": 126498,
"size": 4063232,
"mtime": "2021-10-14 00:13:32.645230",
"local_mtime": "2021-10-14 00:14:21.914049",
"lost": 0,
"flags": [
"dirty"
],
"truncate_seq": 26,
"truncate_size": 0,
*"data_digest": "0xffffffff",
"omap_digest": "0xffffffff",
"expected_object_size": 0,
"expected_write_size": 0,
"alloc_hint_flags": 0,
"manifest": {
"type": 0
},
"watchers": {}
},
"stat": {
"size": 2031616,
"blksize": 4096,
"blocks": 496,
"nlink": 1
},
"SnapSet": {
"snap_context": {
"seq": 1,
"snaps": []
},
"clones": []
},
"hinfo": {
"total_chunk_size": 2031616,
"cumulative_shard_hashes": []
}
}

Actions

Also available in: Atom PDF