IDS 7.31 TC6: corrupt index, rollforward failed
Posted in 2009
Topics: Error Codes & Troubleshooting, Server Administration, Versions, Editions & End-of-Life
Hello,
On a windows NT4 server with IDS 7.31, we've got a problem with a corrupt
index, the server stays is 'Fast Recovery' when started up.
Error lines in logfile:
16:03:40 Results: Index 'phziv:"dbahziv".d_factboek_pf' is now unusable
16:03:40 Action: Run 'oncheck -cI phziv:"dbahziv".d_factboek_pf'
16:04:07 See Also: af.40ca9f0
16:04:07 Error during recovery left index inconsistent.
16:04:08 Rollforward of log record failed. iserrno = 105
16:04:08 Log Record: log = 1984, pos = 31119c, type = OLDRSAM:DELITEM(29),
trans = 20
16:04:09 Assert Failed: Error during recovery left index inconsistent.
16:04:09 Informix Dynamic Server Version 7.31.TC6
16:04:09 Who: Session(11, informix@n00sv067.CAAMI-HZIV.INT, 0, 0)
Thread(36, xchg_1.9, 0, 3)
File: \\\\tristarm\\\\rsam\\\\rskey.c Line: 1374
16:04:09 Results: Index 'phziv:"dbahziv".d_factboek_pf' is now unusable
16:04:09 Action: Run 'oncheck -cI phziv:"dbahziv".d_factboek_pf'
16:04:36 See Also: af.40ca9f0
16:04:37 Error during recovery left index inconsistent.
16:04:37 Rollforward of log record failed. iserrno = 105
16:04:37 Log Record: log = 1984, pos = 39e038, type = OLDRSAM:DELITEM(29),
trans = 20
When we run the "oncheck -ci" command to check the index, and answer "y" when
we are asked to recreate it, the following error is given:
Error recreating index.
ISAM error, cannot write log record.
Does anyone have an idea?
Thanks.
You haven't run out of free logs by any chance? I think something like that happened to us once...
Hello Bryce,
No, there are enough free logical logs.
When the instance is started, it stays in 'Fast Recovery' because a logical
logs seems to be corrupt because of a crash we had earlier.
09:46:52 Assert Failed: Page Check Error in page_reorg: slots overlap
09:46:52 Informix Dynamic Server Version 7.31.TC6
09:46:52 Who: Session(55, informdb@cj-nt.smals-mvm.be, 175, 0)
Thread(85, sqlexec, 0, 1)
File: \\\\tristarm\\\\rsam\\\\rsdebug.c Line: 1010
09:46:52 Results: Possible inconsistencies in an index of
'phziv:"dbahziv".d_factboek_pf'
09:46:52 Action: Run 'oncheck -cI phziv:"dbahziv".d_factboek_pf'
09:46:54 Releasing server from system block
09:47:09 See Also: af.43d006b, shmem.43d006b.0
09:47:13 Page Check Error in page_reorg: slots overlap
09:47:13 Assert Failed: Rollback error 105
09:47:13 Informix Dynamic Server Version 7.31.TC6
09:47:13 Who: Session(55, informdb@cj-nt.smals-mvm.be, 175, 0)
Thread(85, sqlexec, 0, 1)
File: \\\\tristarm\\\\rsam\\\\rsextlog.c Line: 1450
09:47:13 Results: Log record (OLDRSAM:DELITEM) in log 1983, offset 0x11aa528
was not rolled back
09:47:13 Action: Use 'onlog' to view the transaction and repair manually.
09:47:31 See Also: af.43d006b, shmem.43d006b.1
09:47:37 Rollback error 105
In the meantime, we restored the instance and everything is up and running
again.
Thanks for your reaction anyway.
KURT VAN GOMPEL wrote:
> Hello,
>
> On a windows NT4 server with IDS 7.31, we've got a problem with a corrupt
> index, the server stays is 'Fast Recovery' when started up.
> Error lines in logfile:
> 16:03:40 Results: Index 'phziv:"dbahziv".d_factboek_pf' is now unusable
> 16:03:40 Action: Run 'oncheck -cI phziv:"dbahziv".d_factboek_pf'
> 16:04:07 See Also: af.40ca9f0
> 16:04:07 Error during recovery left index inconsistent.
> 16:04:08 Rollforward of log record failed. iserrno = 105
> 16:04:08 Log Record: log = 1984, pos = 31119c, type = OLDRSAM:DELITEM(29),
> trans = 20
> 16:04:09 Assert Failed: Error during recovery left index inconsistent.
> 16:04:09 Informix Dynamic Server Version 7.31.TC6
> 16:04:09 Who: Session(11, informix@n00sv067.CAAMI-HZIV.INT, 0, 0)
>
> Thread(36, xchg_1.9, 0, 3)
>
> File: \\\\tristarm\\\\rsam\\\\rskey.c Line: 1374
> 16:04:09 Results: Index 'phziv:"dbahziv".d_factboek_pf' is now unusable
> 16:04:09 Action: Run 'oncheck -cI phziv:"dbahziv".d_factboek_pf'
> 16:04:36 See Also: af.40ca9f0
> 16:04:37 Error during recovery left index inconsistent.
> 16:04:37 Rollforward of log record failed. iserrno = 105
> 16:04:37 Log Record: log = 1984, pos = 39e038, type = OLDRSAM:DELITEM(29),
> trans = 20
>
> When we run the "oncheck -ci" command to check the index, and answer "y" when
> we are asked to recreate it, the following error is given:
> Error recreating index.
> ISAM error, cannot write log record.>
> Does anyone have an idea?
> Thanks.
You would have to bring IDS online before you can recreate bad indexes.
Is any dbspace set offline ? How did you set ONDBSPCEDOWN ?
If it is only an index entry that fails, IDS should come online and only
mark the index as bad - so I wonder why your instance stays in fast
recovery mode.
7.31.TC6 is rather old and I do recall that there were some nasty bugs
fixed since then. Also Support for 7.31 ends on 30 Sept 2009 - and I am
not even sure whether this support is only for 7.31.xD (as opposed to
the even older 7.31.xC version)
I suggest: open a ticket with IBM support and let them check.
HTH
Tilman
You are aware that Windows NT 4 is not supported by Microsoft, and you
have 16 days more support on IDS 7.31 - aren't you? It is time to
look at upgrading that system.
Nevertheless, it is good to know that your backup and restore
mechanisms do work.
On Mon, Sep 14, 2009 at 00:24, KURT VAN GOMPEL
<kvangompel@caami-hziv.fgov.be> wrote:
> Hello Bryce,
>
> No, there are enough free logical logs.
> When the instance is started, it stays in 'Fast Recovery' because a logical
> logs seems to be corrupt because of a crash we had earlier.
>
> 09:46:52 Assert Failed: Page Check Error in page_reorg: slots overlap
> 09:46:52 Informix Dynamic Server Version 7.31.TC6
> 09:46:52 Who: Session(55, informdb@cj-nt.smals-mvm.be, 175, 0)
>
> Thread(85, sqlexec, 0, 1)
>
> File: \\\\tristarm\\\\rsam\\\\rsdebug.c Line: 1010
> 09:46:52 Results: Possible inconsistencies in an index of
> 'phziv:"dbahziv".d_factboek_pf'
> 09:46:52 Action: Run 'oncheck -cI phziv:"dbahziv".d_factboek_pf'
> 09:46:54 Releasing server from system block
> 09:47:09 See Also: af.43d006b, shmem.43d006b.0
> 09:47:13 Page Check Error in page_reorg: slots overlap
> 09:47:13 Assert Failed: Rollback error 105
> 09:47:13 Informix Dynamic Server Version 7.31.TC6
> 09:47:13 Who: Session(55, informdb@cj-nt.smals-mvm.be, 175, 0)
>
> Thread(85, sqlexec, 0, 1)
>
> File: \\\\tristarm\\\\rsam\\\\rsextlog.c Line: 1450
> 09:47:13 Results: Log record (OLDRSAM:DELITEM) in log 1983, offset 0x11aa528
> was not rolled back
> 09:47:13 Action: Use 'onlog' to view the transaction and repair manually.
> 09:47:31 See Also: af.43d006b, shmem.43d006b.1
> 09:47:37 Rollback error 105
>
> In the meantime, we restored the instance and everything is up and running
> again.
> Thanks for your reaction anyway.
--
Jonathan Leffler #include <disclaimer.h>
Email: jleffler@earthlink.net, jleffler@us.ibm.com
Guardian of DBD::Informix v2008.0513 -- http://dbi.perl.org/
"Blessed are we who can laugh at ourselves, for we shall never cease
to be amused."
NB: Please do not use this email for correspondence.
I don't necessarily read it every week, even.
Charles de Gaulle - "The better I get to know men, the more I find
myself loving dogs." -
http://www.brainyquote.com/quotes/authors/c/charles_de_gaulle.html