Andrew Connell

Chose your datatypes wisely... or you may make holiday travelers very angry

Via /. How? Last week's Christmas travel nightmare for Delta/Comair passengers were ultimately frustrated by a overloaded 16-bit integer. The Cincinnati Post has an article about how a series of three events caused the downfall:A bad holida storm forced the airport to close runways for 15-30 minutes for clearning (not that big of a deal) and forced a ton of de-icing. The airlines realized they were going to run out of the de-icer so they ordered 13 tankers to arrive Wednesday night.The holiday storm worsened and the Ohio Highway Patrol had to close the roads, delaying the de-icers. Eventually the airlines ran dry and had to start delaying and cancelling flights. What does that do? It forces airline crews to be changed around. And...The app the airlines used only allowed for 32,000 crew changes in one calendar day, and thus, when they got the de-icing fluid and started changing crews around to get planes off the ground, the system crashed when someone entered that 32,001 change in. Track where crews are, how long they've been in the air, and what aircraft they were assigned to by hand? That's why we saw the cancellations. What do you learn from this? It's...

Via /.

How? Last week’s Christmas travel nightmare for Delta/Comair passengers were ultimately frustrated by a overloaded 16-bit integer. The Cincinnati Post has an article about how a series of three events caused the downfall:

  1. A bad holida storm forced the airport to close runways for 15-30 minutes for clearning (not that big of a deal) and forced a ton of de-icing. The airlines realized they were going to run out of the de-icer so they ordered 13 tankers to arrive Wednesday night.
  2. The holiday storm worsened and the Ohio Highway Patrol had to close the roads, delaying the de-icers. Eventually the airlines ran dry and had to start delaying and cancelling flights. What does that do? It forces airline crews to be changed around. And…
  3. The app the airlines used only allowed for 32,000 crew changes in one calendar day, and thus, when they got the de-icing fluid and started changing crews around to get planes off the ground, the system crashed when someone entered that 32,001 change in. Track where crews are, how long they’ve been in the air, and what aircraft they were assigned to by hand? That’s why we saw the cancellations.

What do you learn from this? It’s not that bad to use Int32 instead of Int16 in very critical apps… or at least trap the error!!!

Andrew Connell
Developer & Chief Course Artisan, Voitanos LLC. | Microsoft MVP
Written by Andrew Connell

Andrew Connell is a web developer with a focus on Microsoft Azure & Microsoft 365. He’s received Microsoft’s MVP award every year since 2005 and has helped thousands of developers through the various courses he’s authored & taught. Andrew’s the founder of Voitanos and is dedicated to delivering industry-leading on-demand video training to professional developers. He lives with his wife & two kids in Florida.