Monday, June 07, 2004

 

Another hard day at work squashing bugs.

It was truly an interesting day at work today. I had not been able to reproduce one of the software bugs assigned to me and today, just two days prior to beta, the bug springs back to life!

At this stage the bug seems to be some creature, like shown in the movie Men In Black. And its back in action.

The problem used to surface only when we ran our component on ports less than 1024 on Solaris. I am sure it would have helped if I would have known the scenario earlier (any moron knows that ports less than 1k are reserved on Unix flavours). Then I found another race condition in our component. The race condition issue was another bug in incubation. I am sure it was waiting for the right time to strike. However, it was luckily discovered earlier (rather than at the customers end to make things worse).

These events resulted in the day stretching in to the night at office. But, I think I have things in control and should be able to squash the bugs out of the repository tomorrow :)

Lessons learned:
- From the port related bug, just because you could not reproduce it, does not mean it does not exist!
- From the race condition issue, you can never be too carefull while writing multi-threaded programs :)

I really appreciate the multi-threading debugging support in VC7. One can freeze/thaw/switch active threads on the click of a button. How I wish good old gdb (5.3) on Solaris would support the same...

I know its no piece of cake writing a debugger. For a wonderful explanation of what is involved read, 'Debugging Application' by John Robbins.

Good night and sweet dreams my best friend the Debugger :)

Labels: ,


Comments: Post a Comment

<< Home

This page is powered by Blogger. Isn't yours?