Urgent.News

What's breaking now, across thousands of outlets.

Tech

A six-line edit made fifteen units stale. The freshness check was working correctly.

Every unit of this project carries a record of its last verification, and each record pins the configuration it was checked against by hashing it. If the configuration changes, the pin no longer reproduces and the record goes stale, which is exactly what you want: a verification result that quietly outlives its inputs is worse than no result. One afternoon I added a six-line block to that…

A small modification to project configuration led to 15 units becoming outdated. The system's freshness check functioned as intended. The edit was six lines long. Each unit had to undergo a full re-run and attach a new record, consuming significant machine time. The error stemmed from the pinning mechanism, which indicated whether a configuration had changed.

The pin represented the entire configuration file, not just the individual unit's block. This misinterpretation caused confusion and led to unnecessary re-runs. The solution involved modifying the pin to include only the unit's block and shared sections, rather than the entire file. This change ensured that an edit to a single unit only stalemates that unit, while edits to shared sections would stalemate all units, as they genuinely depended on those sections. This approach addressed the issue effectively and provided a clear, actionable solution.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Metrics You Get Without Writing Any

67 records in the metrics snapshot. The service wrote 6 of them. 👋 I'm Anton - a software engineer working mostly in PHP/Symfony and Go, currently carving a live PHP monolith into Go services.

  • Service emits 67 metrics by default
  • Nine metrics generated by platform library
  • Metrics include liveness, readiness, and runtime stats

More from Monday 14 September →