forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit9e17bdb
committed
Fix query-lifespan memory leakage in repeatedly executed hash joins.
ExecHashTableCreate allocated some memory that wasn't freed byExecHashTableDestroy, specifically the per-hash-key function information.That's not a huge amount of data, but if one runs a query that repeatsa hash join enough times, it builds up. Fix by arranging for the datain question to be kept in the hashtable's hashCxt instead of leaving it"loose" in the query-lifespan executor context. (This ensures that we'llalso clean up anything that the hash functions allocate in fn_mcxt.)Per report from Amit Khandekar. It's been like this forever, so back-patchto all supported branches.Discussion:https://postgr.es/m/CAJ3gD9cFofAWGvcxLOxDHC=B0hjtW8yGmUsF2hdGh97CM38=7g@mail.gmail.com1 parent013c0ba commit9e17bdb
1 file changed
+18
-17
lines changedLines changed: 18 additions & 17 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
472 | 472 |
| |
473 | 473 |
| |
474 | 474 |
| |
475 |
| - | |
| 475 | + | |
| 476 | + | |
476 | 477 |
| |
477 | 478 |
| |
478 | 479 |
| |
| |||
514 | 515 |
| |
515 | 516 |
| |
516 | 517 |
| |
| 518 | + | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
517 | 534 |
| |
518 | 535 |
| |
519 | 536 |
| |
| |||
540 | 557 |
| |
541 | 558 |
| |
542 | 559 |
| |
543 |
| - | |
544 |
| - | |
545 |
| - | |
546 |
| - | |
547 |
| - | |
548 |
| - | |
549 |
| - | |
550 |
| - | |
551 |
| - | |
552 |
| - | |
553 |
| - | |
554 |
| - | |
555 |
| - | |
556 |
| - | |
557 |
| - | |
558 |
| - | |
559 | 560 |
| |
560 | 561 |
| |
561 | 562 |
| |
|
0 commit comments
Comments
(0)