exit while locale not set in docker

This commit is contained in:
slguan 2020-05-01 09:46:13 +08:00
parent 59a397927f
commit e68a74332f
4 changed files with 13 additions and 14 deletions

View File

@ -43,6 +43,8 @@ extern int32_t tscEmbedded;
}
#define uPrint(...) \
{ taosPrintLog("UTL ", tscEmbedded ? 255 : uDebugFlag, __VA_ARGS__); }
#define uForcePrint(...) \
{ taosPrintLog("ERROR UTL ", 255, __VA_ARGS__); }
#define pError(...) \
{ taosPrintLog("ERROR APP ", 255, __VA_ARGS__); }

View File

@ -27,27 +27,20 @@
* In case that the setLocale failed to be executed, the right charset needs to be set.
*/
void tsSetLocale() {
char msgLocale[] = "Invalid locale:%s, please set the valid locale in config file\n";
char msgCharset[] = "Invalid charset:%s, please set the valid charset in config file\n";
char msgCharset1[] = "failed to get charset, please set the valid charset in config file\n";
char *locale = setlocale(LC_CTYPE, tsLocale);
// default locale or user specified locale is not valid, abort launch
if (locale == NULL) {
printf(msgLocale, tsLocale);
uPrint(msgLocale, tsLocale);
uForcePrint("Invalid locale:%s, please set the valid locale in config file", tsLocale);
}
if (strlen(tsCharset) == 0) {
printf("%s\n", msgCharset1);
uPrint(msgCharset1);
uForcePrint("failed to get charset, please set the valid charset in config file");
exit(-1);
}
if (!taosValidateEncodec(tsCharset)) {
printf(msgCharset, tsCharset);
uPrint(msgCharset, tsCharset);
uForcePrint("Invalid charset:%s, please set the valid charset in config file", tsCharset);
exit(-1);
}
}

View File

@ -225,10 +225,11 @@ static void taosGetSystemLocale() { // get and set default locale
if (cfg_locale && cfg_locale->cfgStatus < TAOS_CFG_CSTATUS_DEFAULT) {
locale = setlocale(LC_CTYPE, "");
if (locale == NULL) {
uError("can't get locale from system");
uForcePrint("can't get locale from system, set it to en_US.UTF-8");
strcpy(tsLocale, "en_US.UTF-8");
} else {
strncpy(tsLocale, locale, tListLen(tsLocale));
uPrint("locale not configured, set to system default:%s", tsLocale);
uForcePrint("locale not configured, set to system default:%s", tsLocale);
}
}
@ -243,7 +244,10 @@ static void taosGetSystemLocale() { // get and set default locale
strncpy(tsCharset, revisedCharset, tListLen(tsCharset));
free(revisedCharset);
uPrint("charset not configured, set to system default:%s", tsCharset);
uForcePrint("charset not configured, set to system default:%s", tsCharset);
} else {
strcpy(tsCharset, "UTF-8");
uForcePrint("can't get locale and charset from system, set it to UTF-8");
}
}
}

View File

@ -508,7 +508,7 @@ void httpAcceptHttpConnection(void *arg) {
pServer->serverPort);
return;
} else {
httpPrint("http service init success at ip:%s:%u", pServer->serverIp, pServer->serverPort);
httpPrint("http service init success at %u", pServer->serverPort);
pServer->online = true;
}