Skip to content

Commit

Permalink
client: use unique_ptr for fsmap_user
Browse files Browse the repository at this point in the history
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
  • Loading branch information
batrick committed Nov 9, 2016
1 parent 2578512 commit 55f4605
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 6 deletions.
9 changes: 4 additions & 5 deletions src/client/Client.cc
Expand Up @@ -247,7 +247,7 @@ Client::Client(Messenger *m, MonClient *mc)
objecter_finisher(m->cct),
tick_event(NULL),
monclient(mc), messenger(m), whoami(mc->get_global_id()),
cap_epoch_barrier(0), fsmap_user(nullptr),
cap_epoch_barrier(0),
last_tid(0), oldest_tid(0), last_flush_tid(1),
initialized(false), authenticated(false),
mounted(false), unmounting(false),
Expand Down Expand Up @@ -2521,8 +2521,7 @@ void Client::handle_fs_map(MFSMap *m)

void Client::handle_fs_map_user(MFSMapUser *m)
{
delete fsmap_user;
fsmap_user = new FSMapUser;
fsmap_user.reset(new FSMapUser);
*fsmap_user = m->get_fsmap();
m->put();

Expand Down Expand Up @@ -5410,12 +5409,12 @@ int Client::fetch_fsmap(bool user)
ldout(cct, 10) << __func__ << " learned FSMap version " << fsmap_latest << dendl;

if (user) {
if (fsmap_user == nullptr || fsmap_user->get_epoch() < fsmap_latest) {
if (!fsmap_user || fsmap_user->get_epoch() < fsmap_latest) {
monclient->sub_want("fsmap.user", fsmap_latest, CEPH_SUBSCRIBE_ONETIME);
monclient->renew_subs();
wait_on_list(waiting_for_fsmap);
}
assert(fsmap_user != nullptr);
assert(fsmap_user);
assert(fsmap_user->get_epoch() >= fsmap_latest);
} else {
if (!fsmap || fsmap->get_epoch() < fsmap_latest) {
Expand Down
2 changes: 1 addition & 1 deletion src/client/Client.h
Expand Up @@ -321,7 +321,7 @@ class Client : public Dispatcher, public md_config_obs_t {
// FSMap, for when using mds_command
list<Cond*> waiting_for_fsmap;
std::unique_ptr<FSMap> fsmap;
FSMapUser *fsmap_user;
std::unique_ptr<FSMapUser> fsmap_user;

// MDS command state
CommandTable<MDSCommandOp> command_table;
Expand Down

0 comments on commit 55f4605

Please sign in to comment.