General
cancel
Showing results for 
Search instead for 
Did you mean: 

Informix problem: Assert Failed: Exception Caught. Type: MT_EX_OS, Context: mem

Vara Prasad Onteru
Occasional Visitor

Informix problem: Assert Failed: Exception Caught. Type: MT_EX_OS, Context: mem

Hi,

Iam having an assertion error in informix. Pls help me. This is a show stopper for us.


Please find the online.log attached here. For simplification I took out some "check point complete messages". The version of informix is IDS 8.50 FC2 and it is running on hp-ux 11i V1.



[001] Thu Feb 16 18:36:14 2006

[001] 18:36:14 Bound symbol table loaded.
[001] 18:36:15 Setting domain 0 to have no network layer
[001] 18:36:15 Setting domain 1 to have no network layer
[001] 18:36:15 Setting domain 2 to have no network layer
[001] 18:37:29 IBM Informix Extended Parallel Server is initializing shared
memory.
[001] 18:37:29 IBM Informix Extended Parallel Server Version 8.50.FC2
[001] 18:37:35 IBM Informix-XPS Initialized -- Shared Memory Initialized.
[001] 18:37:35 Physical Recovery Started.
[001] 18:37:41 Physical Recovery Complete: 0 Pages Restored.
[001] 18:37:41 Logical Recovery Started.
[001] 18:37:57 Logical Recovery has reached the transaction cleanup phase.
[001] 18:37:57 Logical Recovery Complete.
0 Committed, 0 Rolled Back, 0 Open, 0 Bad Locks

[001] 18:37:58 Dataskip is now OFF for all DBspaces
[001] 18:37:58 Onconfig parameter SHMVIRTSIZE modified from 1000000 to 8000000.
[001] 18:37:58 Onconfig parameter SHMTOTAL modified from 0 to 12000000.
[001] 18:37:58 Onconfig parameter DS_TOTAL_MEMORY modified from 10000000 to 7000000.
[001] 18:37:58 WARNING: BAR_MAX_WORKER is set to 0 for BAR_SM 1.
- You will have to start ON-Bar workers (onbar_w) by hand.
[001] 18:37:58 WARNING: LOG_BACKUP_MODE is set to NONE.
- Logs will be overwritten without being backed up.
- Log data will not be retrievable.
[001] 18:37:58 Checkpoint Completed: duration was 0 seconds.
[001] 18:38:02 On-Line Mode
[001] 18:47:20 Checkpoint Completed: duration was 21 seconds. (flush light append)
[001] 18:47:25 Checkpoint Completed: duration was 0 seconds. (flush light append)
[001] 19:19:31 Logical Log 34 Complete.
[001] 19:20:44 Logical Log 35 Complete.
[001] 19:22:14 Logical Log 36 Complete.
[001] 19:25:11 Logical Log 37 Complete.
[001] 19:26:37 Logical Log 38 Complete.
[001] 19:28:09 Logical Log 39 Complete.
[001] 19:29:50 Logical Log 40 Complete.
[001] 19:35:38 Checkpoint Completed: duration was 14 seconds.
[001] 19:39:29 Checkpoint Completed: duration was 11 seconds. (flush light append)
[001] 19:39:47 Checkpoint Completed: duration was 1 seconds. (flush light append)
[001] 20:31:09 Checkpoint Completed: duration was 0 seconds.
[001] 20:47:53 Checkpoint Completed: duration was 0 seconds.

ERROR BEGIN

***************************

[001] 20:57:25 Assert Failed: Exception Caught. Type: MT_EX_OS, Context: mem
[001] 20:57:25 IBM Informix Extended Parallel Server Version 8.50.FC2
[001] 20:57:25 Who:Session(592, lgdw@sslgm190, 12673, -603133648)
Thread(112429, sqlexec_1.592, 0xc0000000dc0ba8a8, 4)
File: mtex.c Line: 305
[001] 20:57:25 Action: Please notify Technical Support.
[001] 20:57:25 stack trace for pid 9358 written to /tmp/af.bb1568a5
[001] 20:57:25 See Also: /tmp/af.bb1568a5, shmem.bb1568a5.1
[001] 21:05:12 Checkpoint Completed: duration was 23 seconds.
[001] 21:21:37 Assert Failed: Exception raised during SQL optimization.
[001] 21:21:37 IBM Informix Extended Parallel Server Version 8.50.FC2
[001] 21:21:37 Who:Session(592, lgdw@sslgm190, 12673, -603133648)
Thread(112429, sqlexec_1.592, 0xc0000000dc0ba8a8, 4)
File: sqoptim.c Line: 1556
[001] 21:21:37 Results: Exception Caught. Type: MT_EX_OS, Context: mem
[001] 21:21:37 Action: Please notify Technical Support.
[001] 21:21:37 stack trace for pid 9358 written to /tmp/af.bb1568a5
[001] 21:21:37 See Also: /tmp/af.bb1568a5
[001] 21:21:44 WARNING: 2 mem pools not freed. (destroy_session) user:lgdw, prog:, ses id:592
[001] 21:21:44 pool not freed. pool name:592*O0, address:0xc0000001f32a5028
[001] 21:21:44 Assert Failed: pool not freed. pool name:592*O0, address:0xc0000001f32a5028
[001] 21:21:44 IBM Informix Extended Parallel Server Version 8.50.FC2
[001] 21:21:44 Who:Thread(112429, sqlexec_1.592, 0xc0000000dc0ba8a8, 3)
File: session.c Line: 2057
[001] 21:21:44 Results: Internally corrected
[001] 21:21:44 Action:
[001] 21:21:44 stack trace for pid 9357 written to /tmp/af.bb1568a5
[001] 21:21:44 See Also: /tmp/af.bb1568a5
[001] 21:21:54 pool not freed. pool name:592*O1, address:0xc0000001f32a9028
[001] 21:21:54 Assert Failed: pool not freed. pool name:592*O1, address:0xc0000001f32a9028
[001] 21:21:54 IBM Informix Extended Parallel Server Version 8.50.FC2
[001] 21:21:54 Who:Thread(112429, sqlexec_1.592, 0xc0000000dc0ba8a8, 3)
File: session.c Line: 2057
[001] 21:21:54 Results: Internally corrected
[001] 21:21:54 Action:
[001] 21:21:54 stack trace for pid 9357 written to /tmp/af.bb1568a5
[001] 21:21:54 See Also: /tmp/af.bb1568a5
[001] 21:22:41 Thread ID 112429 will now be suspended.


