- Notifications
You must be signed in to change notification settings - Fork5
Commitb1577a7
committed
New cost model for planning, incorporating a penalty for random page
accesses versus sequential accesses, a (very crude) estimate of theeffects of caching on random page accesses, and cost to evaluate WHERE-clause expressions. Export critical parameters for this model as SETvariables. Also, create SET variables for the planner's enable flags(enable_seqscan, enable_indexscan, etc) so that these can be controlledmore conveniently than via PGOPTIONS.Planner now estimates both startup cost (cost before retrievingfirst tuple) and total cost of each path, so it can optimize querieswith 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 plannerto reduce memory consumption by recycling discarded Path nodes andnot constructing unnecessary lists.Minor cleanups to display more-plausible costs in some cases inEXPLAIN output.Initdb forced by change in interface to index cost estimationfunctions.1 parent553b5da commitb1577a7
File tree
50 files changed
+3196
-1719
lines changed- doc/src/sgml
- ref
- src
- backend
- commands
- nodes
- optimizer
- geqo
- path
- plan
- prep
- util
- utils/adt
- bin/psql
- include
- catalog
- nodes
- optimizer
- utils
- interfaces/libpq
- test/regress
- expected
- sql
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
50 files changed
+3196
-1719
lines changedLines changed: 0 additions & 18 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
164 | 164 |
| |
165 | 165 |
| |
166 | 166 |
| |
167 |
| - | |
168 |
| - | |
169 |
| - | |
170 |
| - | |
171 |
| - | |
172 |
| - | |
173 |
| - | |
174 |
| - | |
175 |
| - | |
176 |
| - | |
177 |
| - | |
178 |
| - | |
179 |
| - | |
180 |
| - | |
181 |
| - | |
182 |
| - | |
183 |
| - | |
184 |
| - | |
185 | 167 |
| |
186 | 168 |
| |
187 | 169 |
| |
|
Lines changed: 0 additions & 18 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1900 | 1900 |
| |
1901 | 1901 |
| |
1902 | 1902 |
| |
1903 |
| - | |
1904 |
| - | |
1905 |
| - | |
1906 |
| - | |
1907 |
| - | |
1908 |
| - | |
1909 |
| - | |
1910 |
| - | |
1911 |
| - | |
1912 |
| - | |
1913 |
| - | |
1914 |
| - | |
1915 |
| - | |
1916 |
| - | |
1917 |
| - | |
1918 |
| - | |
1919 |
| - | |
1920 |
| - | |
1921 | 1903 |
| |
1922 | 1904 |
| |
1923 | 1905 |
| |
|
0 commit comments
Comments
(0)