Ich bekomme manchmal die folgende Ausnahme auf put(). (Obwohl im Allgemeinen, mein Code funktioniert gut.)Wie können wir verhindern, dass Google Cloud API Ausnahmen verschluckt?
Meine beste Vermutung ist, dass Datenspeicher intern stößt einen Indizierungsfehler (die gibt es no tools for diagnosing), aber ich bin nicht sicher, weil der Fehler mit einem Protobuf Parsen Problem geschluckt wird.
In another case, ein ähnliches Schlucken von Ausnahmen, mit Protobuf Parsing Nachricht, wurde durch einen Fehler in Dataflow eigenen Datastore API verursacht, und das Dataflow-Team behoben, - aber hier verwende ich nicht Dataflow überhaupt.
Wie kann ich lernen, was das verursacht?
Verwenden von Google Cloud API 0.28.
... at com.google.cloud.datastore.DatastoreImpl.put(DatastoreImpl.java:340)
at com.google.cloud.datastore.DatastoreImpl.commitMutation(DatastoreImpl.java:380)
at com.google.cloud.datastore.DatastoreImpl.commit(DatastoreImpl.java:386)
at com.google.cloud.RetryHelper.runWithRetries(RetryHelper.java:244)
at com.google.cloud.RetryHelper.doRetry(RetryHelper.java:179)
at com.google.cloud.datastore.DatastoreImpl$4.call(DatastoreImpl.java:387)
at com.google.cloud.datastore.DatastoreImpl$4.call(DatastoreImpl.java:390)
at com.google.cloud.datastore.spi.DefaultDatastoreRpc.commit(DefaultDatastoreRpc.java:131)
at com.google.datastore.v1.client.Datastore.commit(Datastore.java:84)
at com.google.datastore.v1.client.RemoteRpc.call(RemoteRpc.java:89)
at com.google.datastore.v1.client.RemoteRpc.makeException(RemoteRpc.java:148)
at com.google.rpc.Status.parseFrom(Status.java:323)
java.lang.NoSuchMethodError: com.google.protobuf.GeneratedMessage.parseWithIOException(Lcom/google/protobuf/Parser;Ljava/io/InputStream;)Lcom/google/protobuf/Message;
Vielen Dank. Das hat den Trick gemacht. Die Ausnahme ist in der Tat eine Ausnahme "Index Einträge zu groß für Entität" –