MongoDB + Azure + Android: ошибка: com.mongodb.MongoException: не разговаривает с мастером и повторные попытки исчерпаны

Фон:

У меня есть наборы реплик MongoDB, работающие в облачной службе Azure + веб-роли с использованиеммонго-лазурная библиотека, Когда я впервые настроил свой проект Android для подключения к MongoDB / Azure, IO (чтение и запись) работало. Затем я разбил приложение из-за опечатки в моем жестко закодированном тесте JSONString, поэтому экземпляр Mongo не былне в состоянии правильно закрыть. После исправления этой проблемы JSONString я получил следующую ошибку (в трассировке стека) и нене может получить доступ к MongoDB / Azure. Возможно, неправильное закрытие соединения вызвало ошибку?

Вопрос:

Что именно означает эта ошибка? Почему бы немастер-экземпляр будет доступен?

E/AndroidRuntime: com.mongodb.MongoException: not talking to master and retries used up

Трассировка полного стека:

E/AndroidRuntime(6274): FATAL EXCEPTION: Thread-7108
E/AndroidRuntime(6274): Process: com.myproject.examplemongodb, PID: 6274
E/AndroidRuntime(6274): com.mongodb.MongoException: not talking to master and retries used up
E/AndroidRuntime(6274):     at com.mongodb.DBTCPConnector.innerCall(DBTCPConnector.java:271)
E/AndroidRuntime(6274):     at com.mongodb.DBTCPConnector.innerCall(DBTCPConnector.java:273)
E/AndroidRuntime(6274):     at com.mongodb.DBTCPConnector.innerCall(DBTCPConnector.java:273)
E/AndroidRuntime(6274):     at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:216)
E/AndroidRuntime(6274):     at com.mongodb.DBApiLayer$MyCollection.__find(DBApiLayer.java:288)
E/AndroidRuntime(6274):     at com.mongodb.DBApiLayer$MyCollection.__find(DBApiLayer.java:273)
E/AndroidRuntime(6274):     at com.mongodb.DB.getCollectionNames(DB.java:400)
E/AndroidRuntime(6274):     at com.myproject.examplemongodb.ActivityMain$1.run(ActivityMain.java:89)
E/AndroidRuntime(6274):     at java.lang.Thread.run(Thread.java:841)

Заметки:

Я использую новейшиеМонго-Java-драйвер (в настоящее время 2.11.3).Я подключаюсь удаленно к базе данных (не локальной).Другаявопрос упоминает об этой ошибке, но OP использует разные драйверы, и его решение не работает для Android / Java.

Возможное решение:

Похоже, что закрытие соединения из приложения позволило следующему запуску работать правильно. Но я'Я все еще беспокоюсь о возможности одновременных подключений, что я определенно хотел бы сделать.Обновление: я завернул вход в mongodb и завершил работу вокруг каждого из моих запросов, отправляемых на сервер, но ошибка все еще, кажется, периодически появляется. Пока что кажется, что запись работает каждый раз, а чтение работает только половину времени. Другая половина времени - опубликованная ошибка.

Ответы на вопрос(1)

Ваш ответ на вопрос