Merge bitcoin/bitcoin#26118: log: Use steady clock for bench logging#1215
Merge bitcoin/bitcoin#26118: log: Use steady clock for bench logging#1215DashCoreAutoGuix wants to merge 1 commit intobackport-0.25-batch-469from
Conversation
fabf1cd Use steady clock for bench logging (MacroFake) faed342 scripted-diff: Rename time symbols (MacroFake) Pull request description: Instead of using `0.001` and similar constants to "convert" an int64_t to milliseconds, use the type-safe `Ticks<>` helper. Also, use steady clock instead of system clock, since the durations are used for benchmarking. ACKs for top commit: fanquake: ACK fabf1cd - validation bench output still looks sane. Tree-SHA512: e6525b5fdad6045ca500c56014897d7428ad288aaf375933d3b5939feddf257f6910d562eb66ebcde9186bef9a604ee8d763a318253838318d59df2a285be7c2
|
Warning Rate limit exceeded@DashCoreAutoGuix has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 10 minutes and 58 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (5)
✨ Finishing touches
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
✅ Verification Complete - APPROVEDSummaryThis PR successfully backports Bitcoin Core PR bitcoin#26118, which replaces system time () with steady clock for bench logging to prevent timing issues from system clock adjustments. Bitcoin Commit
Verification Results📊 Statistics
📝 File-by-File AnalysisAll changes are faithful to the Bitcoin commit with appropriate Dash adaptations:
🎯 Dash-Specific AdaptationsThe backport correctly handles Dash-specific code:
✨ Key Changes
ConclusionThe backport is complete, faithful, and correct. All Bitcoin changes have been properly applied with appropriate Dash adaptations. The increased size ratio (148.5%) is due to Dash's additional timing metrics for masternode and governance features, which have been correctly adapted to use steady clock. Status: ✅ APPROVED |
Backports bitcoin#26118
Original commit: 2397574
Changes:
GetTimeMicros()withSteadyClock::now()for benchmarking durationsTicks<MillisecondsDouble>()andTicks<SecondsDouble>()helpers instead of manualMILLI * valueandMICRO * valueconversionsMillisecondsDoubletype alias tosrc/util/time.hBCLog::BENCHMARKcategory (Bitcoin usesBCLog::BENCH)Scope: