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

storage: stop modifying requests and returning responses from TxnWaitQueue #43383

Merged

Commits on Dec 27, 2019

  1. storage: don't use header timestamp to determine txn expiration

    This commit removes the use of a PushRequest's batch header timestamp
    to determine whether a pushee has expired or not. This is the first
    step in a refactor to remove cases where we mutate requests on the
    server before command evaluation.
    
    There is no migration needed for this change because it's impact
    is local to a single node - the leaseholder evaluating the request.
    
    Release note: None
    nvanbenschoten committed Dec 27, 2019
    Configuration menu
    Copy the full SHA
    8306f3a View commit details
    Browse the repository at this point in the history

Commits on Jan 2, 2020

  1. storage: send force abort PushTxn req directly from TxnWaitQueue

    This commit removes the interaction between the TxnWaitQueue and the
    Replica-level retry loop when transaction deadlocks are detected. Instead
    of instructing a waiting PushTxnRequest to change to a force push request,
    the queue now launches push abort directly. This is cleaner and avoids
    the need to mutate the input batch in Replica.maybeWaitForPushee.
    
    Release note: None
    nvanbenschoten committed Jan 2, 2020
    Configuration menu
    Copy the full SHA
    a311978 View commit details
    Browse the repository at this point in the history