summaryrefslogtreecommitdiffstats
path: root/src/crimson/osd/osd_operations/osdop_params.h
blob: 102cb7fff6b61d2694c379de107b3d67e6eca724 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#pragma once

#include "messages/MOSDOp.h"
#include "osd/osd_types.h"
#include "crimson/common/type_helpers.h"

// The fields in this struct are parameters that may be needed in multiple
// level of processing. I inclosed all those parameters in this struct to
// avoid passing each of them as a method parameter.
struct osd_op_params_t {
  osd_reqid_t req_id;
  utime_t mtime;
  eversion_t at_version;
  eversion_t pg_trim_to;
  eversion_t min_last_complete_ondisk;
  eversion_t last_complete;
  bool user_modify = false;
  ObjectCleanRegions clean_regions;
  interval_set<uint64_t> modified_ranges;
  //TODO: Move delta_stats to osd_op_params_t
  osd_op_params_t() = default;
};