Corrupt index file

Post Reply
princegoyal91
Posts: 12
Joined: Mon Jul 21, 2014 5:46 am

Corrupt index file

Post by princegoyal91 »

Dear Team,

Suddenly, I found the following error in one of my Table when I query something:

005 Corrupt block header at 0xb50795f60 in KDBF file DB-path/files1_1_0.blb in the function read_head
005 Corrupt block header at 0xb50795f60 in KDBF file DB-path/files1_1_0.blb in the function read_head

After doing "kdbfchk" for the mentioned(files1_1_0.blb) index, I got free tree error.

Can you please suggest me, if deleting the indexes and rebuilding them will help?

will this error go away from my table?

Please Advise!
User avatar
Kai
Site Admin
Posts: 1270
Joined: Tue Apr 25, 2000 1:27 pm

Corrupt index file

Post by Kai »

The error is in a blob file, which is part of the table, not the index, so rebuilding indexes will not help this issue. However, I'd rebuild them anyway, as whatever caused this KDBF error may have also corrupted indexes as well.

The free-tree error is a side effect of kdbfchk: it cannot reconstruct the free-tree currently, so any free space in the table/blob file is orphaned and lost. It will not cause any problems, just take up disk space. It can be recovered by rebuilding the table, e.g. `create table NewTable as select * from OldTable'.
princegoyal91
Posts: 12
Joined: Mon Jul 21, 2014 5:46 am

Corrupt index file

Post by princegoyal91 »

Thanks for the quick reply.

By any chance, can this error be related to multibyte characters in the tables/indexes?

As suggested by you, when I was creating the new table, My screen got filled with the same error:

005 Corrupt block header at 0x77c75a64c in KDBF file DBpath/files1_1_0.blb in the function read_head
User avatar
Kai
Site Admin
Posts: 1270
Joined: Tue Apr 25, 2000 1:27 pm

Corrupt index file

Post by Kai »

Multibyte chars would not cause KDBF errors; they might cause searches not to find the right term, or possibly other search errors referring to "post-processing".

When you ran kdbfchk, did you use the -o option to write a new repaired file, then replace it? E.g. stop all activity on the database, then:

cd DBpath
kdbfchk -o new.blb files1_1_0.blb
mv files1_1_0.blb old.blb
mv new.blb files1_1_0.blb

Without -o, kdbfchk just checks the file, and does not repair it.
princegoyal91
Posts: 12
Joined: Mon Jul 21, 2014 5:46 am

Corrupt index file

Post by princegoyal91 »

No I did not do that, Just now I have dropped this table and its indexes and rebuilt them. Now, new data would be populated into this table in few hours.

If we again face this issue, I will do whatever is being suggested by you to repair.

Thanks for the help.
Post Reply