Skip to content

[Bug]: PulsarIO write() complains of missing ClientUrl even when provided with withClientUrl #30152

@ton3r

Description

@ton3r

What happened?

I want to write in an apache beam pipeline to a pulsar topic by using

pCollection.apply("Send to Pulsar", PulsarIO.write().withClientUrl(pulsarClientUrl).withTopic(pulsarTopic));

But this throws an 'IllegalStateException: Missing required properties: clientUrl'

During the debug, I see that PulsarIO.write() uses a private AutoValue_PulsarIO_Write.Builder().build() where the build() call checks the clientUrl

PulsarIO.Write build() {
            if (this.clientUrl == null) {
                String missing = " clientUrl";
                throw new IllegalStateException("Missing required properties:" + missing);
            } else {
                return new AutoValue_PulsarIO_Write(this.topic, this.clientUrl);
            }
        }

But I'm only ready to set this 'clientUrl' after the call of 'PulsarIO.write()' which checks the clientUrl

Seems not possible to create a PulsarIO.write()

Issue Priority

Priority: 3 (minor)

Issue Components

  • Component: Python SDK
  • Component: Java SDK
  • Component: Go SDK
  • Component: Typescript SDK
  • Component: IO connector
  • Component: Beam YAML
  • Component: Beam examples
  • Component: Beam playground
  • Component: Beam katas
  • Component: Website
  • Component: Spark Runner
  • Component: Flink Runner
  • Component: Samza Runner
  • Component: Twister2 Runner
  • Component: Hazelcast Jet Runner
  • Component: Google Cloud Dataflow Runner

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions