Whamcloud - gitweb
LU-9771 flr: lfs setstripe to create a new mirror 83/29083/11
authorJinshan Xiong <jinshan.xiong@intel.com>
Fri, 15 Sep 2017 20:01:58 +0000 (20:01 +0000)
committerJinshan Xiong <jinshan.xiong@intel.com>
Thu, 16 Nov 2017 07:42:03 +0000 (07:42 +0000)
commitb879bbc27db53ecc899f6007bf4fe0d993615def
tree352bd6c16507e2b19731a68b96d575616a707104
parentd8638fd870ecbedf4d104e7c3e0bf26124bec326
LU-9771 flr: lfs setstripe to create a new mirror

To create a mirrored file:

1. Create a component file
  lfs setstripe -E -1 /mnt/lustre/tf

2. Add a synced mirror - create a mirror with specified layout
  lfs setstripe --component-add [--mirror[=victim_file]]
    [setstripe options] <file>

  if victim_file exists, it will split the layout from that file and
  use it as a mirror; otherwise, it will create a new mirror with
  the stripe options in 'setstripe options'.

3. [todo] support to create a mirrored file directly by
  lfs setstripe --mirror [setstripe options] --mirror [options] <file>
  flag 'LCM_USER_FL_MIRROR' is reserved for this purpose.

Test-Parameters: testlist=sanity-flr
Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I470feeb1a77554bd2c990e94d8538fd3d03d7b3b
Reviewed-on: https://review.whamcloud.com/29083
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
26 files changed:
lustre/include/lu_object.h
lustre/include/lustre/lustreapi.h
lustre/include/uapi/linux/lustre/lustre_idl.h
lustre/include/uapi/linux/lustre/lustre_user.h
lustre/llite/file.c
lustre/lod/lod_internal.h
lustre/lod/lod_lov.c
lustre/lod/lod_object.c
lustre/lod/lod_qos.c
lustre/lov/lov_ea.c
lustre/lov/lov_internal.h
lustre/lov/lov_pack.c
lustre/mdc/mdc_lib.c
lustre/mdc/mdc_request.c
lustre/mdd/mdd_object.c
lustre/mdt/mdt_lib.c
lustre/mdt/mdt_open.c
lustre/ptlrpc/pack_generic.c
lustre/ptlrpc/wiretest.c
lustre/tests/Makefile.am
lustre/tests/sanity-flr.sh [new file with mode: 0644]
lustre/utils/lfs.c
lustre/utils/liblustreapi.c
lustre/utils/liblustreapi_layout.c
lustre/utils/wirecheck.c
lustre/utils/wiretest.c