SimpleDB - сколько времени после вставки до тех пор, пока предмет не станет доступен для чтения?

У меня есть фрагмент, и как только пользователь нажимает "ОК", элемент добавляется в мою базу данных, а его идентификатор добавляется в ArrayAdapter. Сразу же после этого адаптер пытается нарисовать представление, но в первый раз, когда он пытается получить свои атрибуты, он возвращает нулевой HashMap (он рисуется правильно в следующих случаях).

Есть ли способ убедиться, что элемент находится в таблице, прежде чем пытаться получить его атрибуты? Даже помещение извлечения атрибута в цикл while до тех пор, пока оно не возвращает ненулевое значение, HashMap не работает, поэтому это не выглядит проблемой времени.

2 ответа

Вам нужно сделать Select или же GetAttributes с ConsistentRead=true как Amazon SimpleDB поддерживает два варианта согласованности чтения: eventually consistent read а также consistent read, Eventually consistent read по умолчанию. Для более подробной информации, пожалуйста, обратитесь к док. ссылка на сайт

Попробуйте использовать AsynTask.

  • Добавить элемент в базу данных в doInBackground.

  • Прочитайте это в postExecute.

Вы сделали.

Другие вопросы по тегам