Re: Transaction not found
Posted in 1997
Joerg Schneider wrote:
>
> While booting after a system crash the following output was made by
> Informix-Online 5.?
>
> 20:38:40 INFORMIX-OnLine Initialized -- Shared Memory Initialized
> 20:38:40 Physical Recovery Started
> 20:38:40 Checkpoint Completed
> 20:38:40 Physical Recovery Complete: 0 Pages Restored
> 20:38:40 Transaction Not Found
> 20:38:40 Log Record: log = 17484, pos = 59b0c8, type = 51, trans = 5
> 20:38:40 Cannot Rollforward from Checkpoint
> 20:38:40 INFORMIX-OnLine Stopped>
> It wasn't possible to bring the database online, because informix always
> searched for the
> transaction, but didn't find it.
>
> So if anyone has an idea how to bring the database online without this
> transaction, feel free to
> send me an email.
>
> Any help (via email) would be appreciated.
>
> Thanks in advance, Joerg
We have the same problem last week, and yes, like June Tong notes the
version is 5.00.
The tech support of Informix requires from us a dial-in modem and
C-compiler.
We don't have these requirementes because the machine (Tandem) and
operating system (Unix At&T) are very old.
I can solve this problem, but the fixing was very hard.
First I must locate the physical location of the logical log in
rootdbs
(logical logs start in the disk after the following pages:
13 reserved pages,
2% of the total of pages for "I dont' remember what"
other 5 pages for "I can't remember what"
n pages -> size of physical log
and here starts the logical log)
or something like that, this is documented in OnLine Manual.
After located I dump the pages (with dd unix command) to a file and
work with this file with a hexadecimal pseudo-editor constructed with
hd, od, vi and bc
The scheme of addressing pages in Informix OnLine wasn't documented in
the manual, but I remember that the last 4 digits in hexa were
significant,
I couldn't understand the meaning of first 2 digits (maybe means
something
like dbspace and page)
I must read the contents of logical log with tblog -l and find the hexa
combination of the transactions that fail:
in your case : Log Record: log = 17484, pos = 59b0c8, type = 51, trans =
5
find the log record 17484 with tblog -l and read the hexa codes
following
the description.
After that I replace the rest of the page with zeros, and ready.
-------------------------
Carlos Antonio Ruiz G'mez
dmys2@colomsat.net.co
Santaf' de Bogot' D. C.
Colombia, Suram'rica