- Notifications
You must be signed in to change notification settings - Fork4.9k
Commiteb51af7
committed
Prevent a rowtype from being included in itself.
Eventually we might be able to allow that, but it's not clear how manyplaces need to be fixed to prevent infinite recursion when there's a director indirect inclusion of a rowtype in itself. One such place isCheckAttributeType(), which will recurse to stack overflow in cases such asthose exhibited in bug #5950 from Alex Perepelica. If we were sure it wasthe only such place, we could easily modify the code added by this patch tostop the recursion without a complaint ... but it probably isn't the onlysuch place. Hence, throw error until such time as someone is excitedenough about this type of usage to put work into making it safe.Back-patch as far as 8.3. 8.2 doesn't have the recursive call inCheckAttributeType in the first place, so I see no need to add code therein the absence of clear evidence of a problem elsewhere.1 parent5c22c0e commiteb51af7
File tree
6 files changed
+76
-10
lines changed- src
- backend
- catalog
- commands
- include/catalog
- test/regress
- expected
- sql
6 files changed
+76
-10
lines changedLines changed: 43 additions & 6 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
431 | 431 |
| |
432 | 432 |
| |
433 | 433 |
| |
| 434 | + | |
434 | 435 |
| |
435 | 436 |
| |
436 | 437 |
| |
| |||
439 | 440 |
| |
440 | 441 |
| |
441 | 442 |
| |
442 |
| - | |
| 443 | + | |
443 | 444 |
| |
| 445 | + | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
444 | 452 |
| |
445 | 453 |
| |
446 | 454 |
| |
447 |
| - | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
448 | 458 |
| |
449 | 459 |
| |
450 | 460 |
| |
| 461 | + | |
451 | 462 |
| |
452 | 463 |
| |
453 | 464 |
| |
| |||
485 | 496 |
| |
486 | 497 |
| |
487 | 498 |
| |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
488 | 513 |
| |
489 | 514 |
| |
490 | 515 |
| |
| |||
495 | 520 |
| |
496 | 521 |
| |
497 | 522 |
| |
498 |
| - | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
499 | 526 |
| |
500 | 527 |
| |
501 | 528 |
| |
502 | 529 |
| |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
| 539 | + | |
| 540 | + | |
503 | 541 |
| |
504 | 542 |
| |
505 | 543 |
| |
506 | 544 |
| |
507 |
| - | |
508 |
| - | |
| 545 | + | |
509 | 546 |
| |
510 |
| - | |
| 547 | + | |
511 | 548 |
| |
512 | 549 |
| |
513 | 550 |
| |
|
Lines changed: 3 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
403 | 403 |
| |
404 | 404 |
| |
405 | 405 |
| |
406 |
| - | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
407 | 409 |
| |
408 | 410 |
| |
409 | 411 |
| |
|
Lines changed: 6 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
4221 | 4221 |
| |
4222 | 4222 |
| |
4223 | 4223 |
| |
4224 |
| - | |
| 4224 | + | |
| 4225 | + | |
| 4226 | + | |
4225 | 4227 |
| |
4226 | 4228 |
| |
4227 | 4229 |
| |
| |||
6536 | 6538 |
| |
6537 | 6539 |
| |
6538 | 6540 |
| |
6539 |
| - | |
| 6541 | + | |
| 6542 | + | |
| 6543 | + | |
6540 | 6544 |
| |
6541 | 6545 |
| |
6542 | 6546 |
| |
|
Lines changed: 3 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
117 | 117 |
| |
118 | 118 |
| |
119 | 119 |
| |
120 |
| - | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
121 | 123 |
| |
122 | 124 |
| |
123 | 125 |
|
Lines changed: 12 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1493 | 1493 |
| |
1494 | 1494 |
| |
1495 | 1495 |
| |
| 1496 | + | |
| 1497 | + | |
| 1498 | + | |
| 1499 | + | |
| 1500 | + | |
| 1501 | + | |
| 1502 | + | |
| 1503 | + | |
| 1504 | + | |
| 1505 | + | |
| 1506 | + | |
| 1507 | + | |
1496 | 1508 |
| |
1497 | 1509 |
| |
1498 | 1510 |
| |
|
Lines changed: 9 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1112 | 1112 |
| |
1113 | 1113 |
| |
1114 | 1114 |
| |
| 1115 | + | |
| 1116 | + | |
| 1117 | + | |
| 1118 | + | |
| 1119 | + | |
| 1120 | + | |
| 1121 | + | |
| 1122 | + | |
| 1123 | + | |
1115 | 1124 |
| |
1116 | 1125 |
| |
1117 | 1126 |
| |
|
0 commit comments
Comments
(0)