devxlogo

Set explain on fails

Set explain on fails

Question:
Set explain on fails (sqlcode: 586 (I think) ISAM: 1) (Could not open sqexplain.out). We have plenty of disk space and file permissions. It even failed as “root” in /tmp with permissions of rwxrwxrwx. However, as user “informix” in the /tmp directory, but not directories with rwxrwxr-x, it succeeded. This only happens on three of four databases (with very similar schemas) on one machine.

Answer:
You are probably experiencing a 581 error (Error in loading message file) rather that a 586 error (Cursor already open).

Once you have the correct error message number, you will find that the finderr command is very useful. On the operating system command line, type:

finderr 581
You will get:
Error loading message file
The SET EXPLAIN statement could not be completed because the database server was unable to find the file of message templates it uses when preparing explanatory output. Consult with the person who installed the Informix software.

This error message will definitely point you in the right direction, but it doesn’t give you the entire answer. If you are getting this message, your Informix software was installed incorrectly. However, since you are getting this message, the person who installed the software is probably not going to know what he did wrong in the first place.

The trick here lies in reading the installation manuals and noting the part about the order of Informix software installation. The acronym here to remember is TEN: Tools, Engine, Networking. This is the order in which you must install your Informix components for everything to work properly. So install your tools (4gl, esql, etc.) first, then your database engine, then your Informix networking software (if any).

This is actually a fairly frequent problem because even if the initial product installation is done correctly, you may later receive a tools update and simply load that without remembering that you also need to reload the engine and networking products. Fortunately, this is a relatively simple problem to solve. You should simply need to take your engine down, and then re-install the products in the correct order.

devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist