forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commitc1ec02b
committed
Reuse BrinDesc and BrinRevmap in brininsert
The brininsert code used to initialize (and destroy) BrinDesc andBrinRevmap for each tuple, which is not free. This patch initializesthese structures only once, and reuses them for all inserts in the samecommand. The data is passed through indexInfo->ii_AmCache.This also introduces an optional AM callback "aminsertcleanup" thatallows performing custom cleanup in case simply pfree-ing ii_AmCache isnot sufficient (which is the case when the cache contains TupleDesc,Buffers, and so on).Author: Soumyadeep ChakrabortyReviewed-by: Alvaro Herrera, Matthias van de Meent, Tomas VondraDiscussion:https://postgr.es/m/CAE-ML%2B9r2%3DaO1wwji1sBN9gvPz2xRAtFUGfnffpd0ZqyuzjamA%40mail.gmail.com1 parent6ec8262 commitc1ec02b
File tree
13 files changed
+113
-12
lines changed- contrib/bloom
- doc/src/sgml
- src
- backend
- access
- brin
- gin
- gist
- hash
- index
- nbtree
- spgist
- executor
- include/access
13 files changed
+113
-12
lines changedLines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
131 | 131 |
| |
132 | 132 |
| |
133 | 133 |
| |
| 134 | + | |
134 | 135 |
| |
135 | 136 |
| |
136 | 137 |
| |
|
Lines changed: 16 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
139 | 139 |
| |
140 | 140 |
| |
141 | 141 |
| |
| 142 | + | |
142 | 143 |
| |
143 | 144 |
| |
144 | 145 |
| |
| |||
359 | 360 |
| |
360 | 361 |
| |
361 | 362 |
| |
362 |
| - | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
363 | 378 |
| |
364 | 379 |
| |
365 | 380 |
| |
|
Lines changed: 64 additions & 11 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
58 | 58 |
| |
59 | 59 |
| |
60 | 60 |
| |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
61 | 72 |
| |
62 | 73 |
| |
63 | 74 |
| |
| |||
72 | 83 |
| |
73 | 84 |
| |
74 | 85 |
| |
| 86 | + | |
75 | 87 |
| |
76 | 88 |
| |
77 | 89 |
| |
| |||
117 | 129 |
| |
118 | 130 |
| |
119 | 131 |
| |
| 132 | + | |
120 | 133 |
| |
121 | 134 |
| |
122 | 135 |
| |
| |||
140 | 153 |
| |
141 | 154 |
| |
142 | 155 |
| |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
143 | 177 |
| |
144 | 178 |
| |
145 | 179 |
| |
| |||
162 | 196 |
| |
163 | 197 |
| |
164 | 198 |
| |
165 |
| - | |
| 199 | + | |
166 | 200 |
| |
| 201 | + | |
167 | 202 |
| |
168 | 203 |
| |
169 | 204 |
| |
170 | 205 |
| |
171 | 206 |
| |
172 |
| - | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
173 | 217 |
| |
174 | 218 |
| |
175 | 219 |
| |
| |||
228 | 272 |
| |
229 | 273 |
| |
230 | 274 |
| |
231 |
| - | |
232 |
| - | |
233 |
| - | |
234 |
| - | |
235 |
| - | |
236 |
| - | |
237 |
| - | |
238 |
| - | |
239 | 275 |
| |
240 | 276 |
| |
241 | 277 |
| |
| |||
306 | 342 |
| |
307 | 343 |
| |
308 | 344 |
| |
309 |
| - | |
310 | 345 |
| |
311 | 346 |
| |
312 | 347 |
| |
| |||
316 | 351 |
| |
317 | 352 |
| |
318 | 353 |
| |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
319 | 372 |
| |
320 | 373 |
| |
321 | 374 |
| |
|
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
64 | 64 |
| |
65 | 65 |
| |
66 | 66 |
| |
| 67 | + | |
67 | 68 |
| |
68 | 69 |
| |
69 | 70 |
| |
|
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
86 | 86 |
| |
87 | 87 |
| |
88 | 88 |
| |
| 89 | + | |
89 | 90 |
| |
90 | 91 |
| |
91 | 92 |
| |
|
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
83 | 83 |
| |
84 | 84 |
| |
85 | 85 |
| |
| 86 | + | |
86 | 87 |
| |
87 | 88 |
| |
88 | 89 |
| |
|
Lines changed: 15 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
196 | 196 |
| |
197 | 197 |
| |
198 | 198 |
| |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
199 | 214 |
| |
200 | 215 |
| |
201 | 216 |
| |
|
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
122 | 122 |
| |
123 | 123 |
| |
124 | 124 |
| |
| 125 | + | |
125 | 126 |
| |
126 | 127 |
| |
127 | 128 |
| |
|
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
70 | 70 |
| |
71 | 71 |
| |
72 | 72 |
| |
| 73 | + | |
73 | 74 |
| |
74 | 75 |
| |
75 | 76 |
| |
|
Lines changed: 5 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
233 | 233 |
| |
234 | 234 |
| |
235 | 235 |
| |
| 236 | + | |
236 | 237 |
| |
237 | 238 |
| |
238 | 239 |
| |
| 240 | + | |
239 | 241 |
| |
240 | 242 |
| |
241 | 243 |
| |
242 | 244 |
| |
243 | 245 |
| |
244 | 246 |
| |
| 247 | + | |
| 248 | + | |
| 249 | + | |
245 | 250 |
| |
246 | 251 |
| |
247 | 252 |
| |
|
Lines changed: 4 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
113 | 113 |
| |
114 | 114 |
| |
115 | 115 |
| |
| 116 | + | |
| 117 | + | |
| 118 | + | |
116 | 119 |
| |
117 | 120 |
| |
118 | 121 |
| |
| |||
261 | 264 |
| |
262 | 265 |
| |
263 | 266 |
| |
| 267 | + | |
264 | 268 |
| |
265 | 269 |
| |
266 | 270 |
| |
|
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
96 | 96 |
| |
97 | 97 |
| |
98 | 98 |
| |
| 99 | + | |
99 | 100 |
| |
100 | 101 |
| |
101 | 102 |
| |
|
Lines changed: 2 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
148 | 148 |
| |
149 | 149 |
| |
150 | 150 |
| |
| 151 | + | |
| 152 | + | |
151 | 153 |
| |
152 | 154 |
| |
153 | 155 |
| |
|
0 commit comments
Comments
(0)