Project

General

Profile

Actions

Bug #21611

closed

rename in BlueFS is not atomic

Added by Chang Liu over 6 years ago. Updated over 6 years ago.

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

0%

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

Description

I testing repair command, and found that:

1. rocksdb creates new MANIFEST file during repair database, and wants to update CURRENT to new MANIFEST
2. rocksdb write a tmp file at first, and rename that tmp file to CURRENT

Repairing rocksdb works on FileStore, but not BlueStore. Rocksdb always use old MANIFEST, could not recovery correctly.

Rocksdb expects rename operation is atomic, but, BlueFS's rename is not atomic. We will not rename tmp to CURRENT actually.

some log: http://paste.ubuntu.com/25652339/

Actions #1

Updated by Chang Liu over 6 years ago

  • Status changed from New to Closed

ceph-kvstore-tool doesn't call umount() of BlueStore.

Actions

Also available in: Atom PDF