Wie viele Objekte sind "zu viele" in einer einzigen Transaktion für den DataStore von Google (High Replication)?

8

Ich habe folgende Entität (nicht relevante Felder / Methoden werden entfernt).

%Vor%

Also ... Ich versuche, Batch-Get für 10 Objekte zu bekommen, für die ich Schlüssel mit HitsStatsTotalDO.createKey() konstruiere. Ich versuche, sie in einer Transaktion wie folgt abzurufen:

%Vor%

was folgende Ausnahme auslöst:

java.lang.IllegalArgumentException: operating on too many entity groups in a single transaction.

Könnten Sie bitte erläutern, wie viele zu viele sind und wie man sie beheben kann? Ich konnte die genaue Nummer in der Dokumentation nicht finden.

Danke!

    
expert 24.11.2011, 02:31
quelle

2 Antworten

5

Das Problem ist nicht die Anzahl der Entitäten, die Sie abrufen, sondern die Tatsache, dass sie sich in mehreren Entitätsgruppen befinden. Führen Sie das Abrufen außerhalb einer Transaktion durch oder verwenden Sie eine XG-Transaktion (Cross Group) .

    
Nick Johnson 24.11.2011, 03:25
quelle
1

In einer einzigen Transaktion können Sie Entitäten in derselben Entitätsgruppe betreiben.

  

Was in einer Transaktion ausgeführt werden kann

    
88250 24.11.2011 03:09
quelle