Releases: DataDog/ddprof
v0.15.1
Major updates
- A major performance improvement on
ddprof
's RSS usage 📉 - Allocation profiling now follows child processes (even through execs)
This means you can launch ddprof, before a bash script, before a python execution, before a ruby shim... - Live heap performance improvement.
- Better startup instrumentation.
Read the full change log for more updates:
What's Changed
- Do not override weak undefined symbols by @nsavoire in #348
- Use commit hash instead of tag for Abseil by @nsavoire in #345
- Add sarif tools to build image by @nsavoire in #346
- Version bump v0.15.1 by @r1viollet in #349
- Improve string operations by @nsavoire in #347
- Add a debug log to simple malloc (minor test change) by @r1viollet in #301
- Replace tcb/span with std::span by @nsavoire in #303
- Cleanup third party directory by @nsavoire in #304
- Add enum flags by @nsavoire in #305
- Fix loaded libs check by @nsavoire in #306
- Add support for dynamically linked jemalloc by @nsavoire in #308
- Update build images by @nsavoire in #309
- Allow to update CI status by @nsavoire in #310
- Improve ELF segment matching by @nsavoire in #299
- Crash fix - Fix segment matching by @r1viollet in #314
- Valgrind runner fix by @r1viollet in #312
- Fix handling of env variables by profiler lib by @nsavoire in #313
- Update to clang 17 and re-enable clang-tidy checks by @nsavoire in #311
- In use objects - add a profile type by @r1viollet in #316
- Bump version to v0.15.0 by @r1viollet in #317
- Duplicate mappings upon fork by @nsavoire in #315
- Fix elf segment matching (again) by @nsavoire in #318
- Fix small pessimizations by @nsavoire in #320
- Simplify DSO intersection computation by @nsavoire in #321
- Add backpopulate benchmark by @nsavoire in #322
- Log TSC calibration method by @nsavoire in #319
- Minor alpine local compilation fix - patch file read permissions by @r1viollet in #326
- Reduce the flakyiess of simple_malloc by @r1viollet in #324
- Update preset value - cpu_live_heap by @r1viollet in #325
- Fix lost sample reporting by @nsavoire in #328
- Performance live heap profiling - deallocation code path by @r1viollet in #298
- Enable clang-tidy on headers by @nsavoire in #327
- Use perf timestamps to order mmap events with backpopulate by @nsavoire in #330
- Remove unreachable return by @sanchda in #331
- Fix unfortunate copy paste by @nsavoire in #329
- Add timestamp to allocation events using PerfClock by @nsavoire in #332
- Add libdatadog5 and timestamps by @sanchda in #333
- Reduce size of allocation events by @nsavoire in #338
- Tracepoints - add a check for debug fs using pid 1 by @r1viollet in #339
- Remove some dependencies on ddprof::Parser by @nsavoire in #336
- Sanchda/timeline to realtime by @sanchda in #335
- Reduce check_clock_vdso duration by @nsavoire in #341
- Make allocation profiling work after exec by @nsavoire in #342
- Logger rate limiting by @nsavoire in #343
- Refactor symbol overrides by @nsavoire in #344
Full Changelog: v0.14.0...v0.15.1
v0.15.0-rc
This is a pre-release. Please use this release in a non-critical environment.
v0.14.1-rc
This is a pre-release. Please use this release in a non-critical environment.
v0.14.1
This release includes a crash fix for allocation profiling reported by a Go user.
What's Changed
- Jitdump relative path fix by @r1viollet in #295
- Bump version number to 0.14.1 by @r1viollet in #296
- Jitdump fix for wholehost by @r1viollet in #297
Full Changelog: v0.14.0...v0.14.1
v0.14.0-rc
This is a pre-release. Please use this release in a non-critical environment.
v0.14.0
This release includes a stability and performance fix for allocation profiling.
What's Changed
- Improve performance of allocation profiling by @r1viollet in #287
- Bump version number to v0.14.0 by @r1viollet in #291
- Julia uses start_task as the top frame by @aristotelhs in #292
- Allocation profiling fix - pthread TLS storage by @r1viollet in #290
New Contributors
- @aristotelhs made their first contribution 👏 #292
Full Changelog: v0.13.0...v0.14.0
v0.13.0-rc
This is a pre-release. Please use this release in a non-critical environment.
v0.13.0
This is a pre-release. Please use this release in a non-critical environment.
What's Changed
- Report CI failure in github by @nsavoire in #259
- Fix race condition in ddprof.o generation by @nsavoire in #258
- Fix kernel frames configuration by @r1viollet in #264
- Fix small issues with event parser by @nsavoire in #266
- Ensure that temporary process exits normally by @nsavoire in #263
- Fix aggregation of live allocated memory by @nsavoire in #267
- Add bound check on reg number by @nsavoire in #270
- Do not trigger build on non-release tags by @nsavoire in #271
- Minor - allocation profiling error message by @r1viollet in #269
- Remove unused code for child_fd management by @sanchda in #272
- Upgrade third party CLI11 version by @r1viollet in #254
- Label frames with container_id by @r1viollet in #274
- Refactoring of CLI options by @r1viollet in #277
- Handle statsd paths in different format by @r1viollet in #279
- Add a benchmark for the allocation tracker by @r1viollet in #282
- Configure stack size by @r1viollet in #284
- Backpopulate - allow more useful backpopulates by @r1viollet in #285
- Symbol cache fix off by one error by @r1viollet in #281
- ddprof cli - port env var fix by @r1viollet in #286
Full Changelog: v0.12.0...v0.13.0
v0.12.0
✔️ This release delivers an important fix for allocation profiling on arm64
platforms.
What's Changed
- Update help documentation by @r1viollet in #229
- Bump version to 0.12.0 by @r1viollet in #231
- Fix typo - set private field - add some missing includes by @sjanel in #234
- Enable UDS settings by @r1viollet in #233
- Better Rust demangling by @sanchda in #230
- Adjust APIs to libdatadog 2.1.0 by @r1viollet in #237
- Fix formatting issues by @sanchda in #238
- Minor - add a test to backpopulate mechanism by @r1viollet in #228
- Exporter leak fix - Drop request error by @r1viollet in #243
- Feature/leak detection by @r1viollet in #224
- Remove native library mode by @r1viollet in #245
- Move the CI downstream repository to apm-reliability by @r1viollet in #247
- Fix management of file descriptors by @r1viollet in #250
- Minor refactoring - Extract presets by @r1viollet in #246
- Fix: Remove incomplete frames by @r1viollet in #249
- Fix regression for short lived processes by @r1viollet in #251
- Fix segfault on arm64 by @nsavoire in #253
- Mask API key when printing parameters by @r1viollet in #252
New Contributors
Full Changelog: v0.11.1...v0.12.0
v0.12.0-experimental
Release automatically created from an internal pipeline.
What's Changed
- Fix typo - set private field - add some missing includes by @sjanel in #234
- Enable UDS settings by @r1viollet in #233
New Contributors
Full Changelog: v0.12.0-rc...v0.12.0-experimental