summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Just <sam.just@inktank.com>2013-05-09 16:49:46 -0700
committerSamuel Just <sam.just@inktank.com>2013-05-09 17:28:15 -0700
commitd3dd99b725afaa026fe6f700ddc14a7f657f2170 (patch)
tree102ef3d821e8956de7bdced11b30c39bab504f00
parent0ef9b1e04991e1749a37f57fc964c8f0e6d7edc3 (diff)
downloadceph-d3dd99b725afaa026fe6f700ddc14a7f657f2170.tar.gz
PG: no need to wait on DeletingStateRef for flush
Signed-off-by: Samuel Just <sam.just@inktank.com>
-rw-r--r--src/osd/OSD.h12
-rw-r--r--src/osd/PG.cc3
2 files changed, 0 insertions, 15 deletions
diff --git a/src/osd/OSD.h b/src/osd/OSD.h
index 2a9f2827488..528896a73a5 100644
--- a/src/osd/OSD.h
+++ b/src/osd/OSD.h
@@ -143,7 +143,6 @@ typedef std::tr1::shared_ptr<ObjectStore::Sequencer> SequencerRef;
class DeletingState {
Mutex lock;
Cond cond;
- list<Context *> on_deletion_complete;
enum {
QUEUED,
CLEARING_DIR,
@@ -155,17 +154,6 @@ class DeletingState {
public:
DeletingState() :
lock("DeletingState::lock"), status(QUEUED), stop_deleting(false) {}
- void register_on_delete(Context *completion) {
- Mutex::Locker l(lock);
- on_deletion_complete.push_front(completion);
- }
- ~DeletingState() {
- for (list<Context *>::iterator i = on_deletion_complete.begin();
- i != on_deletion_complete.end();
- ++i) {
- (*i)->complete(0);
- }
- }
/// check whether removal was canceled
bool check_canceled() {
diff --git a/src/osd/PG.cc b/src/osd/PG.cc
index 31aaae36a1f..46427f0ee47 100644
--- a/src/osd/PG.cc
+++ b/src/osd/PG.cc
@@ -5001,9 +5001,6 @@ void PG::start_flush(ObjectStore::Transaction *t,
flushed = false;
on_applied->push_back(new ContainerContext<FlushStateRef>(flush_trigger));
on_safe->push_back(new ContainerContext<FlushStateRef>(flush_trigger));
- DeletingStateRef del = osd->deleting_pgs.lookup(info.pgid);
- if (del)
- del->register_on_delete(new ContainerContext<FlushStateRef>(flush_trigger));
}
/* Called before initializing peering during advance_map */