First, try reading the error message, episode 2: Even programmers see error messages without reading them


I will occasionally note that users don’t read error messages; they just click Cancel. And the phenomenon isn’t just restricted to naïve users. Even programmers ignore error messages. All they see is “Blah blah blah an error occurred.”

For example, there’s this message that appeared on a peer-to-peer discussion group:

I tried to submit an update to our database and I got this error. What does it mean? Is the error on the client or the server?

Opening transaction 34508.
Locking record 14 for update.
Updating record 14 in table BLUECHEESE.
Operation failed.
write: The file or directory is corrupted and unreadable.

When I try to view the record to see whether my update made it, I get this error:

The database may be corrupt; it requires administrator attention.
To protect the database, it has been taken offline.

I’m no expert here, but it looks like a write operation failed because the file or directory is corrupted and unreadable. Since you’re updating a record on the server, it’s probably a corruption problem on the server. (After all, there’s no change taking place on the client. The client is just asking the server to do the work.)

And the second error message seems to suggest that the database may be corrupt and requires administrator attention. As a precautionary measure, the database took itself offline so the corruption can’t spread. I’m pretty sure that’s a server-side thing, since the database is on the server.

Comments (22)
  1. TJ says:

    Even worse is when non-tech-savvy users don’t remember error messages and then ask for help. I got a call from my uncle once asking for help because his friend’s laptop wouldn’t boot up. Supposedly it was getting an "out of memory on line 67" error. And he was surprised when that wasn’t enough information for me to tell him how to fix it.

  2. DWalker59 says:

    Re: Even programmers ignore error messages. All they see is "Blah blah blah an error occurred."

    Sorry to nitpick, but this programmer always reads error messages!  I read quickly, so that may be part of it, but I have a habit of always reading error messages.

  3. Maurits says:

    Well, no wonder the database is corrupt – cheese doesn’t last forever, y’know.

    Error messages are read only by people that understand them.  It sounds like this particular programmer wasn’t a database administrator.  The error text should probably s/it requires administrator attention/please contact the database administrator for the FROMAGERIE database on the HAUTE-CUISINE server/

  4. joe says:

    it is also possible they read the error message, but just didn’t believe.  this after long experience of getting bogus errors back from services – perhaps the most common reason for a "OMG!! YOUR DATABASE IS CORRUPT!!!" error is "the second parameter needs to be OPTION_WRITE instead of OPTION_READ_WRITE"

  5. njkayaker says:

    "It sounds like this particular programmer wasn’t a database administrator."

    Anybody with some experience programming should be able to understand the basic gist of this message.

  6. acq says:

    In the old times of CRT monitors I saw two (then relatively young) programmers who didn’t even try to read error messages of the compiler in their IDE environment since they preferred setting the screen resolution of Windows higher than being able to read the messages. "Aha, I wrote something wrong, whatever" followed by a set of random modifications to avoid errors from appearing.

  7. Anonymous says:

    Errors about corruption are kind of annoying, in that there’s always the slight possibility that the "corruption" is really a broken assumption by a programmer, where they might check for a condition and set an error code on the assumption that the hardware made a mistake.  When there is a legitimate software bug behind it, often nobody wants to look into these issues because the error code gives it a red flag.  "Check your disk, check your memory, leave me alone, this isn’t my problem."

  8. Brad says:

    In my experience, naive users read error messages far more often and far more completely than experienced users.

    I think more time with computers makes you trust error messages (especially generic ones) less and less.

  9. Sid Farkus says:

    I tend to not trust error messages related to "Out of Memory" or "File corrupted" as many times these are catch-all error messages that could be anything from a null reference to an interface that got a 0 where it wanted a 1.

  10. Cheong says:

    Yes, I just failed to read through the error message this Wednesday.

    When I wrote a JSP page, I tried to feed "new Date()" into Calendar.setTime(). The error message set it can’t find a constructer for java.sql.Date without parameter.

    I just don’t read the java.sql.Date part and try searching Java documentation for whether java.util.Date() without parameter is newly introduced or marked as depreciated. (I’m new to Java, so please don’t laugh… :P)

  11. Cooney says:

    I just don’t read the java.sql.Date part and try searching Java documentation for whether java.util.Date() without parameter is newly introduced or marked as depreciated. (I’m new to Java, so please don’t laugh… :P)

    The java.util.Date/java.sql.Date duality is really annoying and has bitten me from time to time.

  12. BC says:

    Even if you perfectly comprehend a message, you can always ask what it means in a larger context.  Someone may know "yes, that means the backup software set the permissions wrong on the file, don’t worry it happens all the time".

    "I don’t love you anymore."  

    "What does that mean?"  

    "It means I am breaking up with you."  

    "What does that mean?"  

    "It means I am moving out."  

    "Does that mean I get the TV?"  

    "No."

  13. Chris Lineker says:

    I have seen a similar phenomenon in online rpg games. Players pick up quests and only read the objective, not the rest of the quest. When they can’t find the things they need to kill or whatever random gizmo they need to collect, they ask in the in game chat channels. But the main quest text tells you exactly where to find them, they just didn’t bother to read past Spiders Slain: 0/6

    I like to amuse myself by pasting the same info from the quest log into the chat channel, you would be surprised how often that works.

  14. Joseph Koss says:

    Chris Lineker:

    What you are describing is definately a user interface issue. Clearly if people do not read required mission texts in online games, then reading them should either not be required (hello HUD arrow), or the text should be continualy and trivialy retrievable at least until the mission is completed (and maybe even longer than that.)

  15. Ralph Sleigh says:

    Joseph Koss:

    I assure you in the game in question it is trivial to retrieve the text until the quest is complete. There are even HUD addons players can install to provide a nice large arrow and huge text telling them what to do next at all times. Some players just can’t read/follow simple instructions it seems.

    Also agreed that database corrupt errors are rarely actual database corruption.

  16. Søren says:

    Error messages are often wrong or incomprehensible or both, so it’s no surprise that many people ignore them.

    Would it seem implausible that the answer to this story might be: "Yeah, it says that sometimes when the load throttler is running in full-duplex no-parity mode. If you enable reverse page caching, it should go away."

  17. Mike Dimmick says:

    Recent problem on server: attempts to read from network drives/UNC paths fail with "Not enough server storage to complete this operation".

    Actual problem appears to be that we now have enough file system filter drivers active that a network IRP doesn’t have enough stack slots.

    ‘Storage’, yes, but the error message makes you think of disk space, and we’ve got plenty of that.

  18. wcoenen says:

    I recently had an error from my svn client (version control software) which basically stated that it was unable to create a temporary file in "c:WINDOWSTemp". Having carefully read the message, I proceeded by checking my local disk space, folder permissions etc.

    It turned out to be an error message from the *server*. This fact was not clear at all until other people started complaining about the same problem.

    Lesson: prefix server error messages with something like "server error: " if you show them in client software.

  19. Stephen Jones says:

    The famous misleading error message was the ‘Out of Memory’ message you got with Windows 3 and 9*. It referred to system resources and had nothing to do with memory, but must have caused a fair outlay on useless hardware.

    A friend of mine lost a couple of hundred pounds through reading error messages. He got the message ‘The program has performed an illegal operation and will now shut down’, presumed that Microsoft had developed a clever way of finding out the software he was using on his computer were a load of pirate disks from Saudi, and went out and bought ‘legal’ versions of the lot.

  20. KenW says:

    @DWalker59: Not to be nitpicky, but I fail to see where Raymond said ALL programmers. Can you point that out to me?

    Oh, wait. I got it. You read all error messages but don’t read blog posts. <g>

  21. Gregory Kong says:

    @Stephen Jones: Then it sounds like he did a good thing anyhows, didn’t he? :)

  22. DWalker59 says:

    @KenW:  Raymond said "Even programmers ignore error messages. All they see is "Blah blah blah an error occurred." "

    The antecedent of "they" in "all they see" is "programmers".  I took that to mean "programmers" instead of "some programmers".  Maybe I was wrong there.  I am a programmer and it’s not true that "all I see" is "blah blah blah an error occured".  So, I disagreed.

    There, parse that!  :-)

Comments are closed.