Commit 169f7eb
Defer frame acquisition in sys.monitoring callbacks to reduce object retention
In _return_event: move _getframe(1) call after step_cmd == -1 early return
check, avoiding unnecessary frame creation when not stepping.
In _start_method_event: pass depth=1 to _get_func_code_info instead of frame
object, deferring frame creation to after always_skip_code check.
In _unwind_event and _raise_event: wrap frame/arg usage in try/finally to
explicitly clear references after use, preventing exception tracebacks from
keeping frame objects alive.
Regenerated _pydevd_sys_monitoring_cython.pyx from updated Python source.
Co-authored-by: rchiodo <19672699+rchiodo@users.noreply.github.com>1 parent 8156d36 commit 169f7eb
3 files changed
Lines changed: 190 additions & 84 deletions
File tree
- src/debugpy/_vendored/pydevd
- _pydevd_sys_monitoring
- tests_python
Lines changed: 66 additions & 42 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
895 | 895 | | |
896 | 896 | | |
897 | 897 | | |
898 | | - | |
899 | | - | |
900 | | - | |
901 | | - | |
902 | | - | |
| 898 | + | |
| 899 | + | |
903 | 900 | | |
904 | | - | |
905 | | - | |
906 | | - | |
| 901 | + | |
| 902 | + | |
907 | 903 | | |
908 | | - | |
909 | | - | |
910 | | - | |
911 | | - | |
912 | | - | |
913 | | - | |
914 | | - | |
915 | | - | |
916 | | - | |
| 904 | + | |
| 905 | + | |
| 906 | + | |
| 907 | + | |
917 | 908 | | |
| 909 | + | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
| 922 | + | |
918 | 923 | | |
919 | | - | |
920 | | - | |
| 924 | + | |
| 925 | + | |
| 926 | + | |
| 927 | + | |
921 | 928 | | |
922 | | - | |
923 | | - | |
924 | | - | |
925 | | - | |
926 | | - | |
927 | | - | |
| 929 | + | |
| 930 | + | |
| 931 | + | |
| 932 | + | |
| 933 | + | |
| 934 | + | |
928 | 935 | | |
929 | 936 | | |
930 | 937 | | |
| |||
967 | 974 | | |
968 | 975 | | |
969 | 976 | | |
970 | | - | |
| 977 | + | |
| 978 | + | |
971 | 979 | | |
972 | | - | |
973 | | - | |
974 | | - | |
975 | | - | |
976 | | - | |
977 | | - | |
| 980 | + | |
| 981 | + | |
| 982 | + | |
| 983 | + | |
| 984 | + | |
| 985 | + | |
978 | 986 | | |
979 | | - | |
980 | | - | |
| 987 | + | |
| 988 | + | |
981 | 989 | | |
982 | | - | |
983 | | - | |
984 | | - | |
| 990 | + | |
| 991 | + | |
| 992 | + | |
| 993 | + | |
| 994 | + | |
| 995 | + | |
| 996 | + | |
| 997 | + | |
| 998 | + | |
985 | 999 | | |
986 | 1000 | | |
987 | 1001 | | |
| |||
1083 | 1097 | | |
1084 | 1098 | | |
1085 | 1099 | | |
1086 | | - | |
1087 | | - | |
1088 | | - | |
1089 | 1100 | | |
1090 | 1101 | | |
1091 | 1102 | | |
1092 | 1103 | | |
| 1104 | + | |
| 1105 | + | |
| 1106 | + | |
| 1107 | + | |
| 1108 | + | |
| 1109 | + | |
1093 | 1110 | | |
1094 | 1111 | | |
1095 | 1112 | | |
| |||
1703 | 1720 | | |
1704 | 1721 | | |
1705 | 1722 | | |
1706 | | - | |
1707 | | - | |
| 1723 | + | |
| 1724 | + | |
| 1725 | + | |
| 1726 | + | |
1708 | 1727 | | |
1709 | 1728 | | |
1710 | 1729 | | |
1711 | 1730 | | |
1712 | 1731 | | |
| 1732 | + | |
| 1733 | + | |
| 1734 | + | |
| 1735 | + | |
| 1736 | + | |
1713 | 1737 | | |
1714 | 1738 | | |
1715 | 1739 | | |
| |||
Lines changed: 66 additions & 42 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
901 | 901 | | |
902 | 902 | | |
903 | 903 | | |
904 | | - | |
905 | | - | |
906 | | - | |
907 | | - | |
908 | | - | |
| 904 | + | |
| 905 | + | |
909 | 906 | | |
910 | | - | |
911 | | - | |
912 | | - | |
| 907 | + | |
| 908 | + | |
913 | 909 | | |
914 | | - | |
915 | | - | |
916 | | - | |
917 | | - | |
918 | | - | |
919 | | - | |
920 | | - | |
921 | | - | |
922 | | - | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
923 | 914 | | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
| 922 | + | |
| 923 | + | |
| 924 | + | |
| 925 | + | |
| 926 | + | |
| 927 | + | |
| 928 | + | |
924 | 929 | | |
925 | | - | |
926 | | - | |
| 930 | + | |
| 931 | + | |
| 932 | + | |
| 933 | + | |
927 | 934 | | |
928 | | - | |
929 | | - | |
930 | | - | |
931 | | - | |
932 | | - | |
933 | | - | |
| 935 | + | |
| 936 | + | |
| 937 | + | |
| 938 | + | |
| 939 | + | |
| 940 | + | |
934 | 941 | | |
935 | 942 | | |
936 | 943 | | |
| |||
973 | 980 | | |
974 | 981 | | |
975 | 982 | | |
976 | | - | |
| 983 | + | |
| 984 | + | |
977 | 985 | | |
978 | | - | |
979 | | - | |
980 | | - | |
981 | | - | |
982 | | - | |
983 | | - | |
| 986 | + | |
| 987 | + | |
| 988 | + | |
| 989 | + | |
| 990 | + | |
| 991 | + | |
984 | 992 | | |
985 | | - | |
986 | | - | |
| 993 | + | |
| 994 | + | |
987 | 995 | | |
988 | | - | |
989 | | - | |
990 | | - | |
| 996 | + | |
| 997 | + | |
| 998 | + | |
| 999 | + | |
| 1000 | + | |
| 1001 | + | |
| 1002 | + | |
| 1003 | + | |
| 1004 | + | |
991 | 1005 | | |
992 | 1006 | | |
993 | 1007 | | |
| |||
1089 | 1103 | | |
1090 | 1104 | | |
1091 | 1105 | | |
1092 | | - | |
1093 | | - | |
1094 | | - | |
1095 | 1106 | | |
1096 | 1107 | | |
1097 | 1108 | | |
1098 | 1109 | | |
| 1110 | + | |
| 1111 | + | |
| 1112 | + | |
| 1113 | + | |
| 1114 | + | |
| 1115 | + | |
1099 | 1116 | | |
1100 | 1117 | | |
1101 | 1118 | | |
| |||
1709 | 1726 | | |
1710 | 1727 | | |
1711 | 1728 | | |
1712 | | - | |
1713 | | - | |
| 1729 | + | |
| 1730 | + | |
| 1731 | + | |
| 1732 | + | |
1714 | 1733 | | |
1715 | 1734 | | |
1716 | 1735 | | |
1717 | 1736 | | |
1718 | 1737 | | |
| 1738 | + | |
| 1739 | + | |
| 1740 | + | |
| 1741 | + | |
| 1742 | + | |
1719 | 1743 | | |
1720 | 1744 | | |
1721 | 1745 | | |
| |||
Lines changed: 58 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
292 | 292 | | |
293 | 293 | | |
294 | 294 | | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
0 commit comments