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

Martin Tzvetanov Grigorov resolved AVRO-2862.
---------------------------------------------
    Fix Version/s: 1.11.1
                   1.12.0
         Assignee: Martin Tzvetanov Grigorov
       Resolution: Fixed

> C# Primitive Schema losing metadata
> -----------------------------------
>
>                 Key: AVRO-2862
>                 URL: https://issues.apache.org/jira/browse/AVRO-2862
>             Project: Apache Avro
>          Issue Type: Bug
>          Components: csharp
>    Affects Versions: 1.9.2
>            Reporter: Cody
>            Assignee: Martin Tzvetanov Grigorov
>            Priority: Major
>             Fix For: 1.11.1, 1.12.0
>
>
> Using this ticket as a base reference: 
> https://issues.apache.org/jira/browse/AVRO-1545
>  The same problem is happening in the C# version as well.
> Given:
> {code:java}
> {
>     "type" : "record",
>     "name" : "BrokenRecord",
>     "namespace" : "whatever",
>     "fields" : [
>         {
>             "name" : "a_string",
>             "type" : {
>                 "type" : "string",
>                 "foobar" : "some example here"
>             }
>         }
>     ]
> }
> {code}
> The property "foobar" will be lost when parsing the schema.
> The fix that my team has implemented is modifying this line (file used from 
> release 1.9.2)
>  
> [https://github.com/apache/avro/blob/bf20128ca6138a830b2ea13e0490f3df6b035639/lang/csharp/src/apache/main/Schema/PrimitiveSchema.cs#L85]
> And replacing it with the following:
> {code:java}
> if(this.Props != null && this.Props.Count > 0)
> {
>     w.WriteStartObject();
>     w.WritePropertyName("type");
>     w.WriteValue(Name);
>     foreach(var prop in Props)
>     {
>         w.WritePropertyName(prop.Key);
>         w.WriteRawValue(prop.Value);
>     }
>     w.WriteEndObject();
> }
> else w.WriteValue(Name);{code}
>  Another somewhat related ticket: 
> https://issues.apache.org/jira/browse/AVRO-1346



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to