View Single Post
  #147   Report Post  
Dave Hinz
 
Posts: n/a
Default

On Thu, 02 Jun 2005 11:42:05 -0000, Robert Bonomi wrote:
In article ,
Dave Hinz wrote:
On Tue, 31 May 2005 22:35:31 -0000, Robert Bonomi
wrote:
Only to
find that *now* that the crime is happening "somewhere else". This was
a 'bug' with *legs* -- it MOVED!


Sounds like a timing problem (race condition)?


highly doubtful. *Absolutely* reliable for occuring and at what location in
any particular build.
It was just that inserting/changing the diagnostic instrumentation caused
the location to migrate.


That's what we call 'Heisenberging the system' here. Change it's
behavior by trying to figure out WTF is going on.

Also, hard to get a timing problem, with a single, self-contained, module
that is merely doing a sh*tload of computations.


True, that.

I love finding those.


I figured that the next guy along deserved the information.
Heck, he makes some trivial one-line change, and the "Heisen-bug"


Ah, OK, so that's not a unique term. Figured it couldn't be.

re-appears, and there he goes, trying to figure out how *THAT* change
causes the error "somewhere *totally* unrelated" to what he did.
Possibly even happens _before_ the program gets to the point where he
made the change.


And people wonder why IT folks drink.

My personal favorite is writing error messages like "There is no way
that you should ever see this error message." But, you don't want an
unhandled exception, even if it's "impossible".


I did enough of those, I had a standard format for it:
"Impossible error {{number}}
Internal program logic error.
Notify programming immediately!"


Very nice. I should expand my error message vocabulary accordingly.