So: with 2.0.0-SNAPSHOT, handling of a failed command triggers an exception due to UUID deserialization of DataAPIErrorDescriptor (via APIException etc) fails. This is because UUIDDeserializer only handles EJSON-wrapped UUID case like:
Caused by: com.fasterxml.jackson.databind.JsonMappingException: Cannot convert the expression as an UUID "c9172c7a-3dd7-41d9-aa53-8d5361c660d9" (through reference chain: com.datastax.astra.internal.api.DataAPIResponse["errors"]->java.util.ArrayList[0])
Since Data API uses "plain" UUID in many places, I think it is necessary for deserializer to allow either. I can try to provide a PR -- I verified handling works with extended deserializer.
So: with 2.0.0-SNAPSHOT, handling of a failed command triggers an exception due to
UUID
deserialization ofDataAPIErrorDescriptor
(viaAPIException
etc) fails. This is becauseUUIDDeserializer
only handles EJSON-wrapped UUID case like:so you get
Since Data API uses "plain" UUID in many places, I think it is necessary for deserializer to allow either. I can try to provide a PR -- I verified handling works with extended deserializer.