Thanks for the help.
Vara
4 REPLIES
A. Clay Stephenson
Acclaimed Contributor

Re: Informix problem: Assert Failed: Exception Caught. Type: MT_EX_OS, Context: mem

The line "Please notify Technical Support" says it all. You need to contact Informix.

If you do a google search on "Assert Failed: Exception Caught. Type: MT_EX_OS, Context: mem", you will get a number of hits.

An assert(integer_expression) is put into code and if the expression evaluates as zero then the process is aborted. It's unusual to have active assert()'s in production code. They are used to check certain assumptions and if that assumption is false, the program is killed after outputing a message.
If it ain't broke, I can fix that.
Vara Prasad Onteru
Occasional Visitor

Re: Informix problem: Assert Failed: Exception Caught. Type: MT_EX_OS, Context: mem

The same version of Informix is working well on Solaris.I am seeing this problem only on hp-ux. The IBM support says that we need to upgrade the version of Informix, obviously it is very easy for him to say this but it is not possible right now. Hence I am looking for any fix/workaround for this issue.


Vara
Steve Lewis
Honored Contributor

Re: Informix problem: Assert Failed: Exception Caught. Type: MT_EX_OS, Context: mem

A few things to try:

1. Are you quite sure that 8Gb of shared memory V segment is supported, even on 64 bit? I thought that informix was still restricted to multiple chunks of 4Gb internally, regardless of shmmax value. You need to check this.

2. Look at the SQL in the assertion failure file /tmp/af.bb1568a5.
It failed during query optimisation, so maybe as a workaround, you can try one of these approaches:
re-write the SQL query to use a different method,
or split the SQL into several smaller SQLs,
or put the SQL into a stored procedure (pre-optimised),
or temporarily SET OPTIMISATION LOW (if supported on XPS, I'm not sure).

3. Check the resolution of your update statistics. If your tables are very large then you may find that tuning the update statistics to use a different number of bins (H) or different statistical confidence(M) helps this problem.

4. Ask user ldgw what they were doing at the time, to cause this crash. Maybe he had given the engine a stupid SQL that shouldn't be allowed in the first place.

5. Try increasing the default user stack size in the onconfig file.

6. Was this a PDQ query? If so, re-tune.

7. I got a similar error when using the SQL statement cache in stored procedures fired from cascading triggers. You might try disabling the SQL statement cache.

8. Ultimately though, it is still an engine bug. It should not do this, regardless of the SQL someone gives it.

Vara Prasad Onteru
Occasional Visitor

Re: Informix problem: Assert Failed: Exception Caught. Type: MT_EX_OS, Context: mem

Hi Steve,

Thanks for all your suggestions. I shall try out these meanwhile please find the sql query which is triggering the failure and the assertion failure stack trace attached.
Just thought that these might come handy.

assertion failure stack trace :
---------------------------------


0x40000000005fbf88 oninit :: afstack + 0x4f8 sp=0xc00000012331adf0
0x40000000005fa8b0 oninit :: afhandler + 0x770 sp=0xc00000012331aa50 delta_sp=928
0x40000000005fa080 oninit :: affail_interface + 0x48 sp=0xc000000123319bd0 delta_sp=3712
0x40000000005fddc4 oninit :: mt_ex_throw_sig + 0x21c sp=0xc000000123319b50 delta_sp=128
0x40000000005e556c oninit :: ossig_handler + 0x54 sp=0xc000000123319980 delta_sp=464
09:51:56 See Also: , shmem.126d12ac.1

-------------------------------------


Regards,
Vara