From: Samuel Just Date: Tue, 11 Jun 2013 00:01:02 +0000 (-0700) Subject: OSD: create collection in handle_pg_create before _create_lock_pg X-Git-Tag: v0.65~117 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8190b439b7eb3f6c86fa3791af3ca89c85120c9f;p=ceph.git OSD: create collection in handle_pg_create before _create_lock_pg Fixes: #5270 Signed-off-by: Samuel Just Reviewed-by: Sage Weil --- diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 192b8f51adf..649b99f93c1 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -5738,12 +5738,12 @@ void OSD::handle_pg_create(OpRequestRef op) PG *pg = NULL; if (can_create_pg(pgid)) { pg_interval_map_t pi; + rctx.transaction->create_collection(coll_t(pgid)); pg = _create_lock_pg( osdmap, pgid, true, false, false, 0, creating_pgs[pgid].acting, creating_pgs[pgid].acting, history, pi, *rctx.transaction); - rctx.transaction->create_collection(coll_t(pgid)); pg->info.last_epoch_started = pg->info.history.last_epoch_started; creating_pgs.erase(pgid); wake_pg_waiters(pg->info.pgid);