// poll first splay offset and active splay offset since
// new records should only appear in those two objects
C_Watch *ctx = new C_Watch(this);
- ObjectPlayerPtr object_player = get_object_player();
- object_player->watch(ctx, m_watch_interval);
+ ObjectPlayerPtr object_player = get_object_player();
uint8_t splay_width = m_journal_metadata->get_splay_width();
if (object_player->get_object_number() % splay_width != 0) {
++ctx->pending_fetches;
- object_player = m_object_players.begin()->second.begin()->second;
- object_player->watch(ctx, m_watch_interval);
+ ObjectPlayerPtr first_object_player =
+ m_object_players.begin()->second.begin()->second;
+ first_object_player->watch(ctx, m_watch_interval);
}
+
+ object_player->watch(ctx, m_watch_interval);
m_watch_scheduled = true;
}
Mutex::Locker timer_locker(m_timer_lock);
Mutex::Locker locker(m_lock);
assert(!m_fetch_in_progress);
+ assert(!m_watch_in_progress);
assert(m_watch_ctx == NULL);
}
}