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

tests: Deflake test_migrating_consume_offsets #5074

Merged
merged 1 commit into from
Jun 11, 2022

Commits on Jun 8, 2022

  1. tests: Deflake test_migrating_consume_offsets

    Fixes synchronization around failure injection and
    node restarts.
    
    The test is structured as follows.
    
    1. start a cluster without consumer_offsets support
    2. Run an async failure injection loop that can potentially do a SIGKILL
    on a random redpanda process.
    3. Do a consumer groups test on a sample topic.
    4. Restart the cluster to enable the new __consumer_offsets topic
    feature.
    5. Verify that __consumer_offsets functionality works as expected.
    
    It turns out that (2) and (4) are conflicting with each other due to
    poor synchronization. Due to some racy code these operations are
    interleaved resulting in failure injector attempting to kill a
    non-existent PID.
    
    This patch makes sure that only one of these two operations run at any
    given time. A given node is marked 'busy' in a thread-safe way if either
    of the operations is running and the other thread has to wait.
    bharathv committed Jun 8, 2022
    Configuration menu
    Copy the full SHA
    1fb9dec View commit details
    Browse the repository at this point in the history