TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: Dealing with Errors of Omission?

1 pointsby chairleaderover 5 years ago
Dealing with faults is easy: read the stack trace and stop doing what shouldn&#x27;t be happening. But what about errors where something should be happening but isn&#x27;t?<p>For example, I might have a notification system where users are reporting missed messages. They give concrete examples and I can verify that, given the state of the system, the notification should have been sent, but evidently it hasn&#x27;t. This involves multiple systems, changing state and many potential failure points. This is a legacy system written by others, so I have an incomplete mental model of the system, and obviously can&#x27;t reproduce the error.<p>I&#x27;m an experienced software developer, but whenever I encounter an error like the above, my steps include: * Backtrack from where something is supposed to happen looking for potential logical bugs. * Add more logging * repeat<p>It&#x27;s not very efficient! I&#x27;m tempted to throw the system out and replace it, but we all know what kind of a trap that is.<p>So how do engineers here attack a problem like this? Are there activities you do, e.g. building flow diagrams, that help guide you through the process?

1 comment

Nextgridover 5 years ago
I would start where something should be happening but hasn&#x27;t, and then manually check the conditions required to make that happen one by one. Sometimes the conditions themselves rely on something else having happened that hasn&#x27;t, so I start from there. Eventually you&#x27;ll be able to unravel the entire chain of events.