Мое приложение вызывает приложение.В моем приложении я сохраняю список пользователей в firestore, которые находятся в сети и могут принимать вызовы.Затем другой пользователь находит эти данные и удаляет эти данные из своего и вызывает пользователя.
Но этот процесс настолько медленный, что я в конечном итоге вызываю одного и того же пользователя от разных пользователей одновременно.Пожалуйста, помогите мне решить эту проблему.
Я делаю запрос вот так
Query query = firestore.collection("channels").document("callRequests").collection(interest).whereEqualTo("genderFlag",true).whereEqualTo("gender",getOppositeGender())
.whereEqualTo("levelFlag",false).orderBy("rank", Query.Direction.DESCENDING).limit(1L);
Я думал об использовании транзакции, но для запросов нет транзакций.
И все жеесли транзакция доступна, я не знаю, как решить эту проблему.
Пожалуйста, скажите, что я могу сделать, и не стесняйтесь менять заголовок вопроса, я не был уверен, какой заголовок объяснит мою проблему.