Whamcloud - gitweb
- new routine lmv_get_mea_and_update_object() to be called for
authoralex <alex>
Thu, 20 May 2004 13:23:46 +0000 (13:23 +0000)
committeralex <alex>
Thu, 20 May 2004 13:23:46 +0000 (13:23 +0000)
commitb5f041057359892d0a77d72639882c0caecc5b24
tree50df4831389a69b8514f1d9c858f5bed54193c55
parentde3b0ce1a3c1bb8e5bb54dcc01b4bbb0285332ca
- new routine lmv_get_mea_and_update_object() to be called for
  MDS's reply with -ERESTART which notifies directory got splitted
- lmv_intent_open() recognizes a dir gets splitted during request,
  retrieves mea and repeats the request using proper MDS
- lmv_create() recognizes a dir gets splitted during request,
  retrieves mea and repeats the request using proper MDS
- bug fixed in lmv_getattr_name(): it passed wrong namelen to raw_name2idx()
- lmv_obd_create() sets OBD_MD_FLID to flag MDSs to mark created object
  unsplittable. we have to differ two possible requests: 1) to create
  remote inode for cross-node mkdir(); 2) to create slave objects. last
  ones must not be splitted recursively
- mdt_obj_create() has been rewritten to comply just described rules.
  also, it takes a lock on newly created inode. this is needed for recovery
- bug fixed in scan_and_distribute(): it tried to open an inode using decimal
  number and this caused iopen_lookup() to find alias dentries
- mds_get_lmv_attr() should return right mea size for given conf. in any case
- minor cleanups
lustre/lmv/lmv_intent.c
lustre/lmv/lmv_internal.h
lustre/lmv/lmv_obd.c
lustre/mds/handler.c
lustre/mds/mds_lmv.c
lustre/mds/mds_open.c
lustre/mds/mds_reint.c