You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We should not call MLOMEMO postOMEMOMessageForUser:withMessage: from MLOMEMO processOMEMODevices:from: because there could be subsequent devicelist updates still in our receive queue.
The most common case could be a device added, removed by an update from another device and then added again by the first device.
The proper solution would be to record all devicelist changes since the last call to MLOMEMO handleHasLoggedIn: and "deduplicate" them when MLOMEMO handleCatchupDone: gets called. Then call MLOMEMO postOMEMOMessageForUser:withMessage: with that "deduplicated" list.
This solution is somewhat similar to our solution of queuing session repairs and key transport elements until catchup done.
The text was updated successfully, but these errors were encountered:
We should not call
MLOMEMO postOMEMOMessageForUser:withMessage:
fromMLOMEMO processOMEMODevices:from:
because there could be subsequent devicelist updates still in our receive queue.The most common case could be a device added, removed by an update from another device and then added again by the first device.
The proper solution would be to record all devicelist changes since the last call to
MLOMEMO handleHasLoggedIn:
and "deduplicate" them whenMLOMEMO handleCatchupDone:
gets called. Then callMLOMEMO postOMEMOMessageForUser:withMessage:
with that "deduplicated" list.This solution is somewhat similar to our solution of queuing session repairs and key transport elements until catchup done.
The text was updated successfully, but these errors were encountered: