Informix Error -539: DBTEMP too long.
Cause and resolution
DBTEMP too long.
The pathname in the DBTEMP environment variable exceeds the limit on pathnames, which is 80 characters. You will have to locate the temporary directory higher in the directory hierarchy. Since Version 5.01, the IBM Informix SE database server uses the DBTEMP environment variable, but IBM Informix Dynamic Server.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-539 is specific to IBM Informix SE: the DBTEMP environment variable, which SE uses to locate
its temporary-file directory, has a pathname exceeding the 80-character limit the official
guidance states. (DBTEMP is an SE-specific variable — IBM Informix Dynamic Server uses
different mechanisms, DBSPACETEMP/PSORT_DBTEMP, for temporary-table and sort-file placement,
so this specific error is scoped to SE deployments.)
DBTEMPset to a deeply nested directory path, pushing the full pathname past 80 characters — the direct, only cause.- An automated environment-setup script constructing
DBTEMPfrom a long base path (a versioned install directory, a long hostname-based path, etc.) without checking the resulting length.
Solutions / Resolution
- Locate the temporary directory higher in the directory hierarchy, per the official
guidance, so the full pathname assigned to
DBTEMPcomes in under 80 characters. - Use a short, dedicated temp directory (e.g. directly under
/tmpor/var/tmp) rather than a long nested application path, if flexibility in location exists. - Recheck the exported value's actual length after editing the environment setup, since shell quoting or variable expansion can sometimes produce a longer path than expected.
Examples
Too long
export DBTEMP=/export/disk/applications/informix-se/versions/5.01/instances/prod/tmp
# 81 characters -- -539
Shortened
export DBTEMP=/tmp/informixse
Diagnostic Checks
- Check the length of the exported
DBTEMPvalue directly:
confirm it's 80 characters or fewer.echo -n "$DBTEMP" | wc -c
Related Errors / Related Topics
No closely related error codes are cross-referenced for -539 in this set yet.
An IBM Informix SE-specific 80-character pathname limit on DBTEMP — shorten the path, moving
the temp directory higher in the hierarchy if needed.