Объективировать Добавить сущность в корень транзакции

Мой вопрос довольно прост.

У меня есть экземпляры пользователей, которые не принадлежат ни одному родителю, и поэтому их группа сущностей является корневой. Я хочу добавить их в транзакцию с помощью Objectify. Проблема в том, что я не знаю, как сообщить объекту, что родительский пользователь является корневым, и когда я делаю множественный ввод (пользователь), я получаю:

   operating on too many entity groups in a single transaction

Должен ли я добавить какой-то специальный @Parent для пользователя?


person out_sid3r    schedule 14.04.2012    source источник


Ответы (1)


Вам потребуется выполнить межгрупповую транзакцию https://developers.google.com/appengine/docs/java/datastore/transactions

person dragonx    schedule 14.04.2012
comment
Это уже считается межгрупповой транзакцией, и поэтому я могу повлиять только на 5 различных групп объектов. Теперь моя проблема в том, что это должна быть только одна группа сущностей... корень... верно? - person out_sid3r; 15.04.2012
comment
нет, каждая сущность является собственным корнем. вы правы в том, что это кросс-групповая транзакция, но есть ли у вас правильный синтаксис, чтобы указать, что это кросс-групповая транзакция? - person dragonx; 16.04.2012
comment
Приносим извинения за задержку ответа и спасибо за внимание... Я просто сделал вставку в транзакцию и фиксацию... насколько я понял, objectify обнаруживает, что это более чем одна группа сущностей, и выполняет межгрупповую транзакцию под капотом. Тем не менее, если я ставлю 4 объекта, все работает нормально, но если я делаю это с 5, я получаю описанную ошибку. Итак, есть ли способ поместить в транзакцию более 5 сущностей, чьим родителем является root? - person out_sid3r; 18.04.2012