Commit b3a5068
Add tag-id keyed removal to TagMap and TagMap.Ledger
- Move the lazy tagId->name resolution into the base EntryChange.tag() (final)
and drop Entry's override, so EntryRemoval resolves its name from a tagId too.
- EntryChange.newRemoval(long) / EntryRemoval(long) carry a tag id.
- TagMap.remove(long)/getAndRemove(long): OptimizedTagMap clears the slot by id
(knownRemove) then falls back to the resolved-name bucket lookup; LegacyTagMap
resolves the name and delegates.
- Ledger.remove(long) records an id-keyed removal; fill() replays id removals via
map.remove(long) (slot-aware, no name round-trip), string removals by name.
Tests: unit coverage for remove/getAndRemove by id (slot clear, prior value,
string-set-then-remove-by-id, ledger remove-by-id) plus a fuzz removeById action
woven into the random mix (exercises slot-clear + collided-slot reclaim);
~48k seeded sequences clean.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>1 parent 93263f1 commit b3a5068
3 files changed
Lines changed: 151 additions & 12 deletions
File tree
- internal-api/src
- main/java/datadog/trace/api
- test/java/datadog/trace/api
Lines changed: 64 additions & 12 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
253 | 253 | | |
254 | 254 | | |
255 | 255 | | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
256 | 262 | | |
257 | 263 | | |
258 | 264 | | |
| |||
310 | 316 | | |
311 | 317 | | |
312 | 318 | | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
313 | 323 | | |
314 | 324 | | |
315 | 325 | | |
| |||
331 | 341 | | |
332 | 342 | | |
333 | 343 | | |
334 | | - | |
335 | | - | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
336 | 353 | | |
337 | 354 | | |
338 | 355 | | |
| |||
354 | 371 | | |
355 | 372 | | |
356 | 373 | | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
357 | 378 | | |
358 | 379 | | |
359 | 380 | | |
| |||
583 | 604 | | |
584 | 605 | | |
585 | 606 | | |
586 | | - | |
587 | | - | |
588 | | - | |
589 | | - | |
590 | | - | |
591 | | - | |
592 | | - | |
593 | | - | |
594 | | - | |
595 | 607 | | |
596 | 608 | | |
597 | 609 | | |
| |||
1160 | 1172 | | |
1161 | 1173 | | |
1162 | 1174 | | |
| 1175 | + | |
| 1176 | + | |
| 1177 | + | |
| 1178 | + | |
1163 | 1179 | | |
1164 | 1180 | | |
1165 | 1181 | | |
| |||
1243 | 1259 | | |
1244 | 1260 | | |
1245 | 1261 | | |
1246 | | - | |
| 1262 | + | |
| 1263 | + | |
| 1264 | + | |
| 1265 | + | |
| 1266 | + | |
| 1267 | + | |
1247 | 1268 | | |
1248 | 1269 | | |
1249 | 1270 | | |
| |||
2133 | 2154 | | |
2134 | 2155 | | |
2135 | 2156 | | |
| 2157 | + | |
| 2158 | + | |
| 2159 | + | |
| 2160 | + | |
| 2161 | + | |
| 2162 | + | |
| 2163 | + | |
| 2164 | + | |
| 2165 | + | |
| 2166 | + | |
| 2167 | + | |
| 2168 | + | |
| 2169 | + | |
| 2170 | + | |
| 2171 | + | |
| 2172 | + | |
| 2173 | + | |
| 2174 | + | |
2136 | 2175 | | |
2137 | 2176 | | |
2138 | 2177 | | |
| |||
3426 | 3465 | | |
3427 | 3466 | | |
3428 | 3467 | | |
| 3468 | + | |
| 3469 | + | |
| 3470 | + | |
| 3471 | + | |
| 3472 | + | |
| 3473 | + | |
| 3474 | + | |
| 3475 | + | |
| 3476 | + | |
| 3477 | + | |
| 3478 | + | |
| 3479 | + | |
| 3480 | + | |
3429 | 3481 | | |
3430 | 3482 | | |
3431 | 3483 | | |
| |||
Lines changed: 38 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1062 | 1062 | | |
1063 | 1063 | | |
1064 | 1064 | | |
| 1065 | + | |
1065 | 1066 | | |
1066 | 1067 | | |
1067 | 1068 | | |
| |||
1117 | 1118 | | |
1118 | 1119 | | |
1119 | 1120 | | |
| 1121 | + | |
| 1122 | + | |
| 1123 | + | |
| 1124 | + | |
1120 | 1125 | | |
1121 | 1126 | | |
1122 | 1127 | | |
| |||
1679 | 1684 | | |
1680 | 1685 | | |
1681 | 1686 | | |
| 1687 | + | |
| 1688 | + | |
| 1689 | + | |
| 1690 | + | |
| 1691 | + | |
| 1692 | + | |
| 1693 | + | |
| 1694 | + | |
| 1695 | + | |
| 1696 | + | |
| 1697 | + | |
| 1698 | + | |
| 1699 | + | |
| 1700 | + | |
| 1701 | + | |
| 1702 | + | |
| 1703 | + | |
| 1704 | + | |
| 1705 | + | |
| 1706 | + | |
| 1707 | + | |
| 1708 | + | |
| 1709 | + | |
| 1710 | + | |
| 1711 | + | |
| 1712 | + | |
| 1713 | + | |
| 1714 | + | |
| 1715 | + | |
| 1716 | + | |
| 1717 | + | |
| 1718 | + | |
| 1719 | + | |
1682 | 1720 | | |
1683 | 1721 | | |
1684 | 1722 | | |
| |||
Lines changed: 49 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
4 | 5 | | |
5 | 6 | | |
6 | 7 | | |
| |||
172 | 173 | | |
173 | 174 | | |
174 | 175 | | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
175 | 224 | | |
0 commit comments