[
https://issues.apache.org/jira/browse/KAFKA-4932?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jeff Klukas updated KAFKA-4932:
-------------------------------
Summary: Add UUID Serde (was: Add UUID Serdes)
> Add UUID Serde
> --------------
>
> Key: KAFKA-4932
> URL: https://issues.apache.org/jira/browse/KAFKA-4932
> Project: Kafka
> Issue Type: Improvement
> Components: clients, streams
> Reporter: Jeff Klukas
> Priority: Minor
>
> I propose adding serializers and deserializers for the java.util.UUID class.
> I have many use cases where I want to set the key of a Kafka message to be a
> UUID. Currently, I need turn UUIDs into strings or byte arrays and use the
> associated Serdes, but it would be more convenient to serialize and
> deserialize UUIDs directly.
> I'd propose that the serializer and deserializer use the 36-byte string
> representation, calling UUID.toString and UUID.fromString
> Optionally, we could also has the deserializer support a 16-byte
> representation and it would check size of the input byte array to determine
> whether it's a binary or string representation of the UUID. It's not well
> defined whether the most significant bits or least significant go first, so
> this deserializer would have to support only one or the other.
> Optionally, there could be two variants of the serializer, a
> UUIDStringSerializer and a UUIDBytesSerializer.
> We would also wrap these in a Serde and modify the Serdes class to include
> this in the list of supported types.
> I would be willing to write this PR, but am looking for feedback about
> whether there are significant concerns here around ambiguity of what the byte
> representation of a UUID should be, or if there's desire to keep to list of
> built-in Serdes minimal such that a PR would be unlikely to be accepted.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)