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

Fix call sync method in an async callback when enabling geo replicator. #12590

Merged

Commits on Nov 2, 2021

  1. Fix call sync method in an async callback when enabling geo replicator.

    After enabled geo-replication, we are not able to produce messages to a partitioned non-persistent topic.
    
    Reproduce step:
    
    1. Start a geo-replication instance with 2 clusters, I have 3 brokers for each cluster
    2. Create a non-persistent partitioned topic such as 10 partitions
    3. Use pulsar-perf to publish messages to the partitioned topic
    4. Verify if the message produce throughput is 0, such as `bin/pulsar-perf produce -s 2048 -r 100 -bm 1 non-persistent://public/default/test`
    
    The root cause is there are 2 places calling a sync method in the async method callback.
    So the fix is:
    
    1. Async the `validatePartitionedTopicAsync` method
    2. Avoid call get cluster sync method when getting the replication client
    
    Integration tests added.
    codelipenghui committed Nov 2, 2021
    Configuration menu
    Copy the full SHA
    cd76506 View commit details
    Browse the repository at this point in the history

Commits on Nov 3, 2021

  1. Fix tests.

    codelipenghui committed Nov 3, 2021
    Configuration menu
    Copy the full SHA
    aa6130d View commit details
    Browse the repository at this point in the history

Commits on Nov 4, 2021

  1. Fix tests.

    codelipenghui committed Nov 4, 2021
    Configuration menu
    Copy the full SHA
    abd5360 View commit details
    Browse the repository at this point in the history
  2. Fix tests.

    codelipenghui committed Nov 4, 2021
    Configuration menu
    Copy the full SHA
    53ba4b4 View commit details
    Browse the repository at this point in the history
  3. Fix tests.

    codelipenghui committed Nov 4, 2021
    Configuration menu
    Copy the full SHA
    b9b13e6 View commit details
    Browse the repository at this point in the history
  4. Fix tests.

    codelipenghui committed Nov 4, 2021
    Configuration menu
    Copy the full SHA
    7836fd3 View commit details
    Browse the repository at this point in the history
  5. Fix getting cluster data synchronously in an asynchronously method wh…

    …en creating partitioned-topic, this will cause dead thread problem.
    gaoran10 committed Nov 4, 2021
    Configuration menu
    Copy the full SHA
    803ca3e View commit details
    Browse the repository at this point in the history

Commits on Nov 5, 2021

  1. fix non-persistent-topc create logic

    congbo committed Nov 5, 2021
    Configuration menu
    Copy the full SHA
    b8f5b26 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    43d0e96 View commit details
    Browse the repository at this point in the history

Commits on Nov 6, 2021

  1. Fix code style and change some annotation

    congbo committed Nov 6, 2021
    Configuration menu
    Copy the full SHA
    baaf6b0 View commit details
    Browse the repository at this point in the history