diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml index 057a45b856ac596a0e4050637ae3a3256e4c7fdb..1a26e9d7942065233f3a96990e14b7b1c424cf02 100644 --- a/doc/src/sgml/runtime.sgml +++ b/doc/src/sgml/runtime.sgml @@ -1,5 +1,5 @@ <!-- -$Header: /cvsroot/pgsql/doc/src/sgml/runtime.sgml,v 1.118 2002/06/15 19:58:53 momjian Exp $ +$Header: /cvsroot/pgsql/doc/src/sgml/runtime.sgml,v 1.119 2002/06/16 00:09:11 momjian Exp $ --> <Chapter Id="runtime"> @@ -759,34 +759,6 @@ env PGOPTIONS='-c geqo=off' psql </listitem> </varlistentry> - <varlistentry> - <term><varname>KSQO</varname> (<type>boolean</type>)</term> - <listitem> - <para> - The <firstterm>Key Set Query Optimizer</firstterm> - (<acronym>KSQO</acronym>) causes the query planner to convert - queries whose <literal>WHERE</> clause contains many OR'ed AND - clauses (such as <literal>WHERE (a=1 AND b=2) OR (a=2 AND b=3) - ...</literal>) into a union query. This method can be faster - than the default implementation, but it doesn't necessarily give - exactly the same results, since <literal>UNION</> implicitly - adds a <literal>SELECT DISTINCT</> clause to eliminate identical - output rows. <acronym>KSQO</acronym> is commonly used when - working with products like <productname>Microsoft - Access</productname>, which tend to generate queries of this - form. - </para> - - <para> - The <acronym>KSQO</acronym> algorithm used to be absolutely - essential for queries with many OR'ed AND clauses, but in - <productname>PostgreSQL</productname> 7.0 and later the standard - planner handles these queries fairly successfully; hence the - default is off. - </para> - </listitem> - </varlistentry> - <varlistentry> <term><varname>RANDOM_PAGE_COST</varname> (<type>floating point</type>)</term> <listitem> diff --git a/src/backend/optimizer/plan/planner.c b/src/backend/optimizer/plan/planner.c index 7e1c7ffdc00812743f619f948f4da06d28337f5e..f1668670369283c75a879ac6faffa09214512d9e 100644 --- a/src/backend/optimizer/plan/planner.c +++ b/src/backend/optimizer/plan/planner.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/optimizer/plan/planner.c,v 1.120 2002/06/13 15:10:25 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/optimizer/plan/planner.c,v 1.121 2002/06/16 00:09:11 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -145,11 +145,6 @@ subquery_planner(Query *parse, double tuple_fraction) PlannerQueryLevel++; PlannerInitPlan = NIL; -#ifdef ENABLE_KEY_SET_QUERY - /* this should go away sometime soon */ - transformKeySetQuery(parse); -#endif - /* * Check to see if any subqueries in the rangetable can be merged into * this query. diff --git a/src/backend/optimizer/prep/Makefile b/src/backend/optimizer/prep/Makefile index d78240666c681ba19c3fac5ae44a50f49c671ecb..60925de441f2c70c4767ae3d32f33dd59ba0ee3c 100644 --- a/src/backend/optimizer/prep/Makefile +++ b/src/backend/optimizer/prep/Makefile @@ -4,7 +4,7 @@ # Makefile for optimizer/prep # # IDENTIFICATION -# $Header: /cvsroot/pgsql/src/backend/optimizer/prep/Makefile,v 1.12 2000/08/31 16:10:13 petere Exp $ +# $Header: /cvsroot/pgsql/src/backend/optimizer/prep/Makefile,v 1.13 2002/06/16 00:09:11 momjian Exp $ # #------------------------------------------------------------------------- @@ -12,7 +12,7 @@ subdir = src/backend/optimizer/prep top_builddir = ../../../.. include $(top_builddir)/src/Makefile.global -OBJS = prepqual.o preptlist.o prepunion.o prepkeyset.o +OBJS = prepqual.o preptlist.o prepunion.o all: SUBSYS.o diff --git a/src/backend/optimizer/prep/prepkeyset.c b/src/backend/optimizer/prep/_deadcode/prepkeyset.c similarity index 98% rename from src/backend/optimizer/prep/prepkeyset.c rename to src/backend/optimizer/prep/_deadcode/prepkeyset.c index 76921d8e9ad009e4a34298e1c8dc26ba27ff87f1..b7f7ca169e880310145c82d4e9f7f00595942d9d 100644 --- a/src/backend/optimizer/prep/prepkeyset.c +++ b/src/backend/optimizer/prep/_deadcode/prepkeyset.c @@ -8,7 +8,9 @@ * *------------------------------------------------------------------------- */ - + +/* THIS FILE WAS USED FOR KSQO, WHICH IS DISABLED NOW. bjm 2002-06-15 */ + #include "postgres.h" #include "optimizer/planmain.h" diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c index 15c8f6f4806a6eb84b833265f05de25d9bf916c3..53503f4b413c708248010641376454ec0dcbfb23 100644 --- a/src/backend/utils/misc/guc.c +++ b/src/backend/utils/misc/guc.c @@ -5,7 +5,7 @@ * command, configuration file, and command line options. * See src/backend/utils/misc/README for more information. * - * $Header: /cvsroot/pgsql/src/backend/utils/misc/guc.c,v 1.69 2002/05/17 20:32:29 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/misc/guc.c,v 1.70 2002/06/16 00:09:12 momjian Exp $ * * Copyright 2000 by PostgreSQL Global Development Group * Written by Peter Eisentraut <peter_e@gmx.net>. @@ -312,11 +312,6 @@ static struct config_bool { "enable_hashjoin", PGC_USERSET }, &enable_hashjoin, true, NULL, NULL }, - - { - { "ksqo", PGC_USERSET }, &_use_keyset_query_optimizer, - false, NULL, NULL - }, { { "geqo", PGC_USERSET }, &enable_geqo, true, NULL, NULL diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample index c2a3c1e707754d037c793983bce57a04bb8b0bfb..00dced8d394ae3fa91bcb3eb52057df22197b09b 100644 --- a/src/backend/utils/misc/postgresql.conf.sample +++ b/src/backend/utils/misc/postgresql.conf.sample @@ -89,8 +89,6 @@ #enable_mergejoin = true #enable_hashjoin = true -#ksqo = false - #effective_cache_size = 1000 # default in 8k pages #random_page_cost = 4 #cpu_tuple_cost = 0.01 diff --git a/src/bin/psql/tab-complete.c b/src/bin/psql/tab-complete.c index 0d0909faa4980f5df65d5dba7f2cff8c651c73c7..521742ea1dd22fb4952802c99a8948963da0adaa 100644 --- a/src/bin/psql/tab-complete.c +++ b/src/bin/psql/tab-complete.c @@ -3,7 +3,7 @@ * * Copyright 2000 by PostgreSQL Global Development Group * - * $Header: /cvsroot/pgsql/src/bin/psql/tab-complete.c,v 1.49 2002/06/15 19:43:47 momjian Exp $ + * $Header: /cvsroot/pgsql/src/bin/psql/tab-complete.c,v 1.50 2002/06/16 00:09:12 momjian Exp $ */ /*---------------------------------------------------------------------- @@ -226,7 +226,6 @@ psql_completion(char *text, int start, int end) "enable_nestloop", "enable_mergejoin", "enable_hashjoin", - "ksqo", "geqo", "fsync", "server_min_messages", @@ -695,7 +694,7 @@ psql_completion(char *text, int start, int end) COMPLETE_WITH_LIST(my_list); } - else if (strcasecmp(prev2_wd, "GEQO") == 0 || strcasecmp(prev2_wd, "KSQO") == 0) + else if (strcasecmp(prev2_wd, "GEQO") == 0) { char *my_list[] = {"ON", "OFF", "DEFAULT", NULL}; diff --git a/src/include/optimizer/planmain.h b/src/include/optimizer/planmain.h index 29319a148561556331dd969dfc739d4e6808a435..4c6f9e3699dc914eb657836a01e701bc226ee793 100644 --- a/src/include/optimizer/planmain.h +++ b/src/include/optimizer/planmain.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: planmain.h,v 1.57 2002/05/18 02:25:50 tgl Exp $ + * $Id: planmain.h,v 1.58 2002/06/16 00:09:12 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -62,11 +62,4 @@ extern List *join_references(List *clauses, List *rtable, Index acceptable_rel); extern void fix_opids(Node *node); -/* - * prep/prepkeyset.c - */ -extern bool _use_keyset_query_optimizer; - -extern void transformKeySetQuery(Query *origNode); - #endif /* PLANMAIN_H */