Commit 7f50b68
committed
PYTHON-6035 Add OpenTelemetry transaction spans
Wrap a transaction's operation spans in a "transaction" pseudo-span, per the
OpenTelemetry driver specification. The span is stored on the session's
_Transaction and passed as the explicit parent when an operation span starts,
rather than read from ambient context, so a concurrently running unrelated
session cannot pick up this transaction by accident.
with_transaction() pins one span across all of its retries, so a retried call
still yields a single span rather than one per attempt. Its retry loop moves
into a helper to keep the span bookkeeping readable. A nested with_transaction()
call on the same session now raises instead of clobbering and leaking the outer
call's span, and a direct-API commit retry starts a fresh span, the previous
attempt having already ended its own.1 parent 4e0c468 commit 7f50b68
6 files changed
Lines changed: 1106 additions & 3 deletions
File tree
- pymongo
- asynchronous
- synchronous
- test
- asynchronous
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
522 | 522 | | |
523 | 523 | | |
524 | 524 | | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
| 539 | + | |
| 540 | + | |
| 541 | + | |
| 542 | + | |
| 543 | + | |
| 544 | + | |
| 545 | + | |
| 546 | + | |
| 547 | + | |
| 548 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
290 | 290 | | |
291 | 291 | | |
292 | 292 | | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
293 | 296 | | |
294 | 297 | | |
295 | 298 | | |
296 | | - | |
| 299 | + | |
297 | 300 | | |
298 | 301 | | |
299 | 302 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
156 | 156 | | |
157 | 157 | | |
158 | 158 | | |
159 | | - | |
| 159 | + | |
160 | 160 | | |
161 | 161 | | |
162 | 162 | | |
| |||
427 | 427 | | |
428 | 428 | | |
429 | 429 | | |
| 430 | + | |
430 | 431 | | |
431 | 432 | | |
432 | 433 | | |
| |||
467 | 468 | | |
468 | 469 | | |
469 | 470 | | |
| 471 | + | |
470 | 472 | | |
471 | 473 | | |
472 | 474 | | |
| |||
562 | 564 | | |
563 | 565 | | |
564 | 566 | | |
| 567 | + | |
| 568 | + | |
| 569 | + | |
| 570 | + | |
565 | 571 | | |
566 | 572 | | |
567 | 573 | | |
| |||
769 | 775 | | |
770 | 776 | | |
771 | 777 | | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
| 781 | + | |
| 782 | + | |
| 783 | + | |
| 784 | + | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
| 788 | + | |
| 789 | + | |
| 790 | + | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
| 797 | + | |
| 798 | + | |
| 799 | + | |
| 800 | + | |
| 801 | + | |
| 802 | + | |
| 803 | + | |
| 804 | + | |
| 805 | + | |
| 806 | + | |
| 807 | + | |
| 808 | + | |
| 809 | + | |
| 810 | + | |
| 811 | + | |
| 812 | + | |
| 813 | + | |
| 814 | + | |
772 | 815 | | |
773 | 816 | | |
774 | 817 | | |
| |||
864 | 907 | | |
865 | 908 | | |
866 | 909 | | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
867 | 918 | | |
868 | 919 | | |
869 | 920 | | |
| 921 | + | |
| 922 | + | |
| 923 | + | |
| 924 | + | |
| 925 | + | |
| 926 | + | |
| 927 | + | |
| 928 | + | |
| 929 | + | |
| 930 | + | |
| 931 | + | |
| 932 | + | |
| 933 | + | |
870 | 934 | | |
871 | 935 | | |
872 | 936 | | |
| |||
879 | 943 | | |
880 | 944 | | |
881 | 945 | | |
| 946 | + | |
882 | 947 | | |
883 | 948 | | |
884 | 949 | | |
885 | 950 | | |
886 | 951 | | |
887 | 952 | | |
888 | 953 | | |
| 954 | + | |
| 955 | + | |
| 956 | + | |
| 957 | + | |
| 958 | + | |
| 959 | + | |
| 960 | + | |
| 961 | + | |
| 962 | + | |
889 | 963 | | |
890 | 964 | | |
891 | 965 | | |
| |||
909 | 983 | | |
910 | 984 | | |
911 | 985 | | |
| 986 | + | |
912 | 987 | | |
913 | 988 | | |
914 | 989 | | |
| |||
923 | 998 | | |
924 | 999 | | |
925 | 1000 | | |
| 1001 | + | |
926 | 1002 | | |
927 | 1003 | | |
928 | 1004 | | |
| |||
936 | 1012 | | |
937 | 1013 | | |
938 | 1014 | | |
| 1015 | + | |
939 | 1016 | | |
940 | 1017 | | |
941 | 1018 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
155 | 155 | | |
156 | 156 | | |
157 | 157 | | |
158 | | - | |
| 158 | + | |
159 | 159 | | |
160 | 160 | | |
161 | 161 | | |
| |||
426 | 426 | | |
427 | 427 | | |
428 | 428 | | |
| 429 | + | |
429 | 430 | | |
430 | 431 | | |
431 | 432 | | |
| |||
466 | 467 | | |
467 | 468 | | |
468 | 469 | | |
| 470 | + | |
469 | 471 | | |
470 | 472 | | |
471 | 473 | | |
| |||
561 | 563 | | |
562 | 564 | | |
563 | 565 | | |
| 566 | + | |
| 567 | + | |
| 568 | + | |
| 569 | + | |
564 | 570 | | |
565 | 571 | | |
566 | 572 | | |
| |||
768 | 774 | | |
769 | 775 | | |
770 | 776 | | |
| 777 | + | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
| 781 | + | |
| 782 | + | |
| 783 | + | |
| 784 | + | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
| 788 | + | |
| 789 | + | |
| 790 | + | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
| 797 | + | |
| 798 | + | |
| 799 | + | |
| 800 | + | |
| 801 | + | |
| 802 | + | |
| 803 | + | |
| 804 | + | |
| 805 | + | |
| 806 | + | |
| 807 | + | |
| 808 | + | |
| 809 | + | |
| 810 | + | |
| 811 | + | |
| 812 | + | |
| 813 | + | |
771 | 814 | | |
772 | 815 | | |
773 | 816 | | |
| |||
861 | 904 | | |
862 | 905 | | |
863 | 906 | | |
| 907 | + | |
| 908 | + | |
| 909 | + | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
| 914 | + | |
864 | 915 | | |
865 | 916 | | |
866 | 917 | | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
| 922 | + | |
| 923 | + | |
| 924 | + | |
| 925 | + | |
| 926 | + | |
| 927 | + | |
| 928 | + | |
| 929 | + | |
| 930 | + | |
867 | 931 | | |
868 | 932 | | |
869 | 933 | | |
| |||
876 | 940 | | |
877 | 941 | | |
878 | 942 | | |
| 943 | + | |
879 | 944 | | |
880 | 945 | | |
881 | 946 | | |
882 | 947 | | |
883 | 948 | | |
884 | 949 | | |
885 | 950 | | |
| 951 | + | |
| 952 | + | |
| 953 | + | |
| 954 | + | |
| 955 | + | |
| 956 | + | |
| 957 | + | |
| 958 | + | |
| 959 | + | |
886 | 960 | | |
887 | 961 | | |
888 | 962 | | |
| |||
906 | 980 | | |
907 | 981 | | |
908 | 982 | | |
| 983 | + | |
909 | 984 | | |
910 | 985 | | |
911 | 986 | | |
| |||
920 | 995 | | |
921 | 996 | | |
922 | 997 | | |
| 998 | + | |
923 | 999 | | |
924 | 1000 | | |
925 | 1001 | | |
| |||
933 | 1009 | | |
934 | 1010 | | |
935 | 1011 | | |
| 1012 | + | |
936 | 1013 | | |
937 | 1014 | | |
938 | 1015 | | |
| |||
0 commit comments