suche 36x36
  • Admin-Scout-small-Banner
           

    CURSOR Admin-Scout

    get the ultimate tool for Informix

    pfeil  
Latest versionsfixlist
14.10.xC10 FixList
12.10.xC16.X5 FixList
11.70.xC9.XB FixList
11.50.xC9.X2 FixList
11.10.xC3.W5 FixList
Have problems? - contact us.
Register for free anmeldung-x26
Contact form kontakt-x26

Informix - Problem description

Problem IT11910 Status: Closed

LOG ROLLFORWARD ERROR 126 ON HINSERT INTO A TABLE ON SECONDARY AFTER TABLE
HAS BEEN TRUNCATED

product:
INFORMIX SERVER / 5725A3900 / C10 - IDS 12.10
Problem description:
On the secondary server, an assertion failure would look like
this:

08:31:36  Log record (OLDRSAM:HINSERT) failed, partnum 0x1001f0
rowid 0x203 iserrno 126
Log Record: log = 20, pos = 0x10018, type = OLDRSAM:HINSERT(40),
trans = 28
...
08:31:36  Assert Failed: Logical log replay error.
08:31:36   Who: Session(21, informix@server, 0, 0x44c56fa8)
        Thread(39, xchg_1.2, 44c19c68, 1)
        File: rsprecvr.c Line: 7585
08:31:36   Results: The secondary server cannot continue.
08:31:36   Action: Reestablish the secondary server.
...
08:31:36  Stack for thread: 39 xchg_1.2

 base: 0x0000000046237000
  len:   69632
   pc: 0x00000000018e5867
  tos: 0x0000000046246de0
state: running
   vp: 1

afstack
afhandler
afcrash_interface
rollfwd_error
rlogm_redo
next_recvr
prod_loop2
producer_thread
startup

The problem can happen when inserting via a prepared statement
into a table that had been truncated previously (to encounter
the problem the truncate table would happen after the statement
had been prepared and rows would have needed to be inserted with
the prepared statement as well).  So any newly prepared
statement after a table is truncated would not cause a problem.

The problem seems to be that in some cases, the prepared
statement can retain information about the last page it inserted
a row into, and this info is used during inserts to hint/speed
up the insert process.  So using this information after a
truncate can cause a row to get inserted into a page of the
table well past the partitions npused count, which is what then
causes the recovery problem.

Another detail to hit the problem is the session doing the
insert on the primary seems to need to have the table that's
being truncated opened multiple times (so it would need to show
up for more then one isfd in onstat -g opn output).
Problem Summary:
****************************************************************
* USERS AFFECTED:                                              *
* All users.                                                   *
****************************************************************
* PROBLEM DESCRIPTION:                                         *
* See Error Description                                        *
****************************************************************
* RECOMMENDATION:                                              *
* Update to IBM Informix Server 12.10.xC7                      *
****************************************************************
Local Fix:
Solution
Workaround
not known / see Local fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
21.10.2015
28.06.2016
28.06.2016
Problem solved at the following versions (IBM BugInfos)
12.10.xC7
Problem solved according to the fixlist(s) of the following version(s)
Informix EditionsInformix Editions
Informix Editions
DocumentationDocumentation
Documentation
IBM NewsletterIBM Newsletter
IBM Newsletter
Current BugsCurrent Bugs
Current Bugs
Bug ResearchBug Research
Bug Research
Bug FixlistsBug Fixlists
Bug Fixlists
Release NotesRelease Notes
Release Notes
Machine NotesMachine Notes
Machine Notes
Release NewsRelease News
Release News
Product LifecycleProduct Lifecycle
Lifecycle
Media DownloadMedia Download
Media Download