[ https://issues.apache.org/jira/browse/IMPALA-532?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209717#comment-17209717 ]
Tim Armstrong commented on IMPALA-532: -------------------------------------- [~thundergun] looks like we could detect this by instantiating std::locale("") and catching the exception, then failing with a fatal error - that is what boost is doing here - https://github.com/boostorg/filesystem/blob/boost-1.61.0/src/path.cpp#L906. Here's a minimal c++ program that can reproduce the uncaught exception. {code} #include <locale> int main() { std::locale loc(""); return 0; } {code} {noformat} tarmstrong@tarmstrong-Precision-7540:~$ g++ locale.cc -o locale && LC_ALL="bad local" ./locale terminate called after throwing an instance of 'std::runtime_error' what(): locale::facet::_S_create_c_locale name not valid Aborted (core dumped) tarmstrong@tarmstrong-Precision-7540:~$ g++ locale.cc -o locale && LC_ALL="" ./locale OK {noformat} > Impala should tolerate bad locale settings. > ------------------------------------------- > > Key: IMPALA-532 > URL: https://issues.apache.org/jira/browse/IMPALA-532 > Project: IMPALA > Issue Type: Bug > Components: Backend > Affects Versions: Impala 1.1 > Reporter: Ishaan Joshi > Priority: Minor > > Currently, the Statestore does not tolerate a bad locale setting and crashes > while starting up. > {code} > USE_DEBUG_BUILD=false > + perl -pi -e > 's#{{CMF_CONF_DIR}}#/var/run/cloudera-scm-agent/process/2469-impala-STATESTORE#g' > > /var/run/cloudera-scm-agent/process/2469-impala-STATESTORE/impala-conf/state_store_flags > perl: warning: Setting locale failed. > perl: warning: Please check that your locale settings: > LANGUAGE = (unset), > LC_ALL = (unset), > LANG = "fr_FR.UTF-8" > are supported and installed on your system. > perl: warning: Falling back to the standard locale ("C"). > + '[' -f > /var/run/cloudera-scm-agent/process/2469-impala-STATESTORE/impala-conf/.htpasswd > ']' > + chmod 600 > /var/run/cloudera-scm-agent/process/2469-impala-STATESTORE/impala-conf/.htpasswd > + false > + export > IMPALA_BIN=/opt/cloudera/parcels/IMPALA-1.1-1.p0.8/lib/impala/sbin-retail > + IMPALA_BIN=/opt/cloudera/parcels/IMPALA-1.1-1.p0.8/lib/impala/sbin-retail > + '[' impalad = statestore ']' > + '[' statestore = statestore ']' > + exec > /opt/cloudera/parcels/IMPALA-1.1-1.p0.8/lib/impala/../../bin/statestored > --flagfile=/var/run/cloudera-scm-agent/process/2469-impala-STATESTORE/impala-conf/state_store_flags > terminate called after throwing an instance of 'std::runtime_error' > what(): locale::facet::_S_create_c_locale name not valid > {code} > It should fall back to the standard locale ("C"), if the user's locale is > messed up. -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-all-unsubscr...@impala.apache.org For additional commands, e-mail: issues-all-h...@impala.apache.org