forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commita8b8f4d
committed
Clean up WAL/buffer interactions as per my recent proposal. Get rid of the
misleadingly-named WriteBuffer routine, and instead require routines thatchange buffer pages to call MarkBufferDirty (which does exactly what it says).We also require that they do so before calling XLogInsert; this takes care ofthe synchronization requirement documented in SyncOneBuffer. Note thatbecause bufmgr takes the buffer content lock (in shared mode) while writingout any buffer, it doesn't matter whether MarkBufferDirty is executed beforethe buffer content change is complete, so long as the content change iscompleted before releasing exclusive lock on the buffer. So it's OK to setthe dirtybit before we fill in the LSN.This eliminates the former kluge of needing to set the dirtybit in LockBuffer.Aside from making the code more transparent, we can also add some newdebugging assertions, in particular that the caller of MarkBufferDirty musthold the buffer content lock, not merely a pin.1 parent89395bf commita8b8f4d
File tree
24 files changed
+434
-537
lines changed- src
- backend
- access
- gist
- hash
- heap
- nbtree
- transam
- catalog
- commands
- storage/buffer
- include
- access
- storage
24 files changed
+434
-537
lines changedLines changed: 37 additions & 41 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 |
| |
| |||
111 | 111 |
| |
112 | 112 |
| |
113 | 113 |
| |
| 114 | + | |
| 115 | + | |
| 116 | + | |
114 | 117 |
| |
115 | 118 |
| |
116 | 119 |
| |
| |||
127 | 130 |
| |
128 | 131 |
| |
129 | 132 |
| |
130 |
| - | |
131 |
| - | |
| 133 | + | |
| 134 | + | |
132 | 135 |
| |
133 | 136 |
| |
134 | 137 |
| |
| |||
345 | 348 |
| |
346 | 349 |
| |
347 | 350 |
| |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
348 | 360 |
| |
349 | 361 |
| |
350 | 362 |
| |
| |||
354 | 366 |
| |
355 | 367 |
| |
356 | 368 |
| |
357 |
| - | |
358 |
| - | |
| 369 | + | |
359 | 370 |
| |
360 | 371 |
| |
361 | 372 |
| |
362 |
| - | |
363 | 373 |
| |
364 | 374 |
| |
365 | 375 |
| |
366 | 376 |
| |
367 |
| - | |
368 |
| - | |
| 377 | + | |
369 | 378 |
| |
370 | 379 |
| |
371 |
| - | |
372 | 380 |
| |
373 | 381 |
| |
374 | 382 |
| |
| |||
379 | 387 |
| |
380 | 388 |
| |
381 | 389 |
| |
382 |
| - | |
383 |
| - | |
| 390 | + | |
384 | 391 |
| |
385 | 392 |
| |
386 | 393 |
| |
387 | 394 |
| |
388 | 395 |
| |
389 | 396 |
| |
390 |
| - | |
391 |
| - | |
392 |
| - | |
| 397 | + | |
393 | 398 |
| |
394 | 399 |
| |
395 | 400 |
| |
| |||
430 | 435 |
| |
431 | 436 |
| |
432 | 437 |
| |
433 |
| - | |
| 438 | + | |
434 | 439 |
| |
435 |
| - | |
436 |
| - | |
437 |
| - | |
| 440 | + | |
438 | 441 |
| |
439 | 442 |
| |
440 | 443 |
| |
| |||
443 | 446 |
| |
444 | 447 |
| |
445 | 448 |
| |
446 |
| - | |
447 |
| - | |
448 |
| - | |
| 449 | + | |
449 | 450 |
| |
450 |
| - | |
451 |
| - | |
452 | 451 |
| |
453 | 452 |
| |
454 | 453 |
| |
| |||
460 | 459 |
| |
461 | 460 |
| |
462 | 461 |
| |
| 462 | + | |
| 463 | + | |
463 | 464 |
| |
464 | 465 |
| |
465 | 466 |
| |
| |||
489 | 490 |
| |
490 | 491 |
| |
491 | 492 |
| |
492 |
| - | |
493 | 493 |
| |
494 | 494 |
| |
495 | 495 |
| |
| |||
561 | 561 |
| |
562 | 562 |
| |
563 | 563 |
| |
564 |
| - | |
565 |
| - | |
| 564 | + | |
566 | 565 |
| |
567 | 566 |
| |
568 | 567 |
| |
| |||
630 | 629 |
| |
631 | 630 |
| |
632 | 631 |
| |
633 |
| - | |
634 |
| - | |
| 632 | + | |
635 | 633 |
| |
636 | 634 |
| |
637 | 635 |
| |
| |||
681 | 679 |
| |
682 | 680 |
| |
683 | 681 |
| |
684 |
| - | |
685 |
| - | |
| 682 | + | |
686 | 683 |
| |
687 | 684 |
| |
688 | 685 |
| |
| |||
735 | 732 |
| |
736 | 733 |
| |
737 | 734 |
| |
738 |
| - | |
739 |
| - | |
| 735 | + | |
740 | 736 |
| |
741 | 737 |
| |
742 | 738 |
| |
| |||
753 | 749 |
| |
754 | 750 |
| |
755 | 751 |
| |
756 |
| - | |
757 |
| - | |
| 752 | + | |
758 | 753 |
| |
759 | 754 |
| |
760 | 755 |
| |
| |||
801 | 796 |
| |
802 | 797 |
| |
803 | 798 |
| |
804 |
| - | |
805 |
| - | |
| 799 | + | |
806 | 800 |
| |
807 | 801 |
| |
808 | 802 |
| |
| |||
881 | 875 |
| |
882 | 876 |
| |
883 | 877 |
| |
884 |
| - | |
885 |
| - | |
| 878 | + | |
886 | 879 |
| |
887 | 880 |
| |
888 | 881 |
| |
| |||
1182 | 1175 |
| |
1183 | 1176 |
| |
1184 | 1177 |
| |
| 1178 | + | |
| 1179 | + | |
| 1180 | + | |
1185 | 1181 |
| |
1186 | 1182 |
| |
1187 | 1183 |
| |
| |||
1192 | 1188 |
| |
1193 | 1189 |
| |
1194 | 1190 |
| |
1195 |
| - | |
| 1191 | + | |
1196 | 1192 |
| |
1197 | 1193 |
| |
| 1194 | + | |
| 1195 | + | |
1198 | 1196 |
| |
1199 | 1197 |
| |
1200 | 1198 |
| |
| |||
1211 | 1209 |
| |
1212 | 1210 |
| |
1213 | 1211 |
| |
1214 |
| - | |
1215 |
| - | |
1216 | 1212 |
| |
1217 | 1213 |
| |
1218 | 1214 |
| |
|
Lines changed: 21 additions & 26 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 |
| |
| |||
71 | 71 |
| |
72 | 72 |
| |
73 | 73 |
| |
74 |
| - | |
75 |
| - | |
76 |
| - | |
77 |
| - | |
78 |
| - | |
| 74 | + | |
79 | 75 |
| |
80 | 76 |
| |
81 | 77 |
| |
| |||
183 | 179 |
| |
184 | 180 |
| |
185 | 181 |
| |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
186 | 187 |
| |
187 | 188 |
| |
188 | 189 |
| |
| |||
198 | 199 |
| |
199 | 200 |
| |
200 | 201 |
| |
201 |
| - | |
202 |
| - | |
| 202 | + | |
203 | 203 |
| |
204 | 204 |
| |
205 | 205 |
| |
206 |
| - | |
207 | 206 |
| |
208 | 207 |
| |
209 | 208 |
| |
210 | 209 |
| |
211 | 210 |
| |
212 | 211 |
| |
213 | 212 |
| |
214 |
| - | |
215 |
| - | |
| 213 | + | |
216 | 214 |
| |
217 | 215 |
| |
218 |
| - | |
219 | 216 |
| |
220 | 217 |
| |
221 | 218 |
| |
222 |
| - | |
223 |
| - | |
| 219 | + | |
224 | 220 |
| |
| 221 | + | |
225 | 222 |
| |
226 | 223 |
| |
227 |
| - | |
228 |
| - | |
| 224 | + | |
229 | 225 |
| |
230 | 226 |
| |
231 | 227 |
| |
| |||
297 | 293 |
| |
298 | 294 |
| |
299 | 295 |
| |
| 296 | + | |
| 297 | + | |
300 | 298 |
| |
301 | 299 |
| |
302 | 300 |
| |
| |||
317 | 315 |
| |
318 | 316 |
| |
319 | 317 |
| |
320 |
| - | |
321 | 318 |
| |
322 |
| - | |
323 |
| - | |
324 | 319 |
| |
325 | 320 |
| |
326 | 321 |
| |
| 322 | + | |
| 323 | + | |
327 | 324 |
| |
328 | 325 |
| |
329 | 326 |
| |
| |||
429 | 426 |
| |
430 | 427 |
| |
431 | 428 |
| |
432 |
| - | |
433 |
| - | |
| 429 | + | |
434 | 430 |
| |
435 | 431 |
| |
436 | 432 |
| |
| |||
569 | 565 |
| |
570 | 566 |
| |
571 | 567 |
| |
572 |
| - | |
573 |
| - | |
| 568 | + | |
574 | 569 |
| |
575 | 570 |
| |
576 | 571 |
| |
| |||
617 | 612 |
| |
618 | 613 |
| |
619 | 614 |
| |
| 615 | + | |
| 616 | + | |
620 | 617 |
| |
621 | 618 |
| |
622 | 619 |
| |
| |||
638 | 635 |
| |
639 | 636 |
| |
640 | 637 |
| |
641 |
| - | |
642 | 638 |
| |
643 | 639 |
| |
644 | 640 |
| |
| |||
666 | 662 |
| |
667 | 663 |
| |
668 | 664 |
| |
669 |
| - | |
670 |
| - | |
| 665 | + | |
671 | 666 |
| |
672 | 667 |
| |
673 | 668 |
| |
|
0 commit comments
Comments
(0)