Informix Error -979: The current transaction has been rolled back due to an internal error.
Cause and resolution
The current transaction has been rolled back due to an internal error.
A server thread associated with your session has been suspended, most likely because of a serious internal error. Evidence about the problem has been gathered and written to an Assertion Failure file, and your online log should contain more information.
Before suspending the session thread, the server attempted to roll back all work performed by the current transaction. Your connection to the server might also have been broken, depending on the type of thread that was suspended. At a minimum, you will have to begin a new transaction.
Contact IBM Informix Technical Support and provide them with your Assertion Failure file.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-979 carries the identical official text to -959 — per the official guidance, a server thread associated with the session was suspended, most likely due to a serious internal error, and the server rolled back the current transaction before suspending it. Evidence is written to an Assertion Failure file, with more detail in the online log.
- A serious internal server condition (an assertion failure) affecting the thread handling the session, per the official guidance — the direct, named cause, identical in substance to -959.
- The connection possibly broken entirely, per the official guidance, depending on which type of thread was suspended.
Solutions / Resolution
- Contact IBM Informix Technical Support and provide the Assertion Failure file, per the official guidance — the documented, primary resolution path.
- Check the online log for more information, per the official guidance, alongside the Assertion Failure file.
- Begin a new transaction, per the official guidance — at minimum required, since the current one was already rolled back.
- Reconnect if necessary, per the official guidance's note that the connection itself may have broken.
Examples
Locating the Assertion Failure file
$ grep -i MSGPATH "$ONCONFIG"
MSGPATH /informix/tmp/online.log
$ tail -100 /informix/tmp/online.log
As with -959, the Assertion Failure file is typically written alongside the online log (commonly
under $INFORMIXDIR/tmp or a configured alarm directory), named with the date and time of the
failure; the online log entry for the incident references it.
Diagnostic Checks
- Locate the Assertion Failure file and the online log (via
MSGPATHin$ONCONFIG) for the incident. - Check whether the connection itself broke, and reconnect if so.
- Begin a new transaction for any work that needs to continue.
Related Errors / Related Topics
- -959 — "The current transaction has been rolled back due to an internal error." The same official text at a different code — this appears to be a case (like -220 elsewhere in this corpus) of one message reused at more than one negative error-code position.
Same message, same response as -959: locate the Assertion Failure file and online log, provide them to IBM Informix Technical Support, and begin a new transaction (reconnecting if needed).