>On Dec 06, 2006 17:23 +0100, Roland Fehrenbacher wrote:
>> on one of our OSTs, I get the message
>>
>> [15065.001307] LustreError: 12549:0:(filter.c:2546:filter_precreate())
ost4-2: Serious error: objid 9413629 already exists; is this filesystem corrupt?
>> [15065.016643] LustreError: 12549:0:(filter.c:2547:filter_precreate())
LBUG
>>
>> which brings Lustre client access and the OST to a halt. Any idea what
>> can be done to remove the troubling objid? An e2fsck on both MDS and
>> OST didn't show any corruption.
> You need to mount the OST directly (with Lustre stopped) to fix this
problem.
> The problem is that there is an inconsistency between the file that tracks
> the last created object and the objects themselves. This shouldn't be
> possible with ext3, unless you are using write cache and the system crashes
> in the middle of committing a transaction that is later rolled back.
>
> mount -t ldiskfs /dev/{ostdev} /mnt/ost
> od -td8 /mnt/ost/O/0/LAST_ID # should be highest object ID
> ls /mnt/ost/O/0/d* # find highest object ID
> xxd /mnt/ost/O/0/LAST_ID /tmp/li.asc
> {edit /tmp/li.asc to record highest-found object ID}
> xxd -r /tmp/li.asc /tmp/li
> od -td8 /tmp/li # verify this is correct
> cp /tmp/li /mnt/ost/O/0/LAST_ID
> umount /mnt/ost
>
> Then restart the OST and it should recover correctly.
Thanks for your fast reply. I did what you suggested, and the highest
object ID found by the ls /mnt/ost/O/0/d* was 9413754. So I changed
/mnt/ost/O/0/LAST_ID accordingly but obtain the following error when
restarting the OST:
[27965.722794] LustreError: 28694:0:(filter.c:2409:filter_should_precreate())
ASSERTION(diff >= 0)failed:ost4-2: 9413692 - 9413754 = -62
[27965.722803] LustreError: 28694:0:(filter.c:2409:filter_should_precreate())
LBUG
What did I do wrong?
Roland
_______________________________________________
Lustre-discuss mailing list
[email protected]
https://mail.clusterfs.com/mailman/listinfo/lustre-discuss