mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-01-06 10:46:21 +08:00
refuse illegal values for "threads" (ITS#4433)
This commit is contained in:
parent
8c9f071238
commit
324431062b
@ -893,7 +893,7 @@ The default is 4194303.
|
||||
.TP
|
||||
.B threads <integer>
|
||||
Specify the maximum size of the primary thread pool.
|
||||
The default is 16.
|
||||
The default is 16; the minimum value is 2.
|
||||
.TP
|
||||
.B timelimit {<integer>|unlimited}
|
||||
.TP
|
||||
|
@ -510,8 +510,13 @@ static ConfigTable config_back_cf_table[] = {
|
||||
{ "syncrepl", NULL, 0, 0, 0, ARG_DB|ARG_MAGIC,
|
||||
&syncrepl_config, "( OLcfgDbAt:0.11 NAME 'olcSyncrepl' "
|
||||
"SYNTAX OMsDirectoryString SINGLE-VALUE )", NULL, NULL },
|
||||
{ "threads", "count", 2, 2, 0, ARG_INT|ARG_MAGIC|CFG_THREADS,
|
||||
&config_generic, "( OLcfgGlAt:66 NAME 'olcThreads' "
|
||||
{ "threads", "count", 2, 2, 0,
|
||||
#ifdef NO_THREADS
|
||||
ARG_IGNORED, NULL,
|
||||
#else
|
||||
ARG_INT|ARG_MAGIC|CFG_THREADS, &config_generic,
|
||||
#endif
|
||||
"( OLcfgGlAt:66 NAME 'olcThreads' "
|
||||
"SYNTAX OMsInteger SINGLE-VALUE )", NULL, NULL },
|
||||
{ "timelimit", "limit", 2, 0, 0, ARG_MAY_DB|ARG_MAGIC,
|
||||
&config_timelimit, "( OLcfgGlAt:67 NAME 'olcTimeLimit' "
|
||||
@ -1111,7 +1116,15 @@ config_generic(ConfigArgs *c) {
|
||||
break;
|
||||
|
||||
case CFG_THREADS:
|
||||
if ( c->value_int > 2 * SLAP_MAX_WORKER_THREADS ) {
|
||||
if ( c->value_int < 2 ) {
|
||||
snprintf( c->msg, sizeof( c->msg ),
|
||||
"threads=%d smaller than minimum value 2",
|
||||
c->value_int );
|
||||
Debug(LDAP_DEBUG_ANY, "%s: %s.\n",
|
||||
c->log, c->msg, 0 );
|
||||
return 1;
|
||||
|
||||
} else if ( c->value_int > 2 * SLAP_MAX_WORKER_THREADS ) {
|
||||
snprintf( c->msg, sizeof( c->msg ),
|
||||
"warning, threads=%d larger than twice the default (2*%d=%d); YMMV",
|
||||
c->value_int, SLAP_MAX_WORKER_THREADS, 2 * SLAP_MAX_WORKER_THREADS );
|
||||
|
Loading…
Reference in New Issue
Block a user