[
https://issues.apache.org/jira/browse/CAMEL-15315?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrea Cosentino reassigned CAMEL-15315:
----------------------------------------
Assignee: Andrea Cosentino
> Camel-Pulsar: Error when verifying/creating namespace
> -----------------------------------------------------
>
> Key: CAMEL-15315
> URL: https://issues.apache.org/jira/browse/CAMEL-15315
> Project: Camel
> Issue Type: Bug
> Components: camel-pulsar
> Affects Versions: 3.4.0
> Environment: CentOS 8
> Running Pulsar 2.6.0 in a docker container
> Spring Boot 2.3.1.RELEASE
> Camel version 3.4.0
> Reporter: James Adam
> Assignee: Andrea Cosentino
> Priority: Major
> Fix For: 3.5.0, 3.4.3
>
>
> When starting a spring-based Camel application, The following error is
> observed:
>
>
> {code:java}
> 2020-07-19 21:33:08.236 ERROR 128775 — [ main]
> o.a.c.c.pulsar.utils.AutoConfiguration : java.lang.IllegalArgumentException:
> Invalid namespace format. namespace: default
> {code}
>
> Believe the error is being caused by a bug in the AutoConfiguration class,
> specifically the ensureNameSpace method:
>
>
> {code:java}
> private void ensureNameSpace(String tenant, String namespace) throws
> PulsarAdminException {
> List<String> namespaces =
> this.pulsarAdmin.namespaces().getNamespaces(tenant);
> if (!namespaces.contains(namespace)){
> this.pulsarAdmin.namespaces().createNamespace(namespace, this.clusters);
> }
> }
> {code}
>
>
> The problem would appear to be that
> pulsarAdmin.namespaces().getNamespaces(tenant) returns a list of fully
> qualified namespaces (e.g., "default/public") whereas, the if check is
> comparing just the namespace alone (e.g. "public") against the fully
> qualified list. Naturally, this fails, and it then tries to create the
> namespace (which already exists), feeding it in the wrong format, causing the
> error to be thrown.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)