Whamcloud - gitweb
LU-5516 lfsck: repair orphan parent MDT-object 91/11391/29
authorFan Yong <fan.yong@intel.com>
Fri, 8 Aug 2014 12:54:06 +0000 (20:54 +0800)
committerAndreas Dilger <andreas.dilger@intel.com>
Wed, 22 Oct 2014 05:04:30 +0000 (05:04 +0000)
commitd0fbde388136728285c9dc74f639508a01efc881
treea768d95a8cbcd1491852c46e33b4333d4660265d
parent1d889090f2e2902d861d1fab0227c4343127cc42
LU-5516 lfsck: repair orphan parent MDT-object

When the namespace LFSCK tries to repair the missing name entry,
means inserting the lost name entry back to its parent directory,
it may find that the parent MDT-object is also lost. Under such
case, the namespace LFSCK will firstly create the missing parent
MDT-object as an orphan and insert into the
.lustre/lost+found/MDTxxxx/ directory with the name:
${FID}-P-${conflict_version}.

Then insert the lost name entry into the orphan parent according
to the MDT-object's linkEA.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Ie9c585f08fa9f371fa3ed1281c9c814606c4a2ea
Reviewed-on: http://review.whamcloud.com/11391
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
lustre/include/lustre/lustre_idl.h
lustre/lfsck/lfsck_internal.h
lustre/lfsck/lfsck_layout.c
lustre/lfsck/lfsck_lib.c
lustre/lfsck/lfsck_namespace.c
lustre/ptlrpc/wiretest.c
lustre/target/out_handler.c
lustre/tests/sanity-lfsck.sh
lustre/utils/wirecheck.c
lustre/utils/wiretest.c