- Notifications
You must be signed in to change notification settings - Fork5
Commit295e639
committed
Implement lazy XID allocation: transactions that do not modify any database
rows will normally never obtain an XID at all. We already did things this wayfor subtransactions, but this patch extends the concept to top-leveltransactions. In applications where there are lots of short read-onlytransactions, this should improve performance noticeably; not so much fromremoval of the actual XID-assignments, as from reduction of overhead that'sdriven by the rate of XID consumption. We add a concept of a "virtualtransaction ID" so that active transactions can be uniquely identified evenif they don't have a regular XID. This is a much lighter-weight concept:uniqueness of VXIDs is only guaranteed over the short term, and no on-diskrecord is made about them.Florian Pflug, with some editorialization by Tom.1 parent2e74c53 commit295e639
File tree
34 files changed
+987
-739
lines changed- doc/src/sgml
- src
- backend
- access
- heap
- transam
- catalog
- commands
- storage
- ipc
- lmgr
- smgr
- utils
- adt
- error
- misc
- include
- access
- catalog
- storage
- test/regress/expected
34 files changed
+987
-739
lines changedLines changed: 25 additions & 12 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1 |
| - | |
| 1 | + | |
2 | 2 |
| |
3 | 3 |
| |
4 | 4 |
| |
| |||
5147 | 5147 |
| |
5148 | 5148 |
| |
5149 | 5149 |
| |
5150 |
| - | |
| 5150 | + | |
5151 | 5151 |
| |
5152 | 5152 |
| |
5153 | 5153 |
| |
| |||
5178 | 5178 |
| |
5179 | 5179 |
| |
5180 | 5180 |
| |
| 5181 | + | |
5181 | 5182 |
| |
5182 | 5183 |
| |
5183 | 5184 |
| |
| |||
5219 | 5220 |
| |
5220 | 5221 |
| |
5221 | 5222 |
| |
| 5223 | + | |
| 5224 | + | |
| 5225 | + | |
| 5226 | + | |
| 5227 | + | |
| 5228 | + | |
| 5229 | + | |
| 5230 | + | |
| 5231 | + | |
5222 | 5232 |
| |
5223 | 5233 |
| |
5224 | 5234 |
| |
| |||
5257 | 5267 |
| |
5258 | 5268 |
| |
5259 | 5269 |
| |
5260 |
| - | |
5261 |
| - | |
| 5270 | + | |
| 5271 | + | |
5262 | 5272 |
| |
5263 | 5273 |
| |
5264 |
| - | |
| 5274 | + | |
5265 | 5275 |
| |
5266 | 5276 |
| |
5267 | 5277 |
| |
| |||
5301 | 5311 |
| |
5302 | 5312 |
| |
5303 | 5313 |
| |
5304 |
| - | |
5305 |
| - | |
| 5314 | + | |
| 5315 | + | |
| 5316 | + | |
| 5317 | + | |
| 5318 | + | |
5306 | 5319 |
| |
5307 |
| - | |
| 5320 | + | |
| 5321 | + | |
5308 | 5322 |
| |
5309 | 5323 |
| |
5310 | 5324 |
| |
| |||
5314 | 5328 |
| |
5315 | 5329 |
| |
5316 | 5330 |
| |
5317 |
| - | |
| 5331 | + | |
5318 | 5332 |
| |
5319 | 5333 |
| |
5320 | 5334 |
| |
| |||
5350 | 5364 |
| |
5351 | 5365 |
| |
5352 | 5366 |
| |
5353 |
| - | |
5354 |
| - | |
| 5367 | + | |
5355 | 5368 |
| |
5356 | 5369 |
| |
5357 |
| - | |
| 5370 | + | |
5358 | 5371 |
| |
5359 | 5372 |
| |
5360 | 5373 |
| |
|
Lines changed: 8 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1 |
| - | |
| 1 | + | |
2 | 2 |
| |
3 | 3 |
| |
4 | 4 |
| |
| |||
2939 | 2939 |
| |
2940 | 2940 |
| |
2941 | 2941 |
| |
| 2942 | + | |
| 2943 | + | |
| 2944 | + | |
| 2945 | + | |
| 2946 | + | |
2942 | 2947 |
| |
2943 | 2948 |
| |
2944 |
| - | |
2945 |
| - | |
| 2949 | + | |
| 2950 | + | |
2946 | 2951 |
| |
2947 | 2952 |
| |
2948 | 2953 |
| |
|
Lines changed: 2 additions & 22 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 |
| |
| |||
1632 | 1632 |
| |
1633 | 1633 |
| |
1634 | 1634 |
| |
1635 |
| - | |
1636 |
| - | |
1637 |
| - | |
1638 |
| - | |
1639 |
| - | |
1640 |
| - | |
| 1635 | + | |
1641 | 1636 |
| |
1642 | 1637 |
| |
1643 | 1638 |
| |
| |||
1947 | 1942 |
| |
1948 | 1943 |
| |
1949 | 1944 |
| |
1950 |
| - | |
1951 |
| - | |
1952 |
| - | |
1953 |
| - | |
1954 |
| - | |
1955 | 1945 |
| |
1956 | 1946 |
| |
1957 | 1947 |
| |
| |||
2403 | 2393 |
| |
2404 | 2394 |
| |
2405 | 2395 |
| |
2406 |
| - | |
2407 |
| - | |
2408 |
| - | |
2409 |
| - | |
2410 |
| - | |
2411 | 2396 |
| |
2412 | 2397 |
| |
2413 | 2398 |
| |
| |||
2924 | 2909 |
| |
2925 | 2910 |
| |
2926 | 2911 |
| |
2927 |
| - | |
2928 |
| - | |
2929 |
| - | |
2930 |
| - | |
2931 |
| - | |
2932 | 2912 |
| |
2933 | 2913 |
| |
2934 | 2914 |
| |
|
Lines changed: 25 additions & 11 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1 |
| - | |
| 1 | + | |
2 | 2 |
| |
3 | 3 |
| |
4 | 4 |
| |
| |||
187 | 187 |
| |
188 | 188 |
| |
189 | 189 |
| |
190 |
| - | |
191 |
| - | |
| 190 | + | |
| 191 | + | |
192 | 192 |
| |
193 |
| - | |
194 |
| - | |
195 |
| - | |
196 |
| - | |
197 |
| - | |
198 |
| - | |
199 |
| - | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
200 | 213 |
| |
201 | 214 |
| |
202 | 215 |
| |
203 | 216 |
| |
204 | 217 |
| |
205 | 218 |
| |
206 | 219 |
| |
207 |
| - | |
| 220 | + | |
| 221 | + | |
208 | 222 |
| |
209 | 223 |
| |
210 | 224 |
| |
|
Lines changed: 3 additions & 10 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 |
| |
| |||
423 | 423 |
| |
424 | 424 |
| |
425 | 425 |
| |
426 |
| - | |
427 |
| - | |
428 |
| - | |
429 |
| - | |
430 | 426 |
| |
431 | 427 |
| |
432 | 428 |
| |
| |||
437 | 433 |
| |
438 | 434 |
| |
439 | 435 |
| |
440 |
| - | |
| 436 | + | |
441 | 437 |
| |
442 | 438 |
| |
443 | 439 |
| |
444 | 440 |
| |
445 | 441 |
| |
446 | 442 |
| |
447 | 443 |
| |
448 |
| - | |
449 |
| - | |
450 |
| - | |
451 | 444 |
| |
452 | 445 |
| |
453 | 446 |
| |
| |||
459 | 452 |
| |
460 | 453 |
| |
461 | 454 |
| |
462 |
| - | |
| 455 | + | |
463 | 456 |
| |
464 | 457 |
| |
465 | 458 |
| |
|
Lines changed: 2 additions & 5 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
42 | 42 |
| |
43 | 43 |
| |
44 | 44 |
| |
45 |
| - | |
| 45 | + | |
46 | 46 |
| |
47 | 47 |
| |
48 | 48 |
| |
| |||
1842 | 1842 |
| |
1843 | 1843 |
| |
1844 | 1844 |
| |
1845 |
| - | |
1846 |
| - | |
1847 |
| - | |
1848 | 1845 |
| |
1849 | 1846 |
| |
1850 | 1847 |
| |
| |||
1855 | 1852 |
| |
1856 | 1853 |
| |
1857 | 1854 |
| |
1858 |
| - | |
| 1855 | + | |
1859 | 1856 |
| |
1860 | 1857 |
| |
1861 | 1858 |
| |
|
Lines changed: 7 additions & 9 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
7 | 7 |
| |
8 | 8 |
| |
9 | 9 |
| |
10 |
| - | |
| 10 | + | |
11 | 11 |
| |
12 | 12 |
| |
13 | 13 |
| |
| |||
274 | 274 |
| |
275 | 275 |
| |
276 | 276 |
| |
| 277 | + | |
277 | 278 |
| |
278 | 279 |
| |
279 | 280 |
| |
| 281 | + | |
280 | 282 |
| |
281 | 283 |
| |
282 | 284 |
| |
| |||
813 | 815 |
| |
814 | 816 |
| |
815 | 817 |
| |
816 |
| - | |
817 |
| - | |
| 818 | + | |
| 819 | + | |
818 | 820 |
| |
819 | 821 |
| |
820 | 822 |
| |
| |||
1702 | 1704 |
| |
1703 | 1705 |
| |
1704 | 1706 |
| |
1705 |
| - | |
1706 |
| - | |
1707 |
| - | |
| 1707 | + | |
1708 | 1708 |
| |
1709 | 1709 |
| |
1710 | 1710 |
| |
| |||
1784 | 1784 |
| |
1785 | 1785 |
| |
1786 | 1786 |
| |
1787 |
| - | |
1788 |
| - | |
1789 |
| - | |
| 1787 | + | |
1790 | 1788 |
| |
1791 | 1789 |
| |
1792 | 1790 |
| |
|
0 commit comments
Comments
(0)