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

partitionccl: various improvements to TestRepartitioning #41240

Commits on Oct 1, 2019

  1. partitionccl: enhance partition test to use leaseholders and more nodes

    Prior to this commit the partitioning tests worked by creating a 3 node cluster
    and then expressed constraints over the three nodes. It then validates that
    the cluster conforms to the constraints by querying data and examining the
    trace to determine which node held the data.
    
    This is problematic for one because it is succeptible to cockroachdb#40333. In rare
    cases we'll down-replicate to the wrong single node (e.g. if the right one
    is not live) and we won't ever fix it.
    
    It also doesn't exercise leaseholder preferences.
    
    This PR adds functionality to configure clusters with larger numbers of nodes
    where each expectation in the config can now refer to a leaseholder_preference
    rather than a constraint and we'll allocate the additional nodes to 3
    datacenters.
    
    This larger test creates dramatically more data movement and has been useful
    when testing cockroachdb#40892.
    
    The PR also adds a flag to control how many of these subtests to run.
    
    Release justification: Only touches testing and is useful for testing a
    release blocker.
    
    Release note: None
    ajwerner committed Oct 1, 2019
    Configuration menu
    Copy the full SHA
    32caa9a View commit details
    Browse the repository at this point in the history
  2. partitionccl: extend partition test to upgrade from preemptive snapshots

    This PR extends the partition test to sometimes start as a 19.1 cluster and
    upgrade to 19.2. This test will age poorly valuable during the transition.
    This form of testing will only remain active on the 19.1 branch and should be
    removed from 20.1 when that happens. It's sort of too little, too late but it's
    now typed and I hope will remain valuable for the remainder of this release.
    
    Release justification: testing only.
    
    Release note: None
    ajwerner committed Oct 1, 2019
    Configuration menu
    Copy the full SHA
    6d77677 View commit details
    Browse the repository at this point in the history