Skip to content

docs: document Pulsar listenerName metadata field#5236

Open
nelson-parente wants to merge 2 commits into
dapr:v1.19from
nelson-parente:docs/pulsar-listenername
Open

docs: document Pulsar listenerName metadata field#5236
nelson-parente wants to merge 2 commits into
dapr:v1.19from
nelson-parente:docs/pulsar-listenername

Conversation

@nelson-parente

Copy link
Copy Markdown
Contributor

Description

Documents the new listenerName metadata field on the Pulsar pub/sub component, added in dapr/components-contrib#4386 (merged, ships in Dapr 1.19).

The field exposes the pulsar-client-go ClientOptions.ListenerName option. When set, the value is sent to the broker so that brokers configured with advertisedListeners resolve connection-redirect targets using the matching named listener — enabling cross-network / multi-cluster topologies (sidecars in a separate VPC or cluster from the broker) without a Pulsar proxy. When unset, behavior is unchanged.

The wording and the reference link mirror the component's metadata.yaml entry.

Issue reference

Documents the feature from dapr/components-contrib#4386 (closes dapr/components-contrib#4383).

Checklist

  • Added the listenerName row to the Pulsar spec metadata table
  • Targets v1.19 (the release the feature ships in)

Documents the listenerName field added to the Pulsar pubsub component
in dapr/components-contrib#4386, which exposes the pulsar-client-go
ListenerName option for advertisedListeners / multi-listener broker
topologies. Ships in Dapr 1.19.

Signed-off-by: Nelson Parente <nelson_parente@live.com.pt>
@nelson-parente nelson-parente requested a review from Copilot July 8, 2026 14:28
@nelson-parente nelson-parente marked this pull request as ready for review July 8, 2026 14:28
@nelson-parente nelson-parente requested review from a team as code owners July 8, 2026 14:28

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Dapr docs for the Pulsar pub/sub component to document the newly added listenerName metadata field (shipping in Dapr 1.19), which maps to the Pulsar Go client’s ClientOptions.ListenerName and supports broker redirect resolution via named advertised listeners.

Changes:

  • Adds the listenerName metadata entry to the Pulsar component spec metadata table.
  • Includes a reference link to Pulsar’s “Multiple Advertised Listeners” documentation for additional context.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@alicejgibbons alicejgibbons left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

| Field | Required | Details | Example |
|--------------------|:--------:|---------|---------|
| host | Y | Address of the Pulsar broker. Default is `"localhost:6650"` | `"localhost:6650"` OR `"http://pulsar-pj54qwwdpz4b-pulsar.ap-sg.public.pulsar.com:8080"`|
| listenerName | N | Configures the listener name the Pulsar client sends to the broker for connection redirects. Brokers configured with `advertisedListeners` resolve the redirect target using the matching named listener, enabling cross-network topologies (multi-cluster, internal/external endpoints) without a Pulsar proxy. See [Pulsar Multiple Advertised Listeners](https://pulsar.apache.org/docs/3.0.x/concepts-multiple-advertised-listeners/). When unset, behavior is unchanged. | `"external"` |

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@nelson-parente am confused here.

Is the feature we are exposing on Pulsar advertisedListeners or internalListenerName? Based on the docs you listed (https://pulsar.apache.org/docs/3.0.x/concepts-multiple-advertised-listeners/) there are different behaviours for both. Also are users specifying the <listener_name>:pulsar://<host>:<port>, <listener_name>:pulsar+ssl://<host>:<port> format? Unclear

We also need to specify all the possible values it can be (external, internal?, any others?) as well as say "Default is ..".

Address review feedback: distinguish the client-side listenerName
(a single listener name matching one in the broker's advertisedListeners)
from the broker-side advertisedListeners/internalListenerName config,
note that internal/external are operator-chosen conventions rather than
fixed values, and state the default.

Signed-off-by: Nelson Parente <nelson_parente@live.com.pt>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants