Skip to content

V3.0.6.3

Latest

Choose a tag to compare

@mohaidr mohaidr released this 05 Sep 21:21
· 5 commits to master since this release

v3.0.6.3

This release fixes incorrect/misleading numbers in the Hosts metrics table, stops a background thread leak that was spamming cooling logs and forcing GC pauses, and makes host throttling recover more smoothly after load drops.

Fixes

Metrics you can trust

  • Host-level totals now match the iteration rows. Previously the Hosts table could disagree with the Iterations table because each calculated success/failure differently. Now host numbers are always the sum of their iterations, so the two views reconcile.
  • No more missing requests at the end of a run. A handful of the last completed requests could be left out of the final metrics snapshot; final counts are now accurate (successful + failed always add up to the total).
  • The final "Completed" status is no longer dropped when you cancel a run. Hosts now correctly show their last known state instead of appearing stuck mid-run.

Live dashboard reliability

  • Fixed a case where a slow metrics update could momentarily stall request processing under high load.
  • Fixed an issue where live metrics could occasionally be published out of order or reflect an inconsistent mid-update state.
  • The live metrics update frequency is now configurable (LPSAppSettings:LiveMetrics:PublishIntervalMs, default 250ms).

Watchdog / throttling

  • Fixed a background thread leak that caused spurious "cooling" log messages and unnecessary GC pauses during a run, even when the system wasn't actually under pressure.
  • Smoother recovery after throttling. When hosts cool back down, LPS now ramps traffic back up gradually per host instead of releasing everything at once, avoiding a load spike right after a throttle event. One host under pressure no longer slows down traffic to other, healthy hosts.
  • Fixed a timing issue where throttling could kick in slightly too early after a host had already recovered.
  • Cooling/throttling log messages are now clearer about why they fired — naming the specific resource (memory/CPU) or hosts responsible.