You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Tom Irvine (Jira)" <ji...@apache.org> on 2021/01/29 14:57:00 UTC
[jira] [Commented] (AVRO-2633) C# - AvroGen tool - Document for
record type is not included in the Schema field
[ https://issues.apache.org/jira/browse/AVRO-2633?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17274493#comment-17274493 ]
Tom Irvine commented on AVRO-2633:
----------------------------------
I created a fix for this. I tried to push my changes to create a pull request, but am getting permission denied for my github user. What do I need to do to get permission to push?
> C# - AvroGen tool - Document for record type is not included in the Schema field
> --------------------------------------------------------------------------------
>
> Key: AVRO-2633
> URL: https://issues.apache.org/jira/browse/AVRO-2633
> Project: Apache Avro
> Issue Type: Bug
> Components: csharp
> Affects Versions: 1.9.1
> Reporter: Minh Nguyen
> Priority: Critical
>
> Steps to reproduce:
> 1) MyRecord.asvc file :
>
> {code:java}
> {
> "type" : "record",
> "doc" : "Doc for record"
> "name" : "MyRecord",
> "namespace" : "My.Namespace",
> "fields" :
> [
> { "name" : "Field1", "type" : "int" }
> ]
> }
> {code}
> 2) Run command to generate C# class from the Avro spec file:
> avrogen -s MyRecord.asvc ./
> -> Current behavior: the Schema field in C# class is missing the "doc" data, I got serialization error when tried to use this class because the subject in Schema Registry contains the "doc" field (I register the avro spec file to the schema registry seperately)
> {code:java}
> public partial class MyRecord : ISpecificRecord
> {
> public static Schema _SCHEMA = Schema.Parse("{\"type\":\"record\",\"name\":\"MyRecord\",\"namespace\":\"My.Namespace\",\"fields\":[{\"name\":\"" + "Field1\",\"type\":\"int\"}]}");
> {code}
> -> Expected behavior: we should have the "doc" field for type "record", so it will be consistent with the spec file
> {code:java}
> public partial class MyRecord : ISpecificRecord
> {
> public static Schema _SCHEMA = Schema.Parse("{\"type\":\"record\", \"doc\":\"Doc for record\", \"name\":\"MyRecord\", \"namespace\":\"My.Namespace\", \"fields\":[{\"name\":\"" + "Field1\",\"type\":\"int\"}]}");
> {code}
> As a work around, right now I have to remove the "doc" for the type "record" but I think we should have it there and not causing a problem.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)