Details
-
Bug
-
Resolution: Fixed
-
Minor
-
Lustre 1.8.8
-
None
-
3
-
6200
Description
There is a code snippet from The code in mds_lov_update_objids():
if (id > data[idx]) { #ifndef HAVE_DELAYED_RECOVERY int lost = id - data[idx] - 1; /* we might have lost precreated objects due to VBR */ if (lost > 0 && obd->obd_recovering) { CDEBUG(D_HA, "GAP in objids is %u\n", lost); if (!obd->obd_version_recov) CWARN("Unexpected gap in objids\n"); /* lsm is allocated if NULL */ mds_log_lost_precreated(obd, &lsm, &stripes, data[idx] + 1, lost, i); } #endif data[idx] = id; cfs_bitmap_set(mds->mds_lov_page_dirty, page); } }
Which is not quite right, because we can't guarantee the object id is always increased in transno order, and if the lov_objid file was removed by administrator (to fix the corrupted lov_objid file), many objects could be deleted mistakenly then.
Attachments
Activity
Fix Version/s | New: Lustre 2.1.5 [ 10203 ] | |
Fix Version/s | New: Lustre 1.8.9 [ 10204 ] |
Labels | Original: mq113 ptr |
Resolution | New: Fixed [ 1 ] | |
Status | Original: Open [ 1 ] | New: Resolved [ 5 ] |
Labels | Original: mq113 mu113 ptr | New: mq113 ptr |
Labels | Original: mq113 ptr | New: mq113 mu113 ptr |
Labels | Original: mq113 | New: mq113 ptr |
Labels | New: mq113 |
patches landed.