Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-8650

DNE disabled REP-ACK

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Critical Critical
    • Lustre 2.10.0
    • Lustre 2.8.0
    • None
    • 3
    • 9223372036854775807

      LU-7903 reveals that REP-ACK is disabled in 2.8, this was introduced in LU-3538 http://review.whamcloud.com/#/c/12530/, which is to support DNE Commit-on-Sharing, but it disabled REP-ACK, while Commit-on-Sharing doesn't take effect for local operations (operation which involves only one MDT) either, this may cause single MDT recovery fail.

      To fix this, we need to enable REP-ACK, and also make sure http://review.whamcloud.com/#/c/12530/ work as designed. The implementation will be like this:
      1. save local locks upon unlock as before, but don't convert locks into COS mode.
      2. reply_out_callback() wakes up ptlrpc_handle_rs(), if reply is not committed yet, convert locks into COS mode, otherwise decref locks like before.
      3. later when the operation is committed, ptlrpc_commit_replies() wakes up ptlrpc_handle_rs() again, which will decref locks like before.

            laisiyao Lai Siyao
            laisiyao Lai Siyao
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: