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

client: avoid acting on stale data after launch #10907

Merged
merged 2 commits into from
Jul 20, 2021

Commits on Jul 17, 2021

  1. client: avoid acting on stale data after launch

    When the client launches, use a consistent read to fetch its own allocs,
    but allow stale read afterwards as long as reads don't revert into older
    state.
    
    This change addresses an edge case affecting restarting client. When a
    client restarts, it may fetch a stale data concerning its allocs: allocs
    that have completed prior to the client shutdown may still have "run/running"
    desired/client status, and have the client attempt to re-run again.
    
    An alternative approach is to track the indices such that the client
    set MinQueryIndex on the maximum index the client ever saw, or compare
    received allocs against locally restored client state. Garbage
    collection complicates this approach (local knowledge is not complete),
    and the approach still risks starting "dead" allocations (e.g. the
    allocation may have been placed when client just restarted and have
    already been reschuled by the time the client started. This approach
    here is effective against all kinds of stalness problems with small
    overhead.
    Mahmood Ali committed Jul 17, 2021
    Configuration menu
    Copy the full SHA
    f009308 View commit details
    Browse the repository at this point in the history

Commits on Jul 19, 2021

  1. changelog

    Mahmood Ali committed Jul 19, 2021
    Configuration menu
    Copy the full SHA
    f917f08 View commit details
    Browse the repository at this point in the history