- 03 5月, 2003 1 次提交
-
-
由 Tom Lane 提交于
Both plannable queries and utility commands are now always executed within Portals, which have been revamped so that they can handle the load (they used to be good only for single SELECT queries). Restructure code to push command-completion-tag selection logic out of postgres.c, so that it won't have to be duplicated between simple and extended queries. initdb forced due to addition of a field to Query nodes.
-
- 21 1月, 2003 1 次提交
-
-
由 Tom Lane 提交于
There are two implementation techniques: the executor understands a new JOIN_IN jointype, which emits at most one matching row per left-hand row, or the result of the IN's sub-select can be fed through a DISTINCT filter and then joined as an ordinary relation. Along the way, some minor code cleanup in the optimizer; notably, break out most of the jointree-rearrangement preprocessing in planner.c and put it in a new file prep/prepjointree.c.
-
- 17 12月, 2002 1 次提交
-
-
由 Tom Lane 提交于
allocation in best_inner_indexscan(). While at it, simplify GEQO's interface to the main planner --- make_join_rel() offers exactly the API it really wants, whereas calling make_rels_by_clause_joins() and make_rels_by_clauseless_joins() required jumping through hoops. Rewrite gimme_tree for clarity (sometimes iteration is much better than recursion), and approximately halve GEQO's runtime by recognizing that tours of the forms (a,b,c,d,...) and (b,a,c,d,...) are equivalent because of symmetry in make_join_rel().
-
- 21 6月, 2002 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 22 3月, 2001 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 25 1月, 2001 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 18 1月, 2001 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 20 9月, 2000 1 次提交
-
-
由 Tom Lane 提交于
query representation. Note that GEQO_RELS setting is now interpreted as the number of top-level items in the FROM list, not necessarily the number of relations in the query. This seems appropriate since we are only doing join-path searching over the top-level items.
-
- 13 9月, 2000 1 次提交
-
-
由 Tom Lane 提交于
ends to clean up (see my message of same date to pghackers), but mostly it works. INITDB REQUIRED!
-
- 28 7月, 2000 1 次提交
-
-
由 Tom Lane 提交于
-
- 13 7月, 2000 1 次提交
-
-
由 Peter Eisentraut 提交于
* the result is not recorded anywhere * the result is not used anywhere * the result is only used in some places, whereas others have been getting away with it * the result is used improperly Also make command line options handling a little better (e.g., --disable-locale, while redundant, should really still *dis*able).
-
- 28 6月, 2000 1 次提交
-
-
由 Tom Lane 提交于
for details). It doesn't really do that much yet, since there are no short-term memory contexts in the executor, but the infrastructure is in place and long-term contexts are handled reasonably. A few long- standing bugs have been fixed, such as 'VACUUM; anything' in a single query string crashing. Also, out-of-memory is now considered a recoverable ERROR, not FATAL. Eliminate a large amount of crufty, now-dead code in and around memory management. Fix problem with holding off SIGTRAP, SIGSEGV, etc in postmaster and backend startup.
-
- 30 5月, 2000 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 13 4月, 2000 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 16 2月, 2000 1 次提交
-
-
由 Tom Lane 提交于
accesses versus sequential accesses, a (very crude) estimate of the effects of caching on random page accesses, and cost to evaluate WHERE- clause expressions. Export critical parameters for this model as SET variables. Also, create SET variables for the planner's enable flags (enable_seqscan, enable_indexscan, etc) so that these can be controlled more conveniently than via PGOPTIONS. Planner now estimates both startup cost (cost before retrieving first tuple) and total cost of each path, so it can optimize queries with LIMIT on a reasonable basis by interpolating between these costs. Same facility is a win for EXISTS(...) subqueries and some other cases. Redesign pathkey representation to achieve a major speedup in planning (I saw as much as 5X on a 10-way join); also minor changes in planner to reduce memory consumption by recycling discarded Path nodes and not constructing unnecessary lists. Minor cleanups to display more-plausible costs in some cases in EXPLAIN output. Initdb forced by change in interface to index cost estimation functions.
-
- 07 2月, 2000 1 次提交
-
-
由 Tom Lane 提交于
fields in JoinPaths --- turns out that we do need that after all :-(. Also, rearrange planner so that only one RelOptInfo is created for a particular set of joined base relations, no matter how many different subsets of relations it can be created from. This saves memory and processing time compared to the old method of making a bunch of RelOptInfos and then removing the duplicates. Clean up the jointree iteration logic; not sure if it's better, but I sure find it more readable and plausible now, particularly for the case of 'bushy plans'.
-
- 26 1月, 2000 1 次提交
-
-
由 Bruce Momjian 提交于
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc to all files copyright Regents of Berkeley. Man, that's a lot of files.
-
- 09 1月, 2000 1 次提交
-
-
由 Tom Lane 提交于
code cleanup; no major improvements yet. However, EXPLAIN does produce more intuitive outputs for nested loops with indexscans now...
-
- 22 9月, 1999 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 16 8月, 1999 1 次提交
-
-
由 Tom Lane 提交于
store all ordering information in pathkeys lists (which are now lists of lists of PathKeyItem nodes, not just lists of lists of vars). This was a big win --- the code is smaller and IMHO more understandable than it was, even though it handles more cases. I believe the node changes will not force an initdb for anyone; planner nodes don't show up in stored rules.
-
- 16 7月, 1999 2 次提交
-
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
- 15 7月, 1999 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 26 5月, 1999 2 次提交
-
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
- 17 5月, 1999 2 次提交
- 18 2月, 1999 2 次提交
-
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
- 16 2月, 1999 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 15 2月, 1999 2 次提交
-
-
由 Bruce Momjian 提交于
-
由 Tom Lane 提交于
-
- 14 2月, 1999 2 次提交
-
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
- 12 2月, 1999 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 11 2月, 1999 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 04 2月, 1999 2 次提交
-
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
- 01 9月, 1998 2 次提交
-
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-