Project

General

Profile

Bug #15749

rbd journal inspect / export tools should start at specific client commit position

Added by Jason Dillaman about 5 years ago. Updated about 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Target version:
-
% Done:

0%

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

Description

Given a large journal that has been trimmed, without starting at a specific (valid) commit position, it's likely you will encounter replay errors due to missing records that have been trimmed from one object but not another:

Example journal positions:

rbd --cluster master journal status 10612ae8944a 
minimum_set: 28
active_set: 34
registered clients: 
    [id=, commit_position=[positions=[[object_number=131, tag_tid=3, entry_tid=6511], [object_number=138, tag_tid=3, entry_tid=6510], [object_number=133, tag_tid=3, entry_tid=6509], [object_number=132, tag_tid=3, entry_tid=6508]]], state=connected]
    [id=e62a7d53-cb6a-4a62-ad50-d1d7642391bc, commit_position=[positions=[[object_number=117, tag_tid=2, entry_tid=64937], [object_number=112, tag_tid=2, entry_tid=64936], [object_number=115, tag_tid=2, entry_tid=64935], [object_number=118, tag_tid=2, entry_tid=64934]]], state=connected]

Result:

# rbd --cluster master journal inspect 10612ae8944a
2016-05-05 21:24:26.857870 7fb3a6a76700 -1 JournalPlayer: missing prior journal entry: Entry[tag_tid=2, entry_tid=50517, data size=7198]
rbd: failed to process journal: (42) No message of desired type
Summary:
  1 entries inspected, 0 errors
rbd: journal inspect: (42) No message of desired type

In this case, tag_tid=2, entry_tid=64937 should have been the starting point


Related issues

Related to rbd - Bug #15757: Journal clients should register with oldest registered commit position Resolved 05/06/2016

History

#1 Updated by Mykola Golub about 5 years ago

  • Assignee set to Mykola Golub

#2 Updated by Mykola Golub about 5 years ago

  • Status changed from New to In Progress

#3 Updated by Mykola Golub about 5 years ago

It looks like when #15757 is resolved this issue will be fixed automatically.

#4 Updated by Nathan Cutler about 5 years ago

  • Related to Bug #15757: Journal clients should register with oldest registered commit position added

#5 Updated by Mykola Golub about 5 years ago

  • Status changed from In Progress to Closed
  • Backport deleted (jewel)

`rbd journal inspect/export` calls register_client() and uses the registered position as starting point.

The issue with register_client() is fixed in #15757, so the problem with `rbd journal inspect/export` should be fixed too.

Also available in: Atom PDF