Details

    • Technical task
    • Resolution: Fixed
    • Minor
    • Lustre 2.6.0
    • None
    • None
    • 8903

    Description

      In DNE phase II, the update RPC format will be changed, please refer to HLD of DNE phase II.

      enum update_rec_flags {
      OUT_UPDATE_FLAG_TYPE = 0x000000001, /* 0 = MDT, 1 = OST */
      OUT_UPDATE_FLAG_SYNC = 0x000000002, /* commit update before reply */
      OUT_UPDATE_FLAG_COMMITTED = 0x000000004, /* ur_batchid is committed globally */
      OUT_UPDATE_FLAG_NOLOG = 0x000000008, /* idempotent update does not need to be logged */
      };

      struct update_rec_v2 {
      _u16 ur_update_type; /* OUT* update type */
      __u16 ur_master_index; /* master MDT/OST index */
      __u32 ur_flags; /* master target type, globally committed, sync, log?, etc */
      __u64 ur_batchid; /* transno of master MDT in operation */
      struct lu_fid ur_fid; /* FID operation applies to */
      __u32 ur_lens[UPDATE_BUF_COUNT]; /* length of each update buffer, rounded up to 8 bytes */
      char ur_bufs[0]; /* per operation data values, multiple of 8 bytes */
      };

      struct update_header {
      __u32 uh_magic; /* UPDATE_BUFFER_MAGIC_V2 */
      __u32 uh_count; /* number of update records in request */
      __u32 uh_bufs[uh_count]; /* length of each struct update_rec_v2 */
      };

      Attachments

        Issue Links

          Activity

            People

              liwei Li Wei (Inactive)
              di.wang Di Wang
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: