- Notifications
You must be signed in to change notification settings - Fork5k
Commit65158f4
committed
Remove small inefficiency in ExecARDeleteTriggers/ExecARUpdateTriggers.
Whilst poking at nodeModifyTable.c, I chanced to notice that whileits calls to ExecBR*Triggers and ExecIR*Triggers are protected bytests to see if there are any relevant triggers to fire, its callsto ExecAR*Triggers are not; the latter functions do the equivalenttests themselves. This seems possibly reasonable given the morecomplex conditions involved, but what's less reasonable is thatthe ExecAR* functions aren't careful to do no work when there isno work to be done. ExecARInsertTriggers gets this right, but theother two will both force creation of a slot that the query mayhave no use for. ExecARUpdateTriggers additionally performed ausually-useless ExecClearTuple() on that slot. This is probablyall pretty microscopic in real workloads, but a cycle shaved is acycle earned.1 parent9ee7d53 commit65158f4
1 file changed
+6
-4
lines changedLines changed: 6 additions & 4 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
2546 | 2546 |
| |
2547 | 2547 |
| |
2548 | 2548 |
| |
2549 |
| - | |
2550 | 2549 |
| |
2551 | 2550 |
| |
2552 | 2551 |
| |
2553 | 2552 |
| |
| 2553 | + | |
| 2554 | + | |
2554 | 2555 |
| |
2555 | 2556 |
| |
2556 | 2557 |
| |
| |||
2829 | 2830 |
| |
2830 | 2831 |
| |
2831 | 2832 |
| |
2832 |
| - | |
2833 |
| - | |
2834 |
| - | |
2835 | 2833 |
| |
2836 | 2834 |
| |
2837 | 2835 |
| |
| |||
2844 | 2842 |
| |
2845 | 2843 |
| |
2846 | 2844 |
| |
| 2845 | + | |
| 2846 | + | |
2847 | 2847 |
| |
2848 | 2848 |
| |
2849 | 2849 |
| |
| |||
2854 | 2854 |
| |
2855 | 2855 |
| |
2856 | 2856 |
| |
| 2857 | + | |
| 2858 | + | |
2857 | 2859 |
| |
2858 | 2860 |
| |
2859 | 2861 |
| |
|
0 commit comments
Comments
(0)