- Notifications
You must be signed in to change notification settings - Fork28
Commit4dab3d5
committed
Change the autovacuum launcher to use WaitLatch instead of a poll loop.
In pursuit of this (and with the expectation that WaitLatch will be neededin more places), convert the latch field that was already added to PGPROCfor sync rep into a generic latch that is activated for all PGPROC-owningprocesses, and change many of the standard backend signal handlers to setthat latch when a signal happens. This will allow WaitLatch callers to bewakened properly by these signals.In passing, fix a whole bunch of signal handlers that had been hacked to dothings that might change errno, without adding the necessary save/restorelogic for errno. Also make some minor fixes in unix_latch.c, and cleanup bizarre and unsafe scheme for disowning the process's latch. Much ofthis has to be back-patched into 9.1.Peter Geoghegan, with additional work by Tom1 parent1f1b70a commit4dab3d5
File tree
11 files changed
+186
-77
lines changed- src
- backend
- access/transam
- port
- postmaster
- replication
- storage/lmgr
- tcop
- include
- replication
- storage
11 files changed
+186
-77
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9957 | 9957 | | |
9958 | 9958 | | |
9959 | 9959 | | |
| 9960 | + | |
| 9961 | + | |
9960 | 9962 | | |
| 9963 | + | |
| 9964 | + | |
9961 | 9965 | | |
9962 | 9966 | | |
9963 | 9967 | | |
9964 | 9968 | | |
9965 | 9969 | | |
9966 | 9970 | | |
| 9971 | + | |
| 9972 | + | |
9967 | 9973 | | |
9968 | 9974 | | |
| 9975 | + | |
| 9976 | + | |
9969 | 9977 | | |
9970 | 9978 | | |
9971 | 9979 | | |
9972 | 9980 | | |
9973 | 9981 | | |
9974 | 9982 | | |
| 9983 | + | |
| 9984 | + | |
9975 | 9985 | | |
9976 | 9986 | | |
| 9987 | + | |
| 9988 | + | |
9977 | 9989 | | |
9978 | 9990 | | |
9979 | 9991 | | |
9980 | 9992 | | |
9981 | 9993 | | |
9982 | 9994 | | |
| 9995 | + | |
| 9996 | + | |
9983 | 9997 | | |
9984 | 9998 | | |
9985 | 9999 | | |
9986 | 10000 | | |
9987 | 10001 | | |
| 10002 | + | |
| 10003 | + | |
9988 | 10004 | | |
9989 | 10005 | | |
9990 | 10006 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
138 | 138 | | |
139 | 139 | | |
140 | 140 | | |
141 | | - | |
142 | | - | |
143 | | - | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
144 | 147 | | |
145 | 148 | | |
146 | 149 | | |
| |||
261 | 264 | | |
262 | 265 | | |
263 | 266 | | |
| 267 | + | |
264 | 268 | | |
265 | 269 | | |
266 | 270 | | |
| |||
294 | 298 | | |
295 | 299 | | |
296 | 300 | | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
297 | 305 | | |
298 | 306 | | |
299 | 307 | | |
| |||
339 | 347 | | |
340 | 348 | | |
341 | 349 | | |
342 | | - | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
343 | 354 | | |
344 | 355 | | |
345 | 356 | | |
| |||
371 | 382 | | |
372 | 383 | | |
373 | 384 | | |
374 | | - | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
375 | 390 | | |
376 | 391 | | |
377 | 392 | | |
| |||
435 | 450 | | |
436 | 451 | | |
437 | 452 | | |
438 | | - | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
439 | 460 | | |
440 | 461 | | |
441 | 462 | | |
442 | 463 | | |
443 | 464 | | |
444 | | - | |
| 465 | + | |
445 | 466 | | |
446 | 467 | | |
447 | 468 | | |
| |||
456 | 477 | | |
457 | 478 | | |
458 | 479 | | |
| 480 | + | |
| 481 | + | |
459 | 482 | | |
| 483 | + | |
460 | 484 | | |
461 | 485 | | |
| 486 | + | |
| 487 | + | |
462 | 488 | | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
463 | 496 | | |
464 | 497 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
84 | 84 | | |
85 | 85 | | |
86 | 86 | | |
| 87 | + | |
87 | 88 | | |
88 | 89 | | |
89 | 90 | | |
| |||
553 | 554 | | |
554 | 555 | | |
555 | 556 | | |
556 | | - | |
557 | | - | |
| 557 | + | |
| 558 | + | |
| 559 | + | |
| 560 | + | |
558 | 561 | | |
559 | | - | |
560 | | - | |
561 | 562 | | |
562 | 563 | | |
563 | 564 | | |
| |||
566 | 567 | | |
567 | 568 | | |
568 | 569 | | |
569 | | - | |
570 | | - | |
571 | | - | |
572 | | - | |
573 | | - | |
574 | | - | |
| 570 | + | |
| 571 | + | |
575 | 572 | | |
576 | | - | |
577 | | - | |
578 | | - | |
579 | | - | |
580 | | - | |
581 | | - | |
582 | | - | |
583 | | - | |
584 | | - | |
585 | | - | |
586 | | - | |
587 | | - | |
588 | | - | |
589 | | - | |
590 | | - | |
591 | | - | |
592 | | - | |
593 | | - | |
594 | | - | |
595 | | - | |
596 | | - | |
597 | | - | |
| 573 | + | |
| 574 | + | |
| 575 | + | |
598 | 576 | | |
599 | | - | |
600 | | - | |
601 | | - | |
| 577 | + | |
602 | 578 | | |
603 | 579 | | |
604 | 580 | | |
| 581 | + | |
| 582 | + | |
| 583 | + | |
| 584 | + | |
| 585 | + | |
| 586 | + | |
| 587 | + | |
605 | 588 | | |
606 | 589 | | |
607 | 590 | | |
| |||
1321 | 1304 | | |
1322 | 1305 | | |
1323 | 1306 | | |
| 1307 | + | |
| 1308 | + | |
1324 | 1309 | | |
| 1310 | + | |
| 1311 | + | |
| 1312 | + | |
| 1313 | + | |
1325 | 1314 | | |
1326 | 1315 | | |
1327 | 1316 | | |
1328 | 1317 | | |
1329 | 1318 | | |
1330 | 1319 | | |
| 1320 | + | |
| 1321 | + | |
1331 | 1322 | | |
| 1323 | + | |
| 1324 | + | |
| 1325 | + | |
| 1326 | + | |
1332 | 1327 | | |
1333 | 1328 | | |
1334 | 1329 | | |
1335 | 1330 | | |
1336 | 1331 | | |
1337 | 1332 | | |
| 1333 | + | |
| 1334 | + | |
1338 | 1335 | | |
| 1336 | + | |
| 1337 | + | |
| 1338 | + | |
| 1339 | + | |
1339 | 1340 | | |
1340 | 1341 | | |
1341 | 1342 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
288 | 288 | | |
289 | 289 | | |
290 | 290 | | |
| 291 | + | |
| 292 | + | |
291 | 293 | | |
292 | 294 | | |
293 | | - | |
294 | 295 | | |
| 296 | + | |
| 297 | + | |
295 | 298 | | |
296 | 299 | | |
297 | 300 | | |
298 | 301 | | |
299 | 302 | | |
300 | 303 | | |
| 304 | + | |
| 305 | + | |
301 | 306 | | |
302 | 307 | | |
303 | 308 | | |
304 | 309 | | |
305 | 310 | | |
306 | 311 | | |
307 | 312 | | |
308 | | - | |
309 | 313 | | |
| 314 | + | |
| 315 | + | |
310 | 316 | | |
311 | 317 | | |
312 | 318 | | |
313 | 319 | | |
314 | 320 | | |
315 | 321 | | |
| 322 | + | |
| 323 | + | |
316 | 324 | | |
317 | 325 | | |
318 | | - | |
319 | 326 | | |
| 327 | + | |
| 328 | + | |
320 | 329 | | |
321 | 330 | | |
322 | 331 | | |
323 | 332 | | |
324 | 333 | | |
325 | 334 | | |
| 335 | + | |
| 336 | + | |
326 | 337 | | |
327 | 338 | | |
328 | | - | |
329 | 339 | | |
| 340 | + | |
| 341 | + | |
330 | 342 | | |
331 | 343 | | |
332 | 344 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
111 | 111 | | |
112 | 112 | | |
113 | 113 | | |
114 | | - | |
115 | | - | |
116 | | - | |
117 | 114 | | |
118 | 115 | | |
119 | 116 | | |
| |||
167 | 164 | | |
168 | 165 | | |
169 | 166 | | |
170 | | - | |
| 167 | + | |
171 | 168 | | |
172 | 169 | | |
173 | 170 | | |
| |||
247 | 244 | | |
248 | 245 | | |
249 | 246 | | |
250 | | - | |
251 | | - | |
252 | | - | |
| 247 | + | |
| 248 | + | |
253 | 249 | | |
254 | | - | |
| 250 | + | |
255 | 251 | | |
256 | 252 | | |
257 | 253 | | |
| |||
322 | 318 | | |
323 | 319 | | |
324 | 320 | | |
325 | | - | |
| 321 | + | |
326 | 322 | | |
327 | 323 | | |
328 | 324 | | |
329 | 325 | | |
330 | 326 | | |
331 | 327 | | |
332 | 328 | | |
333 | | - | |
334 | | - | |
335 | 329 | | |
336 | 330 | | |
337 | 331 | | |
| |||
567 | 561 | | |
568 | 562 | | |
569 | 563 | | |
570 | | - | |
571 | | - | |
572 | | - | |
| 564 | + | |
573 | 565 | | |
574 | 566 | | |
575 | 567 | | |
| |||
0 commit comments
Comments
(0)