Skip to content

InputMismatchException is thrown for grpc binding with googleapis/devtools/build proto #1230

@vordimous

Description

@vordimous

Describe the bug
When zilla implements the googleapis/devtools/build protobuf interface an InputMismatchException is thrown

To Reproduce
Steps to reproduce the behavior:

  1. run startup in googleapis.grpc.kafka.proxy.zip
  2. execute grpccurl command in README.md
grpcurl -insecure -proto proto/google/devtools/build/v1/publish_build_event.proto -import-path proto -d '{"project_id":"123","build_event":{"sequence_number":123}}' localhost:7153 google.devtools.build.v1.PublishBuildEvent.PublishLifecycleEvent
  1. See error
org.agrona.concurrent.AgentTerminationException: org.antlr.v4.runtime.misc.ParseCancellationException
    at io.aklivity.zilla.runtime.engine@0.9.92/io.aklivity.zilla.runtime.engine.internal.registry.EngineWorker.doWork(EngineWorker.java:841)
    at org.agrona.core/org.agrona.concurrent.AgentRunner.doWork(AgentRunner.java:304)
    at org.agrona.core/org.agrona.concurrent.AgentRunner.workLoop(AgentRunner.java:296)
    at org.agrona.core/org.agrona.concurrent.AgentRunner.run(AgentRunner.java:162)
    at java.base/java.lang.Thread.run(Thread.java:1570)
Caused by: org.antlr.v4.runtime.misc.ParseCancellationException
    at org.antlr.antlr4.runtime/org.antlr.v4.runtime.BailErrorStrategy.recoverInline(BailErrorStrategy.java:66)
    at org.antlr.antlr4.runtime/org.antlr.v4.runtime.Parser.match(Parser.java:208)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.parser.Protobuf3Parser.blockLit(Protobuf3Parser.java:3137)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.parser.Protobuf3Parser.constant(Protobuf3Parser.java:3064)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.parser.Protobuf3Parser.optionStatement(Protobuf3Parser.java:493)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.parser.Protobuf3Parser.rpc(Protobuf3Parser.java:2897)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.parser.Protobuf3Parser.serviceElement(Protobuf3Parser.java:2748)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.parser.Protobuf3Parser.serviceDef(Protobuf3Parser.java:2678)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.parser.Protobuf3Parser.topLevelDef(Protobuf3Parser.java:1824)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.parser.Protobuf3Parser.proto(Protobuf3Parser.java:233)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.config.GrpcProtobufParser.parse(GrpcProtobufParser.java:62)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.config.GrpcBindingConfig$GrpcCatalogSchema.resolveProtobuf(GrpcBindingConfig.java:434)
    at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:212)
    at java.base/java.util.Spliterators$IteratorSpliterator.tryAdvance(Spliterators.java:1950)
    at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:144)
    at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:574)
    at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:560)
    at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:546)
    at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
    at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:265)
    at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:662)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.config.GrpcBindingConfig.resolveMethod(GrpcBindingConfig.java:182)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.config.GrpcBindingConfig.resolveMethod(GrpcBindingConfig.java:161)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.config.GrpcBindingConfig.resolveMethod(GrpcBindingConfig.java:131)
    at io.aklivity.zilla.runtime.binding.grpc@0.9.92/io.aklivity.zilla.runtime.binding.grpc.internal.stream.GrpcServerFactory.newStream(GrpcServerFactory.java:313)
    at io.aklivity.zilla.runtime.engine@0.9.92/io.aklivity.zilla.runtime.engine.internal.registry.EngineWorker.handleBeginInitial(EngineWorker.java:1576)
    at io.aklivity.zilla.runtime.engine@0.9.92/io.aklivity.zilla.runtime.engine.internal.registry.EngineWorker.handleDefaultReadInitial(EngineWorker.java:1340)
    at io.aklivity.zilla.runtime.engine@0.9.92/io.aklivity.zilla.runtime.engine.internal.registry.EngineWorker.handleReadInitial(EngineWorker.java:1280)
    at io.aklivity.zilla.runtime.engine@0.9.92/io.aklivity.zilla.runtime.engine.internal.registry.EngineWorker.handleRead(EngineWorker.java:1227)
    at io.aklivity.zilla.runtime.engine@0.9.92/io.aklivity.zilla.runtime.engine.internal.concurent.ManyToOneRingBuffer.read(ManyToOneRingBuffer.java:229)
    at io.aklivity.zilla.runtime.engine@0.9.92/io.aklivity.zilla.runtime.engine.internal.registry.EngineWorker.doWork(EngineWorker.java:835)
    ... 4 more
    Suppressed: java.lang.Exception: [engine/data#1]        [0x0101000000000009] streams=[consumeAt=0x00002380 (0x0000000000002380), produceAt=0x00002440 (0x0000000000002440)]
            at io.aklivity.zilla.runtime.engine@0.9.92/io.aklivity.zilla.runtime.engine.internal.registry.EngineWorker.doWork(EngineWorker.java:839)
            ... 4 more
Caused by: org.antlr.v4.runtime.InputMismatchException
    at org.antlr.antlr4.runtime/org.antlr.v4.runtime.BailErrorStrategy.recoverInline(BailErrorStrategy.java:61)
    ... 34 more
stopped
example:north_http_server [04/Sep/2024:15:32:06 +0000] BINDING_HTTP_REQUEST_ACCEPTED - POST https://localhost:7153/google.devtools.build.v1.PublishBuildEvent/PublishLifecycleEvent

Expected behavior
Zilla should be able to proxy the PublishBuildEvent.PublishLifecycleEvent method onto Kafka.

Zilla Environment:
googleapis.grpc.kafka.proxy.zip

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingdevxEffects the Developer Experience

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions