forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit06e10ab
committed
Fix problems with cached tuple descriptors disappearing while still in use
by creating a reference-count mechanism, similar to what we did a long timeago for catcache entries. The back branches have an ugly solution involvinglots of extra copies, but this way is more efficient. Reference counting isonly applied to tupdescs that are actually in caches --- there seems no needto use it for tupdescs that are generated in the executor, since they'll goaway during plan shutdown by virtue of being in the per-query memory context.Neil Conway and Tom Lane1 parentb49ce32 commit06e10ab
File tree
36 files changed
+581
-246
lines changed- src
- backend
- access
- common
- heap
- commands
- executor
- optimizer/util
- parser
- utils
- adt
- cache
- fmgr
- resowner
- include
- access
- executor
- utils
- pl
- plperl
- plpgsql/src
- plpython
- tcl
36 files changed
+581
-246
lines changedLines changed: 46 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
23 | 23 |
| |
24 | 24 |
| |
25 | 25 |
| |
| 26 | + | |
26 | 27 |
| |
27 | 28 |
| |
28 | 29 |
| |
| |||
84 | 85 |
| |
85 | 86 |
| |
86 | 87 |
| |
| 88 | + | |
87 | 89 |
| |
88 | 90 |
| |
89 | 91 |
| |
| |||
116 | 118 |
| |
117 | 119 |
| |
118 | 120 |
| |
| 121 | + | |
119 | 122 |
| |
120 | 123 |
| |
121 | 124 |
| |
| |||
214 | 217 |
| |
215 | 218 |
| |
216 | 219 |
| |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
217 | 226 |
| |
218 | 227 |
| |
219 | 228 |
| |
| |||
246 | 255 |
| |
247 | 256 |
| |
248 | 257 |
| |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
249 | 293 |
| |
250 | 294 |
| |
251 | 295 |
| |
252 | 296 |
| |
253 | 297 |
| |
254 | 298 |
| |
| 299 | + | |
255 | 300 |
| |
256 | 301 |
| |
257 | 302 |
| |
|
Lines changed: 5 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
892 | 892 |
| |
893 | 893 |
| |
894 | 894 |
| |
| 895 | + | |
| 896 | + | |
895 | 897 |
| |
| 898 | + | |
896 | 899 |
| |
897 | 900 |
| |
898 | 901 |
| |
| |||
929 | 932 |
| |
930 | 933 |
| |
931 | 934 |
| |
| 935 | + | |
932 | 936 |
| |
933 | 937 |
| |
934 | 938 |
| |
|
Lines changed: 4 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
2637 | 2637 |
| |
2638 | 2638 |
| |
2639 | 2639 |
| |
| 2640 | + | |
| 2641 | + | |
| 2642 | + | |
2640 | 2643 |
| |
2641 | 2644 |
| |
2642 | 2645 |
| |
|
Lines changed: 3 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
79 | 79 |
| |
80 | 80 |
| |
81 | 81 |
| |
82 |
| - | |
| 82 | + | |
83 | 83 |
| |
84 | 84 |
| |
85 | 85 |
| |
| |||
150 | 150 |
| |
151 | 151 |
| |
152 | 152 |
| |
153 |
| - | |
| 153 | + | |
154 | 154 |
| |
155 | 155 |
| |
156 | 156 |
| |
|
Lines changed: 3 additions & 7 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
26 | 26 |
| |
27 | 27 |
| |
28 | 28 |
| |
29 |
| - | |
| 29 | + | |
30 | 30 |
| |
31 | 31 |
| |
32 | 32 |
| |
| |||
1445 | 1445 |
| |
1446 | 1446 |
| |
1447 | 1447 |
| |
1448 |
| - | |
1449 |
| - | |
1450 |
| - | |
| 1448 | + | |
1451 | 1449 |
| |
1452 | 1450 |
| |
1453 | 1451 |
| |
| |||
1654 | 1652 |
| |
1655 | 1653 |
| |
1656 | 1654 |
| |
1657 |
| - | |
1658 |
| - | |
1659 |
| - | |
| 1655 | + | |
1660 | 1656 |
| |
1661 | 1657 |
| |
1662 | 1658 |
| |
|
0 commit comments
Comments
(0)