forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commitbfbcad4
committed
tableam: bitmap table scan.
This moves bitmap heap scan support to below an optional tableamcallback. It's optional as the whole concept of bitmap heapscans isfairly block specific.This basically moves the work previously done in bitgetpage() into thenew scan_bitmap_next_block callback, and the direct poking into thebuffer done in BitmapHeapNext() into the new scan_bitmap_next_tuple()callback.The abstraction is currently somewhat leaky becausenodeBitmapHeapscan.c's prefetching and visibilitymap based logicremains - it's likely that we'll later have to move more into theAM. But it's not trivial to do so without introducing a significantamount of code duplication between the AMs, so that's a project forlater.Note that now nodeBitmapHeapscan.c and the associated node types are abit misnamed. But it's not clear whether renaming wouldn't be a cureworse than the disease. Either way, that'd be best done in a separatecommit.Author: Andres FreundReviewed-By: Robert Haas (in an older version)Discussion:https://postgr.es/m/20180703070645.wchpu5muyto5n647@alap3.anarazel.de1 parent73c954d commitbfbcad4
File tree
7 files changed
+293
-187
lines changed- src
- backend
- access
- heap
- table
- executor
- optimizer/util
- include
- access
- nodes
7 files changed
+293
-187
lines changedLines changed: 155 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1952 | 1952 |
| |
1953 | 1953 |
| |
1954 | 1954 |
| |
| 1955 | + | |
| 1956 | + | |
| 1957 | + | |
| 1958 | + | |
| 1959 | + | |
| 1960 | + | |
| 1961 | + | |
| 1962 | + | |
| 1963 | + | |
| 1964 | + | |
| 1965 | + | |
| 1966 | + | |
| 1967 | + | |
| 1968 | + | |
| 1969 | + | |
| 1970 | + | |
| 1971 | + | |
| 1972 | + | |
| 1973 | + | |
| 1974 | + | |
| 1975 | + | |
| 1976 | + | |
| 1977 | + | |
| 1978 | + | |
| 1979 | + | |
| 1980 | + | |
| 1981 | + | |
| 1982 | + | |
| 1983 | + | |
| 1984 | + | |
| 1985 | + | |
| 1986 | + | |
| 1987 | + | |
| 1988 | + | |
| 1989 | + | |
| 1990 | + | |
| 1991 | + | |
| 1992 | + | |
| 1993 | + | |
| 1994 | + | |
| 1995 | + | |
| 1996 | + | |
| 1997 | + | |
| 1998 | + | |
| 1999 | + | |
| 2000 | + | |
| 2001 | + | |
| 2002 | + | |
| 2003 | + | |
| 2004 | + | |
| 2005 | + | |
| 2006 | + | |
| 2007 | + | |
| 2008 | + | |
| 2009 | + | |
| 2010 | + | |
| 2011 | + | |
| 2012 | + | |
| 2013 | + | |
| 2014 | + | |
| 2015 | + | |
| 2016 | + | |
| 2017 | + | |
| 2018 | + | |
| 2019 | + | |
| 2020 | + | |
| 2021 | + | |
| 2022 | + | |
| 2023 | + | |
| 2024 | + | |
| 2025 | + | |
| 2026 | + | |
| 2027 | + | |
| 2028 | + | |
| 2029 | + | |
| 2030 | + | |
| 2031 | + | |
| 2032 | + | |
| 2033 | + | |
| 2034 | + | |
| 2035 | + | |
| 2036 | + | |
| 2037 | + | |
| 2038 | + | |
| 2039 | + | |
| 2040 | + | |
| 2041 | + | |
| 2042 | + | |
| 2043 | + | |
| 2044 | + | |
| 2045 | + | |
| 2046 | + | |
| 2047 | + | |
| 2048 | + | |
| 2049 | + | |
| 2050 | + | |
| 2051 | + | |
| 2052 | + | |
| 2053 | + | |
| 2054 | + | |
| 2055 | + | |
| 2056 | + | |
| 2057 | + | |
| 2058 | + | |
| 2059 | + | |
| 2060 | + | |
| 2061 | + | |
| 2062 | + | |
| 2063 | + | |
| 2064 | + | |
| 2065 | + | |
| 2066 | + | |
| 2067 | + | |
| 2068 | + | |
| 2069 | + | |
| 2070 | + | |
| 2071 | + | |
| 2072 | + | |
| 2073 | + | |
| 2074 | + | |
| 2075 | + | |
| 2076 | + | |
| 2077 | + | |
| 2078 | + | |
| 2079 | + | |
| 2080 | + | |
| 2081 | + | |
| 2082 | + | |
| 2083 | + | |
| 2084 | + | |
| 2085 | + | |
| 2086 | + | |
| 2087 | + | |
| 2088 | + | |
| 2089 | + | |
| 2090 | + | |
| 2091 | + | |
| 2092 | + | |
| 2093 | + | |
| 2094 | + | |
| 2095 | + | |
| 2096 | + | |
| 2097 | + | |
| 2098 | + | |
| 2099 | + | |
| 2100 | + | |
| 2101 | + | |
| 2102 | + | |
| 2103 | + | |
| 2104 | + | |
| 2105 | + | |
| 2106 | + | |
| 2107 | + | |
1955 | 2108 |
| |
1956 | 2109 |
| |
1957 | 2110 |
| |
| |||
2266 | 2419 |
| |
2267 | 2420 |
| |
2268 | 2421 |
| |
| 2422 | + | |
| 2423 | + | |
2269 | 2424 |
| |
2270 | 2425 |
| |
2271 | 2426 |
| |
|
Lines changed: 3 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
89 | 89 |
| |
90 | 90 |
| |
91 | 91 |
| |
| 92 | + | |
| 93 | + | |
| 94 | + | |
92 | 95 |
| |
93 | 96 |
| |
94 | 97 |
| |
|
0 commit comments
Comments
(0)