Skip to content

unclear relation between namespace and cluster name #11356

@Zhen-hao

Description

@Zhen-hao

See my console output:

[root@server2:~]# pulsar-admin namespaces list pairtime-test
"pairtime-test/projection_akka_journal_nt_cluster_run_7"

[root@server2:~]# pulsar-admin namespaces get-clusters pairtime-test/projection_akka_journal_nt_cluster_run_7
"pulsar-cluster-1"

pulsar-cluster-1 was the cluster name I used in the first deployment, which was changed to pairtime-test in later deployments.
Somehow the first name is sticky to namespaces created under that name.

And in the documentation page, it says "replication clusters". It seems all the settings around the cluster name make sense only in a geo-replication setup.

However, the above mismatch cause runtime errors like

org.apache.pulsar.client.api.PulsarClientException$BrokerMetadataException: Namespace missing local cluster name in clusters list: local_cluster=nt-test-cluster ns=pairtime-test/projection_akka_journal_nt_cluster_run_7 clusters=[pulsar-cluster-1]
        at org.apache.pulsar.client.impl.ClientCnx.getPulsarClientException(ClientCnx.java:1092)
        at org.apache.pulsar.client.impl.ClientCnx.handlePartitionResponse(ClientCnx.java:589)
        at org.apache.pulsar.common.protocol.PulsarDecoder.channelRead(PulsarDecoder.java:129)

In a single cluster setup.

Posible fix:

  1. Make it very clear what the cluster name means to a namespace, and what operational steps are needed when the user changes the cluster name in a single-cluster setup.
  2. Or, handle the above error internally and make it always work in a single-cluster setup.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions