From 4712e984d3f62cdf51ea67da8197eed18a5983dd Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Fri, 18 Jan 2013 15:30:06 -0800 Subject: [PATCH] osd: make pg removal thread more friendly For a large PG these are saturating the filestore and journal queues. Do them synchronously to make them more friendly. They don't need to be fast. Signed-off-by: Sage Weil --- src/osd/OSD.cc | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 20187ef0428a3..c1027adf11241 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -2307,19 +2307,15 @@ void OSD::RemoveWQ::_process(boost::tuplequeue_transaction( - osr, t, - new ObjectStore::C_DeleteTransactionHolder(t, item->get<1>()), - new ContainerContext(item->get<1>())); + store->apply_transaction(osr, *t); + delete t; t = new ObjectStore::Transaction; } t->remove(coll, *i); } t->remove_collection(coll); - store->queue_transaction( - osr, t, - new ObjectStore::C_DeleteTransactionHolder(t, item->get<1>()), - new ContainerContext(item->get<1>())); + store->apply_transaction(*t); + delete t; delete item; } // ========================================= -- 2.39.5