@ -10,7 +10,7 @@
* Written by Peter Eisentraut < peter_e @ gmx . net > .
*
* IDENTIFICATION
* $ PostgreSQL : pgsql / src / backend / utils / misc / guc . c , v 1.490 2009 / 01 / 06 16 : 39 : 52 tgl Exp $
* $ PostgreSQL : pgsql / src / backend / utils / misc / guc . c , v 1.491 2009 / 01 / 07 22 : 40 : 49 tgl Exp $
*
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
*/
@ -311,6 +311,23 @@ static const struct config_enum_entry backslash_quote_options[] = {
{ NULL , 0 , false }
} ;
/*
* Although only " on " , " off " , and " partition " are documented , we
* accept all the likely variants of " on " and " off " .
*/
static const struct config_enum_entry constraint_exclusion_options [ ] = {
{ " partition " , CONSTRAINT_EXCLUSION_PARTITION , false } ,
{ " on " , CONSTRAINT_EXCLUSION_ON , false } ,
{ " off " , CONSTRAINT_EXCLUSION_OFF , false } ,
{ " true " , CONSTRAINT_EXCLUSION_ON , true } ,
{ " false " , CONSTRAINT_EXCLUSION_OFF , true } ,
{ " yes " , CONSTRAINT_EXCLUSION_ON , true } ,
{ " no " , CONSTRAINT_EXCLUSION_OFF , true } ,
{ " 1 " , CONSTRAINT_EXCLUSION_ON , true } ,
{ " 0 " , CONSTRAINT_EXCLUSION_OFF , true } ,
{ NULL , 0 , false }
} ;
/*
* Options for enum values stored in other modules
*/
@ -635,15 +652,6 @@ static struct config_bool ConfigureNamesBool[] =
& enable_hashjoin ,
true , NULL , NULL
} ,
{
{ " constraint_exclusion " , PGC_USERSET , QUERY_TUNING_OTHER ,
gettext_noop ( " Enables the planner to use constraints to optimize queries. " ) ,
gettext_noop ( " Child table scans will be skipped if their "
" constraints guarantee that no rows match the query. " )
} ,
& constraint_exclusion ,
false , NULL , NULL
} ,
{
{ " geqo " , PGC_USERSET , QUERY_TUNING_GEQO ,
gettext_noop ( " Enables genetic query optimization. " ) ,
@ -2521,6 +2529,17 @@ static struct config_enum ConfigureNamesEnum[] =
NOTICE , client_message_level_options , NULL , NULL
} ,
{
{ " constraint_exclusion " , PGC_USERSET , QUERY_TUNING_OTHER ,
gettext_noop ( " Enables the planner to use constraints to optimize queries. " ) ,
gettext_noop ( " Table scans will be skipped if their constraints "
" guarantee that no rows match the query. " )
} ,
& constraint_exclusion ,
CONSTRAINT_EXCLUSION_PARTITION , constraint_exclusion_options ,
NULL , NULL
} ,
{
{ " default_transaction_isolation " , PGC_USERSET , CLIENT_CONN_STATEMENT ,
gettext_noop ( " Sets the transaction isolation level of each new transaction. " ) ,