Skip to content

Commit 8603e6d

Browse files
authored
Add support for MongoDB.Driver v3.5+ (#7808)
## Summary of changes Add support for `MongoDB.Driver` v3.5+ ## Reason for change We didn't support 3.5. immediately, as it required using a new version of mongodb in CI - the existing version wouldn't work. We were running into capacity reasons, so we figured we would punt on testing it till later when we could update the VMs. _Unfortunately_, it turns out 3.5 introduced a bunch of internal changes, which means instrumentation is broken for 3.5 🤦‍♂️ This adds support for it back. ## Implementation details - Bump the version of mongo tested (this is already pulled on the VMs) - Fix the integration ## Test coverage Covered by existing. I pinned testing of the latest 3.4.x too, but ditched some of the earlier 2.x. versions. We were testing 4 different 2.x.x versions, which seemed a bit overkill, seeing as they all hit the same code paths, and haven't changed in years. ## Other details https://datadoghq.atlassian.net/browse/APMS-17799
1 parent 936f949 commit 8603e6d

File tree

21 files changed

+1571
-1327
lines changed

21 files changed

+1571
-1327
lines changed

docker-compose.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ services:
2020
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
2121

2222
mongo_arm64:
23-
image: mongo:4.0.9
23+
image: mongo:5.0.31
2424
ports:
2525
- "27017"
2626
command: mongod
@@ -144,7 +144,7 @@ services:
144144
- "127.0.0.1:6391:6379"
145145

146146
mongo:
147-
image: mongo:4.0.9
147+
image: mongo:5.0.31
148148
profiles: ["group2"]
149149
ports:
150150
- "127.0.0.1:27017:27017"
@@ -1199,7 +1199,7 @@ services:
11991199
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
12001200

12011201
mongo_osx_arm64:
1202-
image: mongo:4.0.9
1202+
image: mongo:5.0.31
12031203
ports:
12041204
- "27017:27017"
12051205
command: mongod

tracer/build/PackageVersionsGeneratorDefinitions.json

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -176,12 +176,11 @@
176176
"SampleProjectName": "Samples.MongoDB",
177177
"NugetPackageSearchName": "MongoDB.Driver",
178178
"MinVersion": "2.0.0",
179-
"MaxVersionExclusive": "3.5.0",
179+
"MaxVersionExclusive": "4.0.0",
180180
"SpecificVersions": [
181181
"2.0.*",
182-
"2.5.*",
183-
"2.14.*",
184182
"2.*.*",
183+
"3.4.*",
185184
"3.*.*"
186185
],
187186
"VersionConditions": [{

tracer/build/PackageVersionsLatestMajors.g.props

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1081,7 +1081,7 @@ NOTE: This code was generated by the GeneratePackageVersions tool. To safely
10811081
<SampleName>Samples.MongoDB</SampleName>
10821082
</PackageVersionSample>
10831083
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
1084-
<Properties>ApiVersion=3.4.3;RestoreRecursive=false;BuildProjectReferences=false</Properties>
1084+
<Properties>ApiVersion=3.5.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
10851085
<TargetFramework>net5.0</TargetFramework>
10861086
<RequiresDockerDependency>All</RequiresDockerDependency>
10871087
<SampleName>Samples.MongoDB</SampleName>
@@ -1093,7 +1093,7 @@ NOTE: This code was generated by the GeneratePackageVersions tool. To safely
10931093
<SampleName>Samples.MongoDB</SampleName>
10941094
</PackageVersionSample>
10951095
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
1096-
<Properties>ApiVersion=3.4.3;RestoreRecursive=false;BuildProjectReferences=false</Properties>
1096+
<Properties>ApiVersion=3.5.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
10971097
<TargetFramework>net6.0</TargetFramework>
10981098
<RequiresDockerDependency>All</RequiresDockerDependency>
10991099
<SampleName>Samples.MongoDB</SampleName>
@@ -1105,7 +1105,7 @@ NOTE: This code was generated by the GeneratePackageVersions tool. To safely
11051105
<SampleName>Samples.MongoDB</SampleName>
11061106
</PackageVersionSample>
11071107
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
1108-
<Properties>ApiVersion=3.4.3;RestoreRecursive=false;BuildProjectReferences=false</Properties>
1108+
<Properties>ApiVersion=3.5.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
11091109
<TargetFramework>net7.0</TargetFramework>
11101110
<RequiresDockerDependency>All</RequiresDockerDependency>
11111111
<SampleName>Samples.MongoDB</SampleName>
@@ -1117,7 +1117,7 @@ NOTE: This code was generated by the GeneratePackageVersions tool. To safely
11171117
<SampleName>Samples.MongoDB</SampleName>
11181118
</PackageVersionSample>
11191119
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
1120-
<Properties>ApiVersion=3.4.3;RestoreRecursive=false;BuildProjectReferences=false</Properties>
1120+
<Properties>ApiVersion=3.5.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
11211121
<TargetFramework>net8.0</TargetFramework>
11221122
<RequiresDockerDependency>All</RequiresDockerDependency>
11231123
<SampleName>Samples.MongoDB</SampleName>
@@ -1129,7 +1129,7 @@ NOTE: This code was generated by the GeneratePackageVersions tool. To safely
11291129
<SampleName>Samples.MongoDB</SampleName>
11301130
</PackageVersionSample>
11311131
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
1132-
<Properties>ApiVersion=3.4.3;RestoreRecursive=false;BuildProjectReferences=false</Properties>
1132+
<Properties>ApiVersion=3.5.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
11331133
<TargetFramework>net9.0</TargetFramework>
11341134
<RequiresDockerDependency>All</RequiresDockerDependency>
11351135
<SampleName>Samples.MongoDB</SampleName>
@@ -1141,7 +1141,7 @@ NOTE: This code was generated by the GeneratePackageVersions tool. To safely
11411141
<SampleName>Samples.MongoDB</SampleName>
11421142
</PackageVersionSample>
11431143
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
1144-
<Properties>ApiVersion=3.4.3;RestoreRecursive=false;BuildProjectReferences=false</Properties>
1144+
<Properties>ApiVersion=3.5.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
11451145
<TargetFramework>net10.0</TargetFramework>
11461146
<RequiresDockerDependency>All</RequiresDockerDependency>
11471147
<SampleName>Samples.MongoDB</SampleName>

tracer/build/PackageVersionsLatestMinors.g.props

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3948,6 +3948,12 @@ NOTE: This code was generated by the GeneratePackageVersions tool. To safely
39483948
<RequiresDockerDependency>All</RequiresDockerDependency>
39493949
<SampleName>Samples.MongoDB</SampleName>
39503950
</PackageVersionSample>
3951+
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
3952+
<Properties>ApiVersion=3.5.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
3953+
<TargetFramework>net5.0</TargetFramework>
3954+
<RequiresDockerDependency>All</RequiresDockerDependency>
3955+
<SampleName>Samples.MongoDB</SampleName>
3956+
</PackageVersionSample>
39513957
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
39523958
<Properties>ApiVersion=2.3.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
39533959
<TargetFramework>net6.0</TargetFramework>
@@ -4146,6 +4152,12 @@ NOTE: This code was generated by the GeneratePackageVersions tool. To safely
41464152
<RequiresDockerDependency>All</RequiresDockerDependency>
41474153
<SampleName>Samples.MongoDB</SampleName>
41484154
</PackageVersionSample>
4155+
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
4156+
<Properties>ApiVersion=3.5.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
4157+
<TargetFramework>net6.0</TargetFramework>
4158+
<RequiresDockerDependency>All</RequiresDockerDependency>
4159+
<SampleName>Samples.MongoDB</SampleName>
4160+
</PackageVersionSample>
41494161
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
41504162
<Properties>ApiVersion=2.3.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
41514163
<TargetFramework>net7.0</TargetFramework>
@@ -4344,6 +4356,12 @@ NOTE: This code was generated by the GeneratePackageVersions tool. To safely
43444356
<RequiresDockerDependency>All</RequiresDockerDependency>
43454357
<SampleName>Samples.MongoDB</SampleName>
43464358
</PackageVersionSample>
4359+
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
4360+
<Properties>ApiVersion=3.5.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
4361+
<TargetFramework>net7.0</TargetFramework>
4362+
<RequiresDockerDependency>All</RequiresDockerDependency>
4363+
<SampleName>Samples.MongoDB</SampleName>
4364+
</PackageVersionSample>
43474365
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
43484366
<Properties>ApiVersion=2.3.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
43494367
<TargetFramework>net8.0</TargetFramework>
@@ -4542,6 +4560,12 @@ NOTE: This code was generated by the GeneratePackageVersions tool. To safely
45424560
<RequiresDockerDependency>All</RequiresDockerDependency>
45434561
<SampleName>Samples.MongoDB</SampleName>
45444562
</PackageVersionSample>
4563+
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
4564+
<Properties>ApiVersion=3.5.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
4565+
<TargetFramework>net8.0</TargetFramework>
4566+
<RequiresDockerDependency>All</RequiresDockerDependency>
4567+
<SampleName>Samples.MongoDB</SampleName>
4568+
</PackageVersionSample>
45454569
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
45464570
<Properties>ApiVersion=2.3.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
45474571
<TargetFramework>net9.0</TargetFramework>
@@ -4740,6 +4764,12 @@ NOTE: This code was generated by the GeneratePackageVersions tool. To safely
47404764
<RequiresDockerDependency>All</RequiresDockerDependency>
47414765
<SampleName>Samples.MongoDB</SampleName>
47424766
</PackageVersionSample>
4767+
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
4768+
<Properties>ApiVersion=3.5.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
4769+
<TargetFramework>net9.0</TargetFramework>
4770+
<RequiresDockerDependency>All</RequiresDockerDependency>
4771+
<SampleName>Samples.MongoDB</SampleName>
4772+
</PackageVersionSample>
47434773
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
47444774
<Properties>ApiVersion=2.3.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
47454775
<TargetFramework>net10.0</TargetFramework>
@@ -4938,6 +4968,12 @@ NOTE: This code was generated by the GeneratePackageVersions tool. To safely
49384968
<RequiresDockerDependency>All</RequiresDockerDependency>
49394969
<SampleName>Samples.MongoDB</SampleName>
49404970
</PackageVersionSample>
4971+
<PackageVersionSample Include="test\test-applications\integrations\Samples.MongoDB\Samples.MongoDB.csproj">
4972+
<Properties>ApiVersion=3.5.0;RestoreRecursive=false;BuildProjectReferences=false</Properties>
4973+
<TargetFramework>net10.0</TargetFramework>
4974+
<RequiresDockerDependency>All</RequiresDockerDependency>
4975+
<SampleName>Samples.MongoDB</SampleName>
4976+
</PackageVersionSample>
49414977
<PackageVersionSample Include="test\test-applications\integrations\Samples.Elasticsearch.V7\Samples.Elasticsearch.V7.csproj">
49424978
<Properties>ApiVersion=7.0.1;RestoreRecursive=false;BuildProjectReferences=false</Properties>
49434979
<TargetFramework>net48</TargetFramework>

0 commit comments

Comments
 (0)