Not so long ago, one of our applications failed when we tried to handle the 32,768th user entry. Though the database was able to manage the request, the application held onto the row’s identity in an Int16 property.  The overwhelming response to the error was “That was really, really dumb.” 

I tend to agree on a couple of accounts.  First and foremost, capacity/growth requirements should have been better measured (especially since the coders decided to go out of their way to use a data type other than the de facto standard Int32.)  Second, complementary data types should have been used in SQL Server and the C# code. 

Understandably, the coders were embarrassed, but the problem was quickly remedied with very little damage done.

Possibly triggered by a recent article I read, this morning I got to thinking, “What if it wasn’t an Int16?  What if the system failed because the coders were only using an Int32?”  I have to think that any acknowledgement that your application has handled over a two billion entries would be welcome — even if it comes in the form of a system failure.  

How’s that for looking at the bright side?

Leave a Reply

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>