[jira] [Updated] (AVRO-2177) avro-protobuf not honouring java_multiple_files option
[ https://issues.apache.org/jira/browse/AVRO-2177?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Mahesh Mudi updated AVRO-2177: -- Description: Using avro-protobuf for google protobuf timestamp models fails to extract schema due to invalid namespace resolution. Proto model for timestamp has following options defined. {code:java} option java_outer_classname = "TimestampProto"; option java_multiple_files = true; {code} That would mean that the generated code for Timestamp will be at "com.google.protobuf.Timestamp" rather than "com.google.protobuf.TimestampProto$Timestamp". However, when I try to derive an avro schema from a proto model using google timestamp, avro-protobuf is not honouring the java_multiple_files option and tries to look for timestamp class at "com.google.protobuf.TimestampProto$Timestamp" {code:java} Caused by: java.lang.ClassNotFoundException: Failed to load classcom.google.protobuf.TimestampProto$Timestamp at org.apache.avro.util.ClassUtils.forName(ClassUtils.java:60) at org.apache.avro.util.ClassUtils.forName(ClassUtils.java:36) at org.apache.avro.protobuf.ProtobufData.newRecord(ProtobufData.java:137){code} "getNamespace" of org.apache.avro.protobuf.ProtobufData ins't honouring multiple files option there by breaking models that import google proto definitions. was: Using avro-protobuf for google protobuf timestamp models fails to extract schema due to invalid namespace resolution. Proto model for timestamp has following options defined. {code:java} option java_outer_classname = "TimestampProto"; option java_multiple_files = true; {code} That would mean that the generated code for Timestamp will be at "com.google.protobuf.Timestamp" rather than "com.google.protobuf.TimestampProto$Timestamp". However, when I try to derive an avro schema from a proto model using google timestamp, avro-protobuf is not honouring the java_multiple_files option and tries to look for timestamp class at "com.google.protobuf.TimestampProto$Timestamp" {code:java} Caused by: java.lang.ClassNotFoundException: Failed to load classcom.google.protobuf.TimestampProto$Timestamp at org.apache.avro.util.ClassUtils.forName(ClassUtils.java:60) at org.apache.avro.util.ClassUtils.forName(ClassUtils.java:36) at com.deliveroo.data.util.proto.avro.ProtobufData.newRecord(ProtobufData.java:137){code} "getNamespace" of org.apache.avro.protobuf.ProtobufData ins't honouring multiple files option there by breaking models that import google proto definitions. > avro-protobuf not honouring java_multiple_files option > -- > > Key: AVRO-2177 > URL: https://issues.apache.org/jira/browse/AVRO-2177 > Project: Avro > Issue Type: Bug > Components: java >Affects Versions: 1.8.2 >Reporter: Mahesh Mudi >Priority: Major > > Using avro-protobuf for google protobuf timestamp models fails to extract > schema due to invalid namespace resolution. > > Proto model for timestamp has following options defined. > {code:java} > option java_outer_classname = "TimestampProto"; > option java_multiple_files = true; > {code} > > That would mean that the generated code for Timestamp will be at > "com.google.protobuf.Timestamp" rather than > "com.google.protobuf.TimestampProto$Timestamp". > > However, when I try to derive an avro schema from a proto model using google > timestamp, avro-protobuf is not honouring the java_multiple_files option and > tries to look for timestamp class at > "com.google.protobuf.TimestampProto$Timestamp" > > {code:java} > Caused by: java.lang.ClassNotFoundException: Failed to load > classcom.google.protobuf.TimestampProto$Timestamp > at org.apache.avro.util.ClassUtils.forName(ClassUtils.java:60) > at org.apache.avro.util.ClassUtils.forName(ClassUtils.java:36) > at > org.apache.avro.protobuf.ProtobufData.newRecord(ProtobufData.java:137){code} > > "getNamespace" of org.apache.avro.protobuf.ProtobufData ins't honouring > multiple files option there by breaking models that import google proto > definitions. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
REMINDER: Apache EU Roadshow 2018 schedule announced!
Hello Apache Supporters and Enthusiasts This is a reminder that the schedule for the Apache EU Roadshow 2018 in Berlin has been announced. http://apachecon.com/euroadshow18/schedule.html Please note that we will not be running an ApacheCon in Europe this year which means that this Apache EU Roadshow will be the main Apache event in Europe for 2018. The Apache EU Roadshow tracks take place on the 13th and 14th June 2018, and will feature 28 sessions across the following themes; Apache Tomcat, IoT , Cloud Technologies, Microservices and Apache Httpd Server. Please note that the Apache EU Roadshow is co-located with FOSS Backstage and their schedule (https://foss-backstage.de/sessions) includes many Apache related sessions such as Incubator, Apache Way, Open Source Governance, Legal, Trademarks as well as a full range community related presentations and panel discussions. One single registration gives you access to both events - the Apache EU Roadshow and FOSS Backstage. Registration includes catering (breakfast & lunch both days) and also an attendee evening event. And if you want to have a project meet-up, hack or simply spend time and relax in our on-site Apache Lounge between sessions, then you are more than welcome. We look forward to seeing you in Berlin! Thanks Sharan Foga, VP Apache Community Development PLEASE NOTE: You are receiving this message because you are subscribed to a user@ or dev@ list of one or more Apache Software Foundation projects.