Thanks Ryan and Bryan.

Turned out it was user error :(. One of our guys made a tweak to the schema
before trying to upload it.

On Tue, Aug 6, 2019, 2:20 AM Ryan Skraba <r...@skraba.com> wrote:

> Hello!  I successfully managed to load the schema into the confluent
> schema-registry version 5.3.0 (containing Avro 1.8.1), using the docker
> quickstart [1] and the command line:
>
> I just tested that the load worked -- I didn't try reading or writing
> binary.
>
> # Save the schema into registry.
> curl -X POST -H "Content-Type: application/vnd.schemaregistry.v1+json"
> --data "@PackageCreateInformationSchema.json"
> http://localhost:8081/subjects/PackageCreateInformation/versions
> # Fetch and check the schema from the registry.
> curl -X GET
> http://localhost:8081/subjects/PackageCreateInformation/versions/1
>
> The PackageCreateInformationSchema.json file is a bit weird, in the format
> {"schema": "your_schema_string_representation"} which takes a lot of
> escaping quotes (the exact contents I used follows if you want to
> reproduce).
>
> How are you loading the schema, and what version of the schema-registry
> are you using?  Perhaps we can narrow it down to a specific avro version
> and see if we can reproduce it outside of the registry.
>
> Best regards, Ryan
>
> [1]
> https://docs.confluent.io/current/quickstart/cos-docker-quickstart.html
>
> PackageCreateInformationSchema.json
>
>
> {"schema":"{\"type\":\"record\",\"name\":\"PackageCreateInformation\",\"namespace\":\"com.pb.fdr.delivery\",\"fields\":[{\"name\":\"sendSms\",\"type\":[\"null\",\"boolean\"]},{\"name\":\"trackingId\",\"type\":\"string\"},{\"name\":\"packageId\",\"type\":\"string\"},{\"name\":\"clientFacilityId\",\"type\":\"string\"},{\"name\":\"sortCode\",\"type\":\"string\"},{\"name\":\"ngsFacilityId\",\"type\":\"string\"},{\"name\":\"merchantId\",\"type\":\"string\"},{\"name\":\"ClassOfService\",\"type\":{\"type\":\"enum\",\"name\":\"ClassesOfService\",\"namespace\":\"com.pb.fdr.delivery\",\"symbols\":[\"Ground\",\"Express\",\"FirstClass\",\"Priority\",\"BPM\",\"PBD3D\"]}},{\"name\":\"carrier\",\"type\":{\"type\":\"enum\",\"name\":\"Carriers\",\"namespace\":\"com.pb.fdr.delivery\",\"symbols\":[\"USPS\",\"DHL\",\"UPS\",\"FedEx\"]}},{\"name\":\"carrierClassOfService\",\"type\":{\"type\":\"enum\",\"name\":\"CarrierClassesOfService\",\"namespace\":\"com.pb.fdr.delivery\",\"symbols\":[\"ParcelSelect\",\"ParcelSelectLightweight\",\"FirstClass\",\"Priority\",\"BPM\"]}},{\"name\":\"weight\",\"type\":{\"type\":\"record\",\"name\":\"Weight\",\"namespace\":\"com.pb.fdr.delivery\",\"fields\":[{\"name\":\"unitOfMeasure\",\"type\":{\"type\":\"enum\",\"name\":\"WeightUnitOfMeasure\",\"namespace\":\"com.pb.fdr.delivery\",\"symbols\":[\"Pounds\",\"Ounces\",\"Kilograms\",\"Grams\"]}},{\"name\":\"measurmentValue\",\"type\":\"double\"}]}},{\"name\":\"dimensions\",\"type\":{\"type\":\"record\",\"name\":\"Dimensions\",\"namespace\":\"com.pb.fdr.delivery\",\"fields\":[{\"name\":\"length\",\"type\":{\"type\":\"record\",\"name\":\"Length\",\"namespace\":\"com.pb.fdr.delivery\",\"fields\":[{\"name\":\"unitOfMeasure\",\"type\":{\"type\":\"enum\",\"name\":\"LengthUnitOfMeasure\",\"namespace\":\"com.pb.fdr.delivery\",\"symbols\":[\"Inches\",\"Meters\",\"Centimeters\"]}},{\"name\":\"measurmentValue\",\"type\":\"double\"}]}},{\"name\":\"width\",\"type\":\"Length\"},{\"name\":\"height\",\"type\":\"Length\"},{\"name\":\"girth\",\"type\":\"Length\"},{\"name\":\"isRectangular\",\"type\":\"boolean\"}]}},{\"name\":\"shipToAddress\",\"type\":{\"type\":\"record\",\"name\":\"Address\",\"namespace\":\"com.pb.fdr.delivery\",\"fields\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"attention\",\"type\":[\"null\",\"string\"]},{\"name\":\"address1\",\"type\":\"string\"},{\"name\":\"address2\",\"type\":[\"null\",\"string\"]},{\"name\":\"city\",\"type\":[\"null\",\"string\"]},{\"name\":\"stateOrProvince\",\"type\":[\"null\",\"string\"]},{\"name\":\"country\",\"type\":[\"null\",\"string\"]},{\"name\":\"isResidential\",\"type\":[\"null\",\"boolean\"]}]}},{\"name\":\"returnAddress\",\"type\":\"Address\"},{\"name\":\"ReferenceNumbers\",\"type\":[\"null\",{\"type\":\"array\",\"items\":{\"type\":\"record\",\"name\":\"ReferenceNumbers\",\"namespace\":\"com.pb.fdr.delivery\",\"fields\":[{\"name\":\"qualifier\",\"type\":\"string\"},{\"name\":\"value\",\"type\":\"string\"}]}}]},{\"name\":\"hazmatClasses\",\"type\":[\"null\",{\"type\":\"array\",\"items\":{\"type\":\"enum\",\"name\":\"Hazmat\",\"namespace\":\"com.pb.fdr.delivery\",\"symbols\":[\"Explosives\",\"Gases\",\"FlammableCombustibleLiquids\",\"FlammableSolids\",\"OxidizingSubstancesOrganicPeroxides\",\"ToxicSubstancesAndInfectiousSubstances\",\"RadioactiveMaterial\",\"Corrosives\",\"ORMD\",\"ConsumerCommodities\",\"MiscellaneousHazardousMaterials\"]}}]},{\"name\":\"Subscription\",\"type\":[\"null\",{\"type\":\"record\",\"name\":\"Subscription\",\"namespace\":\"com.pb.fdr.delivery\",\"fields\":[{\"name\":\"sendSms\",\"type\":[\"null\",\"boolean\"]},{\"name\":\"sendEmail\",\"type\":[\"null\",\"boolean\"]},{\"name\":\"events\",\"type\":{\"type\":\"array\",\"items\":{\"type\":\"enum\",\"name\":\"Events\",\"namespace\":\"com.pb.fdr.delivery\",\"symbols\":[\"Delivered\",\"InTransit\"]}}},{\"name\":\"emailAddress\",\"type\":\"string\"},{\"name\":\"phoneNumber\",\"type\":\"string\"}]}]}]}"}
>
>
>
> On Tue, Aug 6, 2019 at 2:50 AM Brian Lachniet <blachn...@gmail.com> wrote:
>
>> I don't see anything obviously wrong. I tried generating Java code from
>> this schema with *avro-tools *and had no problems.
>>
>> Unfortunately, I haven't had the opportunity to use the Confluent Schema
>> Registry yet. This comment
>> <https://github.com/confluentinc/schema-registry/issues/214#issuecomment-437514914>
>> seems to suggest that you might find more detailed error messages in the
>> schema registry server logs. Have you tried looking there?
>>
>> On Mon, Aug 5, 2019 at 7:10 PM Patrick Farry <patrick.s.fa...@gmail.com>
>> wrote:
>>
>>> The schema was generated from a protocol using the C# 1.9 code. When we
>>> try to load it into the Kafka schema registry we get an error that the
>>> schema is invalid.
>>>
>>> The only feedback we get is “Length is not valid”. If we remove Length
>>> then the error says that “Address is not valid” - so presumably there is
>>> something wrong referencing previously defined named types.
>>>
>>> Is there anything obviously wrong?
>>>
>>>
>>> {
>>>
>>> "type": "record",
>>>
>>>   "name": "PackageCreateInformation",
>>>
>>>   "namespace": "com.pb.fdr.delivery",
>>>
>>>   "fields": [
>>>
>>>     {
>>>
>>>       "name": "sendSms",
>>>
>>>       "type": [
>>>
>>>         "null",
>>>
>>>         "boolean"
>>>
>>>       ]
>>>
>>>     },
>>>
>>>     {
>>>
>>>       "name": "trackingId",
>>>
>>>       "type": "string"
>>>
>>>     },
>>>
>>>     {
>>>
>>>       "name": "packageId",
>>>
>>>       "type": "string"
>>>
>>>     },
>>>
>>>     {
>>>
>>>       "name": "clientFacilityId",
>>>
>>>       "type": "string"
>>>
>>>     },
>>>
>>>     {
>>>
>>>       "name": "sortCode",
>>>
>>>       "type": "string"
>>>
>>>     },
>>>
>>>     {
>>>
>>>       "name": "ngsFacilityId",
>>>
>>>       "type": "string"
>>>
>>>     },
>>>
>>>     {
>>>
>>>       "name": "merchantId",
>>>
>>>       "type": "string"
>>>
>>>     },
>>>
>>>     {
>>>
>>>       "name": "ClassOfService",
>>>
>>>       "type": {
>>>
>>>         "type": "enum",
>>>
>>>         "name": "ClassesOfService",
>>>
>>>         "namespace": "com.pb.fdr.delivery",
>>>
>>>         "symbols": [
>>>
>>>           "Ground",
>>>
>>>           "Express",
>>>
>>>           "FirstClass",
>>>
>>>           "Priority",
>>>
>>>           "BPM",
>>>
>>>           "PBD3D"
>>>
>>>         ]
>>>
>>>       }
>>>
>>>     },
>>>
>>>     {
>>>
>>>       "name": "carrier",
>>>
>>>       "type": {
>>>
>>>         "type": "enum",
>>>
>>>         "name": "Carriers",
>>>
>>>         "namespace": "com.pb.fdr.delivery",
>>>
>>>         "symbols": [
>>>
>>>           "USPS",
>>>
>>>           "DHL",
>>>
>>>           "UPS",
>>>
>>>           "FedEx"
>>>
>>>         ]
>>>
>>>       }
>>>
>>>     },
>>>
>>>     {
>>>
>>>       "name": "carrierClassOfService",
>>>
>>>       "type": {
>>>
>>>         "type": "enum",
>>>
>>>         "name": "CarrierClassesOfService",
>>>
>>>         "namespace": "com.pb.fdr.delivery",
>>>
>>>         "symbols": [
>>>
>>>           "ParcelSelect",
>>>
>>>           "ParcelSelectLightweight",
>>>
>>>           "FirstClass",
>>>
>>>           "Priority",
>>>
>>>           "BPM"
>>>
>>>         ]
>>>
>>>       }
>>>
>>>     },
>>>
>>>     {
>>>
>>>       "name": "weight",
>>>
>>>       "type": {
>>>
>>>         "type": "record",
>>>
>>>         "name": "Weight",
>>>
>>>         "namespace": "com.pb.fdr.delivery",
>>>
>>>         "fields": [
>>>
>>>           {
>>>
>>>             "name": "unitOfMeasure",
>>>
>>>             "type": {
>>>
>>>               "type": "enum",
>>>
>>>               "name": "WeightUnitOfMeasure",
>>>
>>>               "namespace": "com.pb.fdr.delivery",
>>>
>>>               "symbols": [
>>>
>>>                 "Pounds",
>>>
>>>                 "Ounces",
>>>
>>>                 "Kilograms",
>>>
>>>                 "Grams"
>>>
>>>               ]
>>>
>>>             }
>>>
>>>           },
>>>
>>>           {
>>>
>>>             "name": "measurmentValue",
>>>
>>>             "type": "double"
>>>
>>>           }
>>>
>>>         ]
>>>
>>>       }
>>>
>>>     },
>>>
>>>     {
>>>
>>>       "name": "dimensions",
>>>
>>>       "type": {
>>>
>>>         "type": "record",
>>>
>>>         "name": "Dimensions",
>>>
>>>         "namespace": "com.pb.fdr.delivery",
>>>
>>>         "fields": [
>>>
>>>           {
>>>
>>>             "name": "length",
>>>
>>>             "type": {
>>>
>>>               "type": "record",
>>>
>>>               "name": "Length",
>>>
>>>               "namespace": "com.pb.fdr.delivery",
>>>
>>>               "fields": [
>>>
>>>                 {
>>>
>>>                   "name": "unitOfMeasure",
>>>
>>>                   "type": {
>>>
>>>                     "type": "enum",
>>>
>>>                     "name": "LengthUnitOfMeasure",
>>>
>>>                     "namespace": "com.pb.fdr.delivery",
>>>
>>>                     "symbols": [
>>>
>>>                       "Inches",
>>>
>>>                       "Meters",
>>>
>>>                       "Centimeters"
>>>
>>>                     ]
>>>
>>>                   }
>>>
>>>                 },
>>>
>>>                 {
>>>
>>>                   "name": "measurmentValue",
>>>
>>>                   "type": "double"
>>>
>>>                 }
>>>
>>>               ]
>>>
>>>             }
>>>
>>>           },
>>>
>>>           {
>>>
>>>             "name": "width",
>>>
>>>             "type": "Length"
>>>
>>>           },
>>>
>>>           {
>>>
>>>             "name": "height",
>>>
>>>             "type": "Length"
>>>
>>>           },
>>>
>>>           {
>>>
>>>             "name": "girth",
>>>
>>>             "type": "Length"
>>>
>>> <div style="box-sizing:inherit;margin-left:32px;padding:0
>>>
>>

Reply via email to