[ 
https://issues.apache.org/jira/browse/KAFKA-6684?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Amit Sela updated KAFKA-6684:
-----------------------------
    Description: 
Casting from BYTES is not supported, which means that casting LogicalTypes is 
not supported.

This proposes to allow casting anything to a string, kind of like Java's 
{{toString()}}, such that if the object is actually a LogicalType it can be 
"serialized" as string instead of bytes+schema.

Examples:

{{BigDecimal}} will cast to the string representation of the number.

{{Timestamp}} will cast to the string representation of the timestamp, or maybe 
UTC {{yyyymmddTHH:MM:SS.f}} format?

Worst case, bytes are "casted" to whatever the {{toString()}} returns - its up 
to the user to know the data.

This would help when using a JSON sink, or anything that's not Avro.

  was:
Casting from BYTES is not supported, which means that casting LogicalTypes is 
not supported.

This proposes to allow casting anything to a string, kind of like Java's 
{{toString()}}, such that if the object is actually a LogicalType it can be 
"serialized" as string instead of bytes+schema.

Worst case, bytes are "casted" to whatever the {{toString()}} returns - its up 
to the user to know the data.

This would help when using a JSON sink, or anything that's not Avro.


> Support casting values with bytes schema to string 
> ---------------------------------------------------
>
>                 Key: KAFKA-6684
>                 URL: https://issues.apache.org/jira/browse/KAFKA-6684
>             Project: Kafka
>          Issue Type: Improvement
>          Components: KafkaConnect
>            Reporter: Amit Sela
>            Priority: Major
>
> Casting from BYTES is not supported, which means that casting LogicalTypes is 
> not supported.
> This proposes to allow casting anything to a string, kind of like Java's 
> {{toString()}}, such that if the object is actually a LogicalType it can be 
> "serialized" as string instead of bytes+schema.
> Examples:
> {{BigDecimal}} will cast to the string representation of the number.
> {{Timestamp}} will cast to the string representation of the timestamp, or 
> maybe UTC {{yyyymmddTHH:MM:SS.f}} format?
> Worst case, bytes are "casted" to whatever the {{toString()}} returns - its 
> up to the user to know the data.
> This would help when using a JSON sink, or anything that's not Avro.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to