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

scheduler: seed random shuffle of nodes with eval ID #12008

Merged
merged 1 commit into from
Feb 8, 2022

Commits on Feb 8, 2022

  1. scheduler: seed random shuffle nodes with eval ID

    Processing an evaluation is nearly a pure function over the state
    snapshot, but we randomly shuffle the nodes. This means that
    developers can't take a given state snapshot and pass an evaluation
    through it and be guaranteed the same plan results.
    
    But the evaluation ID is already random, so if we use this as the seed
    for shuffling the nodes we can greatly reduce the sources of
    non-determinism. Unfortunately golang map iteration uses a global
    source of randomness and not a goroutine-local one, but arguably
    if the scheduler behavior is impacted by this, that's a bug in the
    iteration.
    tgross committed Feb 8, 2022
    Configuration menu
    Copy the full SHA
    27102af View commit details
    Browse the repository at this point in the history