summaryrefslogtreecommitdiffstats
path: root/src/os/filestore/FileStore.cc
diff options
context:
space:
mode:
authorKefu Chai <kchai@redhat.com>2017-07-06 08:07:06 +0200
committerKefu Chai <kchai@redhat.com>2017-07-06 08:07:29 +0200
commit797dadc81bde5d91e1bd5941511ddd312ea89eea (patch)
tree056eefd053692f82e63acc013bc0482a02305dac /src/os/filestore/FileStore.cc
parentMerge pull request #16026 from linuxbox2/wip-tag-timeout-secs (diff)
downloadceph-797dadc81bde5d91e1bd5941511ddd312ea89eea.tar.xz
ceph-797dadc81bde5d91e1bd5941511ddd312ea89eea.zip
Revert "os/filestore: move ondisk in front, so that return oncommit earlier, and improve write op performance."
This reverts commit 21f167cf39cc7c025004e9b455ce8ba1252863f0. Fixes: http://tracker.ceph.com/issues/20524 Signed-off-by: Kefu Chai <kchai@redhat.com>
Diffstat (limited to '')
-rw-r--r--src/os/filestore/FileStore.cc13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/os/filestore/FileStore.cc b/src/os/filestore/FileStore.cc
index 1d018f3eaf8..b6b809aff9c 100644
--- a/src/os/filestore/FileStore.cc
+++ b/src/os/filestore/FileStore.cc
@@ -2270,19 +2270,18 @@ void FileStore::_journaled_ahead(OpSequencer *osr, Op *o, Context *ondisk)
o->trace.event("writeahead journal finished");
- // do ondisk completions async, to prevent any onreadable_sync completions
- // getting blocked behind an ondisk completion.
- if (ondisk) {
- dout(10) << " queueing ondisk " << ondisk << dendl;
- ondisk_finishers[osr->id % m_ondisk_finisher_num]->queue(ondisk);
- }
-
// this should queue in order because the journal does it's completions in order.
queue_op(osr, o);
list<Context*> to_queue;
osr->dequeue_journal(&to_queue);
+ // do ondisk completions async, to prevent any onreadable_sync completions
+ // getting blocked behind an ondisk completion.
+ if (ondisk) {
+ dout(10) << " queueing ondisk " << ondisk << dendl;
+ ondisk_finishers[osr->id % m_ondisk_finisher_num]->queue(ondisk);
+ }
if (!to_queue.empty()) {
ondisk_finishers[osr->id % m_ondisk_finisher_num]->queue(to_queue);
}