Informix - Problem description
Problem IC61319 | Status: Closed |
DEFAULT SETTING OF LC_* VARIABLES CAN CAUSE -668 ERROR RETURNED FROM SP USING 'SYSTEM' COMMAND | |
product: | |
IBM IDS ENTRP E / 5724L2304 / B15 - IDS 11.50 | |
Problem description: | |
When the IDS startup environment doesn't contain the $LANG (or $LC_COLLATE, $LC_CTYPE, $LC_MONETARY, $LC_NUMERIC and $LC_TIME) variables, the LC_* variables inside the IDS (as shown by 'onstat -g env') are set with default values of 'en_US.819' locale. Any client session that does not have these variables set inherits these settings. In these conditions an executable program that has a function call 'setlocale(LC_ALL,"")' will fail with -668 error if executed via 'SYSTEM' command thru' stored procedure. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * All UNIX users * **************************************************************** * PROBLEM DESCRIPTION: * * When LANG and LC_* are not set in the environment from which * * IDS is started, IDS assumes a default locale of en_US.819. * * When a stored procedure is executed, these settings are * * inherited by programs or scripts invoked through the * * system() call. Under these circumstances, a stored procedure * * that directly or indirectly calls setlocale(LC_ALL, "") will * * fail whenever the en_US.819 locale is not installed. * **************************************************************** * RECOMMENDATION: * * Upgrade to IDS version 11.50.xC5 or above or explicitly set * * LC_ALL to LANG to their preferred locale before bringing up * * the engine. * **************************************************************** | |
Local Fix: | |
Set the $LANG variable in the IDS startup environment to a valid locale appropriate for the user's environment. These values can be obtained by 'locale -a' command. For example, for English locale they could be en_US.iso88591 or en_US.utf8. | |
Solution | |
The problem is first fixed in IDS 11.50.xC5 to change the default locale to en_US.iso8859-1. | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 01.06.2009 19.01.2010 19.01.2010 |
Problem solved at the following versions (IBM BugInfos) | |
11.50.xC5 | |
Problem solved according to the fixlist(s) of the following version(s) | |
11.50.xC5 |