From 198d3ff88446c2c65346e5be65548b7cb18fbd1e Mon Sep 17 00:00:00 2001 From: Jason Volk Date: Sun, 14 Jul 2019 15:13:49 -0700 Subject: [PATCH] modules/client/sync/rooms/state: Query for event_idx outside of lock; hint pool. --- modules/client/sync/rooms/state.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/client/sync/rooms/state.cc b/modules/client/sync/rooms/state.cc index 4a57172e3..fafeae9c4 100644 --- a/modules/client/sync/rooms/state.cc +++ b/modules/client/sync/rooms/state.cc @@ -277,11 +277,13 @@ ircd::m::sync::room_state_phased_events(data &data) [&data, &array, &ret, &mutex](const m::event &event) { ret |= true; + const auto event_idx(m::index(event)); const std::lock_guard lock{mutex}; - room_state_append(data, array, event, index(event)); + room_state_append(data, array, event, event_idx); } }; + sync::pool.min(6); ctx::concurrent_for_each> { sync::pool, keys, [&data, &append](const auto &key)