Видимое отставание при сохранении ParseRelation и последующем его получении
Итак, у меня есть Trip
класс и Place
класс, который расширяет оба ParseObject
и имеют много-много отношений между ними. Так что я использую ParseRelation
вот так:
Trip trip = ...
Place place = ...
trip.getRelation('place_relation').add(place);
trip.saveEventually();
Затем, позже, я выбираю такие места:
final ArrayList<Place> places;
ParseRelation<Place> placeParseRelation = trip.getRelation("place_relation");
ParseQuery<Place> placeParseQuery = placeParseRelation.getQuery();
placeParseQuery.findInBackground(new FindCallback<Place>() {
@Override
public void done(List<Place> objects, ParseException e) {
if (e != null) {
...
} else {
places = (ArrayList<Place>) objects;
}
}
});
Я понимаю это, потому что я использую saveEventually()
между записью в БД и извлечением из БД может существовать задержка, но реально для правильного сохранения это должно быть <1 сек. Однако я обнаружил, что это может занять до 5 минут до Places
возвращаются в запросе. Время, необходимое для отображения результатов, может варьироваться, иногда оно почти мгновенно, а, как я уже говорил, иногда может составлять несколько минут. Я нахожусь на быстром интернет-соединении, используя новый эмулятор GenyMotion.
Есть идеи, почему это может происходить?