Ключи в Google App Engine заказаны - PullRequest
0 голосов
/ 28 марта 2012

Я создаю объект с помощью JDO и позволяю GAE установить для меня ключ.

    @PrimaryKey
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
    private Key key;

В результате PersistenceManager.makePersistent(myObject) у меня есть ключ с длинным значением, которое выглядит какприказал.Я уже искал документацию GAE, но не могу найти, где это документально подтверждено.Этот сгенерированный ключ упорядочен созданием?

Я знаю, что это не инкрементный.

1 Ответ

5 голосов
/ 28 марта 2012

Клавиши AFAIK назначены в диапазонах.См. DatastoreService.allocateIDs().

Насколько я заметил, каждый экземпляр получает диапазон.Таким образом, когда сущности создаются, идентификаторы в пределах диапазона идентифицируются, но они не упорядочены, поскольку они поступают из разных диапазонов.

Я предполагаю: вы пытаетесь выяснить, какие сущности являются новыми?Добавьте свойство отметки времени, затем проверьте наличие обновлений с помощью курсоров .

...