Project

General

Profile

Bug #25000

[deep-copy] object map can get improperly invalidated

Added by Jason Dillaman over 1 year ago. Updated over 1 year ago.

Status:
Resolved
Priority:
Normal
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
mimic
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature:

Description

If an image has snapshots where snap "A" is larger than snap "B" (resize down), when the objects corresponding to the shrunk extent are copied, the object copy state machine might improperly attempt to update the object map for snap "B" even though snap "B" is smaller than the object number. Double-checking to see if this is just a bug in librados-test-stub not properly updating the clone diff map upon truncate/zero.

seed 7464
1: Note: Google Test filter = TestDeepCopy.Stress_SmallerDstObjSize
1: [==========] Running 1 test from 1 test case.
1: [----------] Global test environment set-up.
1: [----------] 1 test from TestDeepCopy
1: [ RUN      ] TestDeepCopy.Stress_SmallerDstObjSize
1: creating image with stripe unit: 2097152, stripe count: 16
1: write: A 46495570~7422724
1: discard: 18687514~7049574
1: write: A 75508005~8378075
1: discard: 50628501~3629157
1: write: A 4510343~104088
1: discard: 8482779~3007753
1: write: A 15574073~1075868
1: discard: 61979544~7208669
1: snap: snap0
1: clone image2 -> image3
1: resize: 86665896
1: write: B 28258422~5455808
1: discard: 76028479~578801
1: write: B 53724730~3090072
1: discard: 69636337~5664914
1: write: B 38984226~1932465
1: discard: 1015741~6282050
1: write: B 52544008~7005868
1: discard: 1632344~2876879
1: snap: snap1
1: clone image3 -> image4 
1: resize: 133360625
1: write: C 111145660~2627771
1: discard: 99589161~4501740
1: write: C 65652891~708191
1: discard: 74085549~6962927
1: write: C 25056404~5981985
1: discard: 99791811~2899677
1: write: C 17866807~6142715
1: discard: 71563877~407097
1: snap: snap2
1: resize: 91725669
1: write: D 35887249~3047753
1: discard: 16795095~1265095
1: write: D 24083365~7142610
1: discard: 32408896~6891214
1: write: D 57383044~2122985
1: discard: 18762295~4652919
1: write: D 65131186~7636414
1: discard: 55874866~2643687
1: snap: snap3
1: /home/jdillaman/ceph/src/test/librbd/test_DeepCopy.cc:92: Failure
1: Value of: flags_set
1:   Actual: true
1: Expected: false
1: [  FAILED  ] TestDeepCopy.Stress_SmallerDstObjSize (517 ms)

Related issues

Copied to rbd - Backport #25083: mimic: [deep-copy] object map can get improperly invalidated Resolved

History

#1 Updated by Jason Dillaman over 1 year ago

  • Status changed from In Progress to Fix Under Review

#2 Updated by Mykola Golub over 1 year ago

  • Status changed from Fix Under Review to Pending Backport

#3 Updated by Nathan Cutler over 1 year ago

  • Copied to Backport #25083: mimic: [deep-copy] object map can get improperly invalidated added

#4 Updated by Nathan Cutler over 1 year ago

  • Status changed from Pending Backport to Resolved

Also available in: Atom PDF