Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-31512

Upgrade avro from 1.9.2 to 1.11.1

    XMLWordPrintable

    Details

    • Type: Task
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2023.0
    • Component/s: Streams

      Description

      As suggested by this Dependabot PR: https://github.com/nuxeo/nuxeo-lts/pull/758.

      Yet, it requires some changes since 2 tests are failing:

      TestCodec.testRecordRawMessageAvro

      java.lang.IllegalArgumentException: org.apache.avro.AvroRuntimeException: Decoding datum failed
      	at org.nuxeo.lib.stream.codec.AvroBinaryCodec.decode(AvroBinaryCodec.java:71)
      	at org.nuxeo.lib.stream.tests.codec.TestCodec.testCodecFromFile(TestCodec.java:205)
      	at org.nuxeo.lib.stream.tests.codec.TestCodec.testRecordRawMessageAvro(TestCodec.java:150)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
      	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
      	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
      	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
      	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
      	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
      	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
      	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
      	at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
      	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
      	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
      	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
      	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
      	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
      	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
      	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
      	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
      	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
      	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
      	at org.junit.runners.Suite.runChild(Suite.java:128)
      	at org.junit.runners.Suite.runChild(Suite.java:27)
      	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
      	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
      	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
      	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
      	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
      	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
      	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
      	at org.apache.maven.surefire.junitcore.JUnitCore.run(JUnitCore.java:55)
      	at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.createRequestAndRun(JUnitCoreWrapper.java:137)
      	at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.executeEager(JUnitCoreWrapper.java:107)
      	at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.execute(JUnitCoreWrapper.java:83)
      	at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.execute(JUnitCoreWrapper.java:75)
      	at org.apache.maven.surefire.junitcore.JUnitCoreProvider.invoke(JUnitCoreProvider.java:158)
      	at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:384)
      	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:345)
      	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:126)
      	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:418)
      Caused by: org.apache.avro.AvroRuntimeException: Decoding datum failed
      	at org.apache.avro.message.RawMessageDecoder.decode(RawMessageDecoder.java:93)
      	at org.apache.avro.message.MessageDecoder$BaseDecoder.decode(MessageDecoder.java:148)
      	at org.nuxeo.lib.stream.codec.AvroBinaryCodec.decode(AvroBinaryCodec.java:69)
      	... 42 more
      Caused by: org.apache.avro.InvalidNumberEncodingException: Invalid int encoding
      	at org.apache.avro.io.DirectBinaryDecoder.readInt(DirectBinaryDecoder.java:114)
      	at org.apache.avro.io.BinaryDecoder.readIndex(BinaryDecoder.java:493)
      	at org.apache.avro.io.ResolvingDecoder.readIndex(ResolvingDecoder.java:282)
      	at org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:188)
      	at org.apache.avro.reflect.ReflectDatumReader.readField(ReflectDatumReader.java:291)
      	at org.apache.avro.generic.GenericDatumReader.readRecord(GenericDatumReader.java:248)
      	at org.apache.avro.specific.SpecificDatumReader.readRecord(SpecificDatumReader.java:123)
      	at org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:180)
      	at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:161)
      	at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:154)
      	at org.apache.avro.message.RawMessageDecoder.decode(RawMessageDecoder.java:91)
      	... 44 more
      

      TestCodec.testRecordMessageAvro

      org.apache.avro.message.MissingSchemaException: Cannot resolve schema for fingerprint: 1073870735093060760
      	at org.apache.avro.message.BinaryMessageDecoder.getDecoder(BinaryMessageDecoder.java:142)
      	at org.apache.avro.message.BinaryMessageDecoder.decode(BinaryMessageDecoder.java:160)
      	at org.apache.avro.message.MessageDecoder$BaseDecoder.decode(MessageDecoder.java:148)
      	at org.nuxeo.lib.stream.codec.AvroMessageCodec.decode(AvroMessageCodec.java:78)
      	at org.nuxeo.lib.stream.tests.codec.TestCodec.testCodecFromFile(TestCodec.java:205)
      	at org.nuxeo.lib.stream.tests.codec.TestCodec.testRecordMessageAvro(TestCodec.java:141)
      

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: