Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Broker] Handle all exceptions from topic.addProducer #6881

Merged
merged 1 commit into from
May 6, 2020

Conversation

addisonj
Copy link
Contributor

@addisonj addisonj commented May 5, 2020

Fixes #6872
Fixes #6416

Motivation

If a producer tries to create a producer to a topic that is currently
unloading, we can get a RuntimeException from
BrokerService.checkTopicNsOwnership which is bubbled up through
topic.addProducer. By only handling a BrokerServiceException this
results in a future that never completes and results in producers not
being able to be created if this topic is scheduled back to this broker.

Modifications

Change to handling all exceptions

Verifying this change

This could use a test, but I am currently not sure where would be the best place to test it. Existing tests should pass.

Does this pull request potentially affect one of the following parts:

If yes was chosen, please highlight the changes

  • Dependencies (does it add or upgrade a dependency): n
  • The public API: n
  • The schema: n
  • The default values of configurations: n
  • The wire protocol: n
  • The rest endpoints: n
  • The admin cli options: n
  • Anything that affects deployment: n

Documentation

  • Does this pull request introduce a new feature? n

Fixes apache#6872
Fixes apache#6416

If a producer tries to create a producer to a topic that is currently
unloading, we can get a `RuntimeException` from
`BrokerService.checkTopicNsOwnership` which is bubbled up through
`topic.addProducer`. By only handling a `BrokerServiceException` this
results in a future that never completes and results in producers not
being able to be created if this topic is scheduled back to this broker.
@addisonj
Copy link
Contributor Author

addisonj commented May 5, 2020

/pulsarbot run-failure-checks

@sijie sijie added this to the 2.6.0 milestone May 6, 2020
@sijie sijie added area/broker type/bug The PR fixed a bug or issue reported a bug labels May 6, 2020
@codelipenghui codelipenghui merged commit 30e26f8 into apache:master May 6, 2020
jiazhai pushed a commit that referenced this pull request May 8, 2020
Fixes #6872
Fixes #6416

If a producer tries to create a producer to a topic that is currently
unloading, we can get a `RuntimeException` from
`BrokerService.checkTopicNsOwnership` which is bubbled up through
`topic.addProducer`. By only handling a `BrokerServiceException` this
results in a future that never completes and results in producers not
being able to be created if this topic is scheduled back to this broker.
(cherry picked from commit 30e26f8)
cdbartholomew pushed a commit to kafkaesque-io/pulsar that referenced this pull request May 12, 2020
Fixes apache#6872
Fixes apache#6416

If a producer tries to create a producer to a topic that is currently
unloading, we can get a `RuntimeException` from
`BrokerService.checkTopicNsOwnership` which is bubbled up through
`topic.addProducer`. By only handling a `BrokerServiceException` this
results in a future that never completes and results in producers not
being able to be created if this topic is scheduled back to this broker.
Huanli-Meng pushed a commit to Huanli-Meng/pulsar that referenced this pull request May 27, 2020
Fixes apache#6872
Fixes apache#6416

If a producer tries to create a producer to a topic that is currently
unloading, we can get a `RuntimeException` from
`BrokerService.checkTopicNsOwnership` which is bubbled up through
`topic.addProducer`. By only handling a `BrokerServiceException` this
results in a future that never completes and results in producers not
being able to be created if this topic is scheduled back to this broker.
huangdx0726 pushed a commit to huangdx0726/pulsar that referenced this pull request Aug 24, 2020
Fixes apache#6872
Fixes apache#6416

If a producer tries to create a producer to a topic that is currently
unloading, we can get a `RuntimeException` from
`BrokerService.checkTopicNsOwnership` which is bubbled up through
`topic.addProducer`. By only handling a `BrokerServiceException` this
results in a future that never completes and results in producers not
being able to be created if this topic is scheduled back to this broker.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/broker release/2.5.2 type/bug The PR fixed a bug or issue reported a bug
Projects
None yet
4 participants