- Notifications
You must be signed in to change notification settings - Fork28
Commiteb81b65
committed
The previous fix in CVS HEAD and 8.4 for handling the case where a cursor
being used in a PL/pgSQL FOR loop is closed was inadequate, as Tom Lanepointed out. The bug affects FOR statement variants too, because you canclose an implicitly created cursor too by guessing the "<unnamed portal X>"name created for it.To fix that, "pin" the portal to prevent it from being dropped while it'sbeing used in a PL/pgSQL FOR loop. Backpatch all the way to 7.4 which isthe oldest supported version.1 parent2330d9c commiteb81b65
File tree
3 files changed
+64
-43
lines changed- src
- backend/utils/mmgr
- include/utils
- pl/plpgsql/src
3 files changed
+64
-43
lines changedLines changed: 49 additions & 5 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
15 |
| - | |
| 15 | + | |
16 | 16 |
| |
17 | 17 |
| |
18 | 18 |
| |
| |||
376 | 376 |
| |
377 | 377 |
| |
378 | 378 |
| |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
379 | 401 |
| |
380 | 402 |
| |
381 | 403 |
| |
| |||
385 | 407 |
| |
386 | 408 |
| |
387 | 409 |
| |
388 |
| - | |
389 |
| - | |
390 |
| - | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
391 | 420 |
| |
392 | 421 |
| |
393 | 422 |
| |
| |||
630 | 659 |
| |
631 | 660 |
| |
632 | 661 |
| |
| 662 | + | |
| 663 | + | |
| 664 | + | |
| 665 | + | |
| 666 | + | |
| 667 | + | |
| 668 | + | |
633 | 669 |
| |
634 | 670 |
| |
635 | 671 |
| |
| |||
738 | 774 |
| |
739 | 775 |
| |
740 | 776 |
| |
741 |
| - | |
| 777 | + | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
| 781 | + | |
| 782 | + | |
| 783 | + | |
| 784 | + | |
| 785 | + | |
742 | 786 |
| |
743 | 787 |
| |
744 | 788 |
| |
|
Lines changed: 4 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
39 | 39 |
| |
40 | 40 |
| |
41 | 41 |
| |
42 |
| - | |
| 42 | + | |
43 | 43 |
| |
44 | 44 |
| |
45 | 45 |
| |
| |||
133 | 133 |
| |
134 | 134 |
| |
135 | 135 |
| |
| 136 | + | |
136 | 137 |
| |
137 | 138 |
| |
138 | 139 |
| |
| |||
199 | 200 |
| |
200 | 201 |
| |
201 | 202 |
| |
| 203 | + | |
| 204 | + | |
202 | 205 |
| |
203 | 206 |
| |
204 | 207 |
| |
|
Lines changed: 11 additions & 37 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 |
| |
| |||
2002 | 2002 |
| |
2003 | 2003 |
| |
2004 | 2004 |
| |
2005 |
| - | |
2006 |
| - | |
2007 |
| - | |
| 2005 | + | |
2008 | 2006 |
| |
2009 | 2007 |
| |
2010 |
| - | |
2011 |
| - | |
2012 |
| - | |
2013 |
| - | |
2014 |
| - | |
2015 |
| - | |
2016 | 2008 |
| |
2017 | 2009 |
| |
2018 |
| - | |
2019 | 2010 |
| |
2020 | 2011 |
| |
2021 | 2012 |
| |
| |||
4278 | 4269 |
| |
4279 | 4270 |
| |
4280 | 4271 |
| |
4281 |
| - | |
4282 |
| - | |
4283 |
| - | |
4284 |
| - | |
4285 |
| - | |
4286 |
| - | |
4287 |
| - | |
4288 | 4272 |
| |
4289 | 4273 |
| |
4290 | 4274 |
| |
| |||
4296 | 4280 |
| |
4297 | 4281 |
| |
4298 | 4282 |
| |
4299 |
| - | |
4300 |
| - | |
4301 |
| - | |
4302 |
| - | |
4303 | 4283 |
| |
4304 | 4284 |
| |
4305 | 4285 |
| |
| |||
4311 | 4291 |
| |
4312 | 4292 |
| |
4313 | 4293 |
| |
| 4294 | + | |
| 4295 | + | |
| 4296 | + | |
| 4297 | + | |
| 4298 | + | |
| 4299 | + | |
4314 | 4300 |
| |
4315 | 4301 |
| |
4316 | 4302 |
| |
| |||
4408 | 4394 |
| |
4409 | 4395 |
| |
4410 | 4396 |
| |
4411 |
| - | |
4412 |
| - | |
4413 |
| - | |
4414 | 4397 |
| |
4415 |
| - | |
4416 |
| - | |
4417 |
| - | |
4418 |
| - | |
4419 |
| - | |
4420 |
| - | |
4421 |
| - | |
4422 |
| - | |
4423 |
| - | |
4424 |
| - | |
4425 |
| - | |
4426 |
| - | |
| 4398 | + | |
4427 | 4399 |
| |
4428 | 4400 |
| |
4429 | 4401 |
| |
| |||
4435 | 4407 |
| |
4436 | 4408 |
| |
4437 | 4409 |
| |
| 4410 | + | |
| 4411 | + | |
4438 | 4412 |
| |
4439 | 4413 |
| |
4440 | 4414 |
| |
|
0 commit comments
Comments
(0)