forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commiteeb6f37
committed
Add a small cache of locks owned by a resource owner in ResourceOwner.
This speeds up reassigning locks to the parent owner, when the transactionholds a lot of locks, but only a few of them belong to the current resourceowner. This is particularly helps pg_dump when dumping a large number ofobjects.The cache can hold up to 15 locks in each resource owner. After that, thecache is marked as overflowed, and we fall back to the old method ofscanning the whole local lock table. The tradeoff here is that the cache hasto be scanned whenever a lock is released, so if the cache is too large,lock release becomes more expensive. 15 seems enough to cover pg_dump, anddoesn't have much impact on lock release.Jeff Janes, reviewed by Amit Kapila and Heikki Linnakangas.1 parentdfd9c11 commiteeb6f37
File tree
4 files changed
+205
-53
lines changed- src
- backend
- storage/lmgr
- utils/resowner
- include
- storage
- utils
4 files changed
+205
-53
lines changedLines changed: 105 additions & 49 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
345 | 345 |
| |
346 | 346 |
| |
347 | 347 |
| |
| 348 | + | |
348 | 349 |
| |
349 | 350 |
| |
350 | 351 |
| |
| |||
1098 | 1099 |
| |
1099 | 1100 |
| |
1100 | 1101 |
| |
| 1102 | + | |
| 1103 | + | |
| 1104 | + | |
| 1105 | + | |
| 1106 | + | |
| 1107 | + | |
| 1108 | + | |
1101 | 1109 |
| |
1102 | 1110 |
| |
| 1111 | + | |
1103 | 1112 |
| |
1104 | 1113 |
| |
1105 | 1114 |
| |
| |||
1112 | 1121 |
| |
1113 | 1122 |
| |
1114 | 1123 |
| |
| 1124 | + | |
1115 | 1125 |
| |
1116 | 1126 |
| |
1117 | 1127 |
| |
| |||
1355 | 1365 |
| |
1356 | 1366 |
| |
1357 | 1367 |
| |
| 1368 | + | |
| 1369 | + | |
1358 | 1370 |
| |
1359 | 1371 |
| |
1360 | 1372 |
| |
| |||
1670 | 1682 |
| |
1671 | 1683 |
| |
1672 | 1684 |
| |
| 1685 | + | |
| 1686 | + | |
1673 | 1687 |
| |
1674 | 1688 |
| |
1675 | 1689 |
| |
| |||
1862 | 1876 |
| |
1863 | 1877 |
| |
1864 | 1878 |
| |
1865 |
| - | |
1866 |
| - | |
| 1879 | + | |
| 1880 | + | |
1867 | 1881 |
| |
1868 | 1882 |
| |
1869 |
| - | |
1870 | 1883 |
| |
1871 |
| - | |
1872 |
| - | |
| 1884 | + | |
| 1885 | + | |
1873 | 1886 |
| |
1874 | 1887 |
| |
1875 | 1888 |
| |
| |||
1882 | 1895 |
| |
1883 | 1896 |
| |
1884 | 1897 |
| |
| 1898 | + | |
| 1899 | + | |
1885 | 1900 |
| |
1886 | 1901 |
| |
1887 | 1902 |
| |
| |||
2067 | 2082 |
| |
2068 | 2083 |
| |
2069 | 2084 |
| |
| 2085 | + | |
| 2086 | + | |
| 2087 | + | |
| 2088 | + | |
| 2089 | + | |
2070 | 2090 |
| |
2071 | 2091 |
| |
2072 |
| - | |
| 2092 | + | |
2073 | 2093 |
| |
2074 |
| - | |
2075 |
| - | |
| 2094 | + | |
| 2095 | + | |
| 2096 | + | |
| 2097 | + | |
2076 | 2098 |
| |
2077 |
| - | |
| 2099 | + | |
2078 | 2100 |
| |
2079 |
| - | |
| 2101 | + | |
| 2102 | + | |
| 2103 | + | |
| 2104 | + | |
2080 | 2105 |
| |
2081 |
| - | |
| 2106 | + | |
| 2107 | + | |
| 2108 | + | |
| 2109 | + | |
2082 | 2110 |
| |
2083 | 2111 |
| |
2084 | 2112 |
| |
| |||
2124 | 2152 |
| |
2125 | 2153 |
| |
2126 | 2154 |
| |
| 2155 | + | |
| 2156 | + | |
2127 | 2157 |
| |
2128 | 2158 |
| |
2129 | 2159 |
| |
| |||
2146 | 2176 |
| |
2147 | 2177 |
| |
2148 | 2178 |
| |
2149 |
| - | |
| 2179 | + | |
| 2180 | + | |
| 2181 | + | |
| 2182 | + | |
| 2183 | + | |
| 2184 | + | |
2150 | 2185 |
| |
2151 | 2186 |
| |
2152 |
| - | |
| 2187 | + | |
2153 | 2188 |
| |
2154 | 2189 |
| |
2155 |
| - | |
2156 |
| - | |
2157 |
| - | |
2158 | 2190 |
| |
2159 | 2191 |
| |
2160 | 2192 |
| |
2161 |
| - | |
| 2193 | + | |
| 2194 | + | |
| 2195 | + | |
| 2196 | + | |
2162 | 2197 |
| |
2163 |
| - | |
| 2198 | + | |
| 2199 | + | |
| 2200 | + | |
| 2201 | + | |
| 2202 | + | |
| 2203 | + | |
2164 | 2204 |
| |
2165 |
| - | |
2166 |
| - | |
2167 |
| - | |
| 2205 | + | |
2168 | 2206 |
| |
2169 |
| - | |
2170 |
| - | |
2171 |
| - | |
2172 |
| - | |
2173 |
| - | |
2174 |
| - | |
2175 |
| - | |
2176 |
| - | |
2177 |
| - | |
2178 |
| - | |
2179 |
| - | |
2180 |
| - | |
| 2207 | + | |
| 2208 | + | |
| 2209 | + | |
| 2210 | + | |
2181 | 2211 |
| |
2182 |
| - | |
2183 |
| - | |
| 2212 | + | |
| 2213 | + | |
| 2214 | + | |
| 2215 | + | |
| 2216 | + | |
| 2217 | + | |
| 2218 | + | |
| 2219 | + | |
| 2220 | + | |
| 2221 | + | |
| 2222 | + | |
2184 | 2223 |
| |
2185 |
| - | |
2186 |
| - | |
2187 |
| - | |
2188 |
| - | |
2189 |
| - | |
2190 |
| - | |
2191 |
| - | |
2192 |
| - | |
2193 |
| - | |
2194 |
| - | |
2195 |
| - | |
2196 |
| - | |
2197 |
| - | |
2198 |
| - | |
| 2224 | + | |
| 2225 | + | |
| 2226 | + | |
| 2227 | + | |
| 2228 | + | |
| 2229 | + | |
| 2230 | + | |
| 2231 | + | |
| 2232 | + | |
| 2233 | + | |
| 2234 | + | |
| 2235 | + | |
| 2236 | + | |
| 2237 | + | |
| 2238 | + | |
| 2239 | + | |
| 2240 | + | |
| 2241 | + | |
| 2242 | + | |
| 2243 | + | |
| 2244 | + | |
| 2245 | + | |
| 2246 | + | |
| 2247 | + | |
| 2248 | + | |
| 2249 | + | |
| 2250 | + | |
| 2251 | + | |
| 2252 | + | |
| 2253 | + | |
2199 | 2254 |
| |
| 2255 | + | |
2200 | 2256 |
| |
2201 | 2257 |
| |
2202 | 2258 |
| |
|
Lines changed: 93 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
27 | 27 |
| |
28 | 28 |
| |
29 | 29 |
| |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
30 | 47 |
| |
31 | 48 |
| |
32 | 49 |
| |
| |||
43 | 60 |
| |
44 | 61 |
| |
45 | 62 |
| |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
46 | 67 |
| |
47 | 68 |
| |
48 | 69 |
| |
| |||
272 | 293 |
| |
273 | 294 |
| |
274 | 295 |
| |
| 296 | + | |
| 297 | + | |
| 298 | + | |
275 | 299 |
| |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
276 | 316 |
| |
277 |
| - | |
| 317 | + | |
278 | 318 |
| |
279 |
| - | |
| 319 | + | |
280 | 320 |
| |
281 | 321 |
| |
282 | 322 |
| |
| |||
357 | 397 |
| |
358 | 398 |
| |
359 | 399 |
| |
| 400 | + | |
360 | 401 |
| |
361 | 402 |
| |
362 | 403 |
| |
| |||
588 | 629 |
| |
589 | 630 |
| |
590 | 631 |
| |
| 632 | + | |
| 633 | + | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
| 641 | + | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
| 654 | + | |
| 655 | + | |
| 656 | + | |
| 657 | + | |
| 658 | + | |
| 659 | + | |
| 660 | + | |
| 661 | + | |
| 662 | + | |
| 663 | + | |
| 664 | + | |
| 665 | + | |
| 666 | + | |
| 667 | + | |
| 668 | + | |
| 669 | + | |
| 670 | + | |
| 671 | + | |
| 672 | + | |
| 673 | + | |
| 674 | + | |
| 675 | + | |
| 676 | + | |
| 677 | + | |
| 678 | + | |
| 679 | + | |
| 680 | + | |
| 681 | + | |
591 | 682 |
| |
592 | 683 |
| |
593 | 684 |
| |
|
Lines changed: 2 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
492 | 492 |
| |
493 | 493 |
| |
494 | 494 |
| |
495 |
| - | |
496 |
| - | |
| 495 | + | |
| 496 | + | |
497 | 497 |
| |
498 | 498 |
| |
499 | 499 |
| |
|
0 commit comments
Comments
(0)