'Returns the set of users who share a room with `user_id`'

@cachedInlineCallbacks(max_entries=500000, cache_context=True, iterable=True)
def get_users_who_share_room_with_user(self, user_id, cache_context):

    room_ids = (yield self.get_rooms_for_user(user_id, on_invalidate=cache_context.invalidate))
    user_who_share_room = set()
    for room_id in room_ids:
        user_ids = (yield self.get_users_in_room(room_id, on_invalidate=cache_context.invalidate))
        user_who_share_room.update(user_ids)
    defer.returnValue(user_who_share_room)
