Project

General

Profile

Bug #25000

[deep-copy] object map can get improperly invalidated

Added by Jason Dillaman about 1 year ago. Updated 12 months ago.

Status:
Resolved
Priority:
Normal
Target version:
-
Start date:
07/19/2018
Due date:
% Done:

0%

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

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 about 1 year ago

  • Status changed from In Progress to Need Review

#2 Updated by Mykola Golub about 1 year ago

  • Status changed from Need Review to Pending Backport

#3 Updated by Nathan Cutler about 1 year ago

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

#4 Updated by Nathan Cutler 12 months ago

  • Status changed from Pending Backport to Resolved

Also available in: Atom PDF