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 IT14187 Status: Closed

CHECKPOINT HANG UNABLE TO SWITCH INTO NEXT LOGICAL LOG DUE TO PREVIOUS
LONG TRANSACTION ROLLBACK

product:
INFORMIX SERVER / 5725A3900 / C10 - IDS 12.10
Problem description:
It's possible for the database to hang in a check point request
when the current logical log fills, such that a thread trying to
write to that log is in a critical section, but the server can't
switch into the next logical log, because a previous long
transaction that was rolled back originated in that log.  The
main_loop thread is stuck waiting for all threads to exit
critical sections, and the thread in the critical section is
waiting to switch into the next log, but we can't switch into
the next log until a new checkpoint gets written into the
logical logs.  So the server is hung.

onstat -u output would have at least 1 thread in a critical
section:


IBM Informix Dynamic Server Version 12.10.FC4W1 -- On-Line (CKPT
REQ) -- Up 00:02:03 -- 148076 Kbytes
Blocked:CKPT

Userthreads
address          flags   sessid   user     tty      wait
tout locks nreads   nwrites
...
44c121e8         --BPX-- 31       jrenaut  21       0
0    1     0        998
...

The stack trace for main_loop would look like this:

mt_yield
wait4critex
checkpoint
main_loop
th_init_initgls
startup

The stack trace for the session trying to switch the server into
the next log would look like this:

mt_yield
logchange      **** this function may not show up as on some
platforms it will be in-lined and not visible in the stack trace
***
logwrite
log_put
logm_write
logputx
rscommit
iscommit
sqiscommit
committx
commitcmd
excommand
sq_execute
sqmain
listen_verify
spawn_thread
th_init_initgls
startup

If the logchange() function isn't in the stack, 1 way to infer
that stack is present is if the sqlexec thread for user in the
critical section shows up in onstat -g ath with a status of
"sleeping secs: 5"   (where 5 could be anything in the range of
1-5) so something like this:

IBM Informix Dynamic Server Version 12.10.FC4W1 -- On-Line (CKPT
REQ) -- Up 00:06:32 -- 148076 Kbytes
Blocked:CKPT

Threads:
 tid     tcb              rstcb            prty status
vp-class       name
...
 58       45e407f0         44c121e8         1    sleeping secs:
5        1cpu         sqlexec
...

Also you would see this message in MSGPATH file:

10:25:47  Logical Log 91 Complete, timestamp: 0x60e91.
10:25:54  Logical Log 92 Complete, timestamp: 0x60e95.
10:25:59  Waiting for Next Logical Log File to be Freed
Problem Summary:
****************************************************************
* USERS AFFECTED:                                              *
* Users with small logical log files or with environments in   *
* which logs fill very quickly.                                *
****************************************************************
* 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       :
08.03.2016
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