]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/ECBackend: debug ec scrub error paths
authorSage Weil <sage@redhat.com>
Wed, 3 Jan 2018 20:19:35 +0000 (14:19 -0600)
committerSage Weil <sage@redhat.com>
Wed, 17 Jan 2018 03:52:09 +0000 (21:52 -0600)
Signed-off-by: Sage Weil <sage@redhat.com>
src/osd/ECBackend.cc

index d74fbf33ce7d05b871db29d6f65253b1f40df416..dfb75a6c3d7ba94cee359a1ca2818bebd3edf98f 100644 (file)
@@ -2482,7 +2482,10 @@ int ECBackend::be_deep_scrub(
     if (!get_parent()->get_pool().allows_ecoverwrites()) {
       assert(hinfo->has_chunk_hash());
       if (hinfo->get_total_chunk_size() != (unsigned)pos.data_pos) {
-       dout(0) << "_scan_list  " << poid << " got incorrect size on read" << dendl;
+       dout(0) << "_scan_list  " << poid << " got incorrect size on read 0x"
+               << std::hex << pos
+               << " expected 0x" << hinfo->get_total_chunk_size() << std::dec
+               << dendl;
        o.ec_size_mismatch = true;
        return 0;
       }
@@ -2490,7 +2493,10 @@ int ECBackend::be_deep_scrub(
       if (!skip_data_digest &&
           hinfo->get_chunk_hash(get_parent()->whoami_shard().shard) !=
          pos.data_hash.digest()) {
-       dout(0) << "_scan_list  " << poid << " got incorrect hash on read" << dendl;
+       dout(0) << "_scan_list  " << poid << " got incorrect hash on read 0x"
+               << std::hex << pos.data_hash.digest() << " !=  expected 0x"
+               << hinfo->get_chunk_hash(get_parent()->whoami_shard().shard)
+               << std::dec << dendl;
        o.ec_hash_mismatch = true;
        return 0;
       }