• Fritz (unregistered)

    It'd be good if there was some way to stop frost comments. They're soooo tedious.

  • Fritz (unregistered) in reply to Fritz

    Damn autocorrect... Frist, frist, frist...

  • (cs) in reply to Fritz
    Fritz:
    Damn autocorrect... Frist, frist, frist...
    Don't you mean Fritz, Fritz, Fritz?
  • Chris H (unregistered)

    Lucky the server wasn't set to UTC

  • (cs)

    And nobody investigated the cron mails they received daily, around lunchtime, saying something along the lines of:

    kill: (21342) - No such process

    I would consider that to be TRWTF.

  • Populus (unregistered) in reply to mikeTheLiar
    mikeTheLiar:
    Don't you mean Fritz, Fritz, Fritz?
    Fritzo, Fritzo, Fritzo.
  • Luc (unregistered)

    At least it was only

    kill
    and not
    kill -9
    or data might have been lost or corrupted.

  • KatrinaS (unregistered) in reply to Luc

    Yeah but a kill 9 might have been logged letting them find the problem quicker

  • Estheppan (unregistered)

    Somebody was knowledgeable enough to set up a cron job but did not know/care about that job being kill with a PID? sounds too far fetched

  • (cs)

    Boss says: "Set up a CRON job to stop (such-and-such a program) on 22nd December."

    Apprentice says: "How do I do that?"

    Boss says: "Here's how to stop a program: first you do (whatever command it was to identify what the process ID is of the program in question, I can't remember), and then when you have its process ID, kill it." (Demonstrates by using "kill" to stop the program in question, which happens to have to ID 21342).

    Apprentice says: "Okay, but how do I set up a CRON job?"

    Boss says: "Use man for instructions, gotta run, got a meeting to go to."

  • (cs) in reply to KatrinaS
    KatrinaS:
    Yeah but a kill 9 might have been logged letting them find the problem quicker
    Unless they use a non-standard kill that does that, no. That signal is the “Die. Now.” one, which you use only when all other options are exhausted. The process can't log what happened, because it is dead. (A supervisor process could log it, but could also have been the one that got hit…)
  • anonymous (unregistered) in reply to dkf
    dkf:
    KatrinaS:
    Yeah but a kill 9 might have been logged letting them find the problem quicker
    Unless they use a non-standard kill that does that, no. That signal is the “Die. Now.” one, which you use only when all other options are exhausted. The process can't log what happened, because it is dead. (A supervisor process could log it, but could also have been the one that got hit…)
    The kill might not be logged, but the application itself could log an unclean startup (abnormal termination?) when it restarted. If the application gracefully shuts down in most critical error situations, this would be a red flag indicating that the application abnormally ended (possibly because someone killed it).
  • (cs)

    Ah yes, this was the WTF with the inexplicable food obsession.

  • Blake Swopes (unregistered)

    OK, so that explains the process dying at 10:12pm, but why was it dying at 12:22?

  • anonymous (unregistered) in reply to Blake Swopes
    Blake Swopes:
    OK, so that explains the process dying at 10:12pm, but why was it dying at 12:22?
    Let me summarise to you how this process works:
    Steve:
    I was called in twice because of this cron job entry:
    12 22 * * * kill 21342
    Turns out, sometimes task id 21342 was our mission-critical flagship application.
    Remy Porter:
    *snip*
  • (cs) in reply to anonymous
    anonymous:
    dkf:
    KatrinaS:
    Yeah but a kill 9 might have been logged letting them find the problem quicker
    Unless they use a non-standard kill that does that, no. That signal is the “Die. Now.” one, which you use only when all other options are exhausted. The process can't log what happened, because it is dead. (A supervisor process could log it, but could also have been the one that got hit…)
    The kill might not be logged, but the application itself could log an unclean startup (abnormal termination?) when it restarted. If the application gracefully shuts down in most critical error situations, this would be a red flag indicating that the application abnormally ended (possibly because someone killed it).

    But that doesn't change the kill vs. kill 9 part.

  • (cs) in reply to Matt Westwood
    Matt Westwood:
    Boss says: "Set up a CRON job to stop (such-and-such a program) on 22nd December."

    Apprentice says: "How do I do that?"

    Boss says: "Here's how to stop a program: first you do (whatever command it was to identify what the process ID is of the program in question, I can't remember), and then when you have its process ID, kill it." (Demonstrates by using "kill" to stop the program in question, which happens to have to ID 21342).

    Apprentice says: "Okay, but how do I set up a CRON job?"

    Boss says: "Use man for instructions, gotta run, got a meeting to go to."

    That, or an experienced admin put it in there as a one-time fix for some issue, and forgot to remove it after it ran.

  • anonymous (unregistered) in reply to chubertdev
    chubertdev:
    anonymous:
    dkf:
    KatrinaS:
    Yeah but a kill 9 might have been logged letting them find the problem quicker
    Unless they use a non-standard kill that does that, no. That signal is the “Die. Now.” one, which you use only when all other options are exhausted. The process can't log what happened, because it is dead. (A supervisor process could log it, but could also have been the one that got hit…)
    The kill might not be logged, but the application itself could log an unclean startup (abnormal termination?) when it restarted. If the application gracefully shuts down in most critical error situations, this would be a red flag indicating that the application abnormally ended (possibly because someone killed it).

    But that doesn't change the kill vs. kill 9 part.

    It does. By default, kill sends SIGTERM, which can be caught by the process, allowing it to exit gracefully. If you use kill -s 9 to send SIGKILL, it can't exit gracefully. SIGKILL cannot be caught, and the process is terminated immediately.

    In the former case, the application might log a SIGTERM followed by a normal shutdown. In the latter case, the process would die before it could log anything, so it would log nothing until it was restarted, at which point it might log that it was restarting from an unclean shutdown.

  • (cs) in reply to operagost

    So the correct fix is for the mission critical process(es) to check if their id is 21342. If so, gracefully exit and restart...Still leaves a tiny window...but should be a mjor improvement....

  • ¯\(°_o)/¯ I DUNNO LOL (unregistered) in reply to Fritz
    Fritz:
    It'd be good if there was some way to stop frost comments. They're soooo tedious.
    Turning up the heat is a great way to get rid of frost. But watch out for yellow frost. Frosty Piss can be a big problem when it melts.
  • (cs) in reply to anonymous
    anonymous:
    It does. By default, kill sends SIGTERM, which can be caught by the process, allowing it to exit gracefully. If you use kill -s 9 to send SIGKILL, it can't exit gracefully. SIGKILL cannot be caught, and the process is terminated immediately.

    In the former case, the application might log a SIGTERM followed by a normal shutdown. In the latter case, the process would die before it could log anything, so it would log nothing until it was restarted, at which point it might log that it was restarting from an unclean shutdown.

    Ahhh, thanks.

  • foo AKA fooo (unregistered) in reply to operagost
    operagost:
    Matt Westwood:
    Boss says: "Set up a CRON job to stop (such-and-such a program) on 22nd December."

    Apprentice says: "How do I do that?"

    Boss says: "Here's how to stop a program: first you do (whatever command it was to identify what the process ID is of the program in question, I can't remember), and then when you have its process ID, kill it." (Demonstrates by using "kill" to stop the program in question, which happens to have to ID 21342).

    Apprentice says: "Okay, but how do I set up a CRON job?"

    Boss says: "Use man for instructions, gotta run, got a meeting to go to."

    That, or an experienced admin put it in there as a one-time fix for some issue, and forgot to remove it after it ran.
    An experienced admin who doesn't know the difference between "cron" and "at"? Well, maybe he also just wanted to check on the process and confused "ps" with "kill", who knows ...

  • foo AKA fooo (unregistered) in reply to anonymous
    anonymous:
    dkf:
    KatrinaS:
    Yeah but a kill 9 might have been logged letting them find the problem quicker
    Unless they use a non-standard kill that does that, no. That signal is the “Die. Now.” one, which you use only when all other options are exhausted. The process can't log what happened, because it is dead. (A supervisor process could log it, but could also have been the one that got hit…)
    The kill might not be logged, but the application itself could log an unclean startup (abnormal termination?) when it restarted. If the application gracefully shuts down in most critical error situations, this would be a red flag indicating that the application abnormally ended (possibly because someone killed it).
    It's not like they lacked indication that the application abnormally ended ...
  • anonymous (unregistered) in reply to foo AKA fooo
    foo AKA fooo:
    anonymous:
    dkf:
    KatrinaS:
    Yeah but a kill 9 might have been logged letting them find the problem quicker
    Unless they use a non-standard kill that does that, no. That signal is the “Die. Now.” one, which you use only when all other options are exhausted. The process can't log what happened, because it is dead. (A supervisor process could log it, but could also have been the one that got hit…)
    The kill might not be logged, but the application itself could log an unclean startup (abnormal termination?) when it restarted. If the application gracefully shuts down in most critical error situations, this would be a red flag indicating that the application abnormally ended (possibly because someone killed it).
    It's not like they lacked indication that the application abnormally ended ...
    It didn't abnormally end. It was told to shut down, and did so. The question of "who or what told it to shut down" is a distinctly different question than "why did it terminate without explanation".
  • tego (unregistered) in reply to martijntje
    martijntje:
    And nobody investigated the cron mails they received daily, around lunchtime, saying something along the lines of:

    kill: (21342) - No such process

    Do you really think that they bothered to configure the application user's mail to go somewhere? Far more likely that it just built up forever in the local mailbox, never to be seen by human eyes.

  • Anonymouso (unregistered) in reply to anonymous
    anonymous:
    Blake Swopes:
    OK, so that explains the process dying at 10:12pm, but why was it dying at 12:22?
    Let me summarise to you how this process works:
    Steve:
    I was called in twice because of this cron job entry:
    12 22 * * * kill 21342
    Turns out, sometimes task id 21342 was our mission-critical flagship application.
    Remy Porter:
    *snip*

    22:12 != 12:22 so yeah why was it dying at 12:22?

  • anonymous (unregistered) in reply to Anonymouso
    Anonymouso:
    anonymous:
    Blake Swopes:
    OK, so that explains the process dying at 10:12pm, but why was it dying at 12:22?
    Let me summarise to you how this process works:
    Steve:
    I was called in twice because of this cron job entry:
    12 22 * * * kill 21342
    Turns out, sometimes task id 21342 was our mission-critical flagship application.
    Remy Porter:
    *snip*

    22:12 != 12:22 so yeah why was it dying at 12:22?

    Who said it was dying at 12:22? I'll help you: it was Remy

  • Anonymouso (unregistered) in reply to anonymous
    anonymous:
    Anonymouso:
    anonymous:
    Blake Swopes:
    OK, so that explains the process dying at 10:12pm, but why was it dying at 12:22?
    Let me summarise to you how this process works:
    Steve:
    I was called in twice because of this cron job entry:
    12 22 * * * kill 21342
    Turns out, sometimes task id 21342 was our mission-critical flagship application.
    Remy Porter:
    *snip*
    22:12 != 12:22 so yeah why was it dying at 12:22?
    Who said it was dying at 12:22? I'll help you: it was Remy
    You lost me. I don't know if you're being serious or not, so I'll sleep on it.
  • HiddenWindshield (unregistered) in reply to Anonymouso
    Anonymouso:
    anonymous:
    Anonymouso:
    anonymous:
    Blake Swopes:
    OK, so that explains the process dying at 10:12pm, but why was it dying at 12:22?
    Let me summarise to you how this process works:
    Steve:
    I was called in twice because of this cron job entry:
    12 22 * * * kill 21342
    Turns out, sometimes task id 21342 was our mission-critical flagship application.
    Remy Porter:
    *snip*
    22:12 != 12:22 so yeah why was it dying at 12:22?
    Who said it was dying at 12:22? I'll help you: it was Remy
    You lost me. I don't know if you're being serious or not, so I'll sleep on it.

    Guys, seriously, this is the internet. Sometimes, you just have to spell it out.

    The actual article stated that the process always died during lunch, and specifically stated "12:22PM" in the last paragraph. However, the crontab line given in the article got the minute and hour reversed, which would should have caused the process kill to occur at 22:12, or 10:12PM.

    tl;dr: anonymization failure.

  • anon (unregistered) in reply to anonymous

    22:12 is a strange time for a lunch

  • hobbes (unregistered)

    Maybe the WTF is that they aren't running a decent network service monitor?

    I'd much rather have nagios tell me that a service has crashed then my boss, or my users.

  • pto (unregistered)

    I don't quite get how the process can have been running for days and then get killed by that cron job. I mean, unless this thing respawns itself each day or does something silly like that, it would have had that same process ID since it started, so why didn't it get killed the first time that cron job ran?

  • Torque (unregistered) in reply to pto

    Presumably there's some sort of scheduled daily restart. Just go with it.

  • (cs) in reply to anon
    anon:
    22:12 is a strange time for a lunch

    They used UTC for their server clocks.

  • anonymous (unregistered) in reply to HiddenWindshield
    HiddenWindshield:
    Anonymouso:
    anonymous:
    Anonymouso:
    anonymous:
    Blake Swopes:
    OK, so that explains the process dying at 10:12pm, but why was it dying at 12:22?
    Let me summarise to you how this process works:
    Steve:
    I was called in twice because of this cron job entry:
    12 22 * * * kill 21342
    Turns out, sometimes task id 21342 was our mission-critical flagship application.
    Remy Porter:
    *snip*
    22:12 != 12:22 so yeah why was it dying at 12:22?
    Who said it was dying at 12:22? I'll help you: it was Remy
    You lost me. I don't know if you're being serious or not, so I'll sleep on it.

    Guys, seriously, this is the internet. Sometimes, you just have to spell it out.

    The actual article stated that the process always died during lunch, and specifically stated "12:22PM" in the last paragraph. However, the crontab line given in the article got the minute and hour reversed, which would should have caused the process kill to occur at 22:12, or 10:12PM.

    tl;dr: anonymization failure.

    My point (all along) was that MOST of the story was invented by Remy Porter and probably all the submitter gave him was the crontab line and a bare couple of facts. Hence my fictional quotes from Steve and Remy Porter. That's probably about how it went. So yes, anonymisation failure.

    (Or, possibly, Steve made the anonymisation error by retyping the crontab line from memory, and misremembered the crontab format.)

  • ideo (unregistered) in reply to hobbes
    hobbes:
    I'd much rather have nagios tell me that a service has crashed then my boss, or my users.
    Really? I'd be quite happy to hear that my boss and/or users had crashed.
  • anonymous (unregistered) in reply to ideo
    ideo:
    hobbes:
    I'd much rather have nagios tell me that a service has crashed then my boss, or my users.
    Really? I'd be quite happy to hear that my boss and/or users had crashed.
    You'd hear that they did, right after you heard that the service crashed. First the service crashes, then the boss or users (I'm assuming it's a logical or, not an exclusive or).
  • Martin (unregistered)

    The REAL WTF is the fact, they have no auto-restart service active!

    Like "daemontools, monit, upstart..."

    I thought it's standard toolset for every system admin and every mission-critical process is monitored!

  • Andrew Au (unregistered)

    This is the best joke I had on DailyWTF this year.

  • Logic Nazi (unregistered) in reply to anonymous
    anonymous:
    ideo:
    hobbes:
    I'd much rather have nagios tell me that a service has crashed then my boss, or my users.
    Really? I'd be quite happy to hear that my boss and/or users had crashed.
    You'd hear that they did, right after you heard that the service crashed. First the service crashes, then the boss or users (I'm assuming it's a logical or, not an exclusive or).
    The opposite of "exclusive" is "inclusive", not "logical". Both exclusive and inclusive "or" are logical functions. Thanks for your attention.
  • anonymous (unregistered) in reply to Logic Nazi
    Logic Nazi:
    anonymous:
    ideo:
    hobbes:
    I'd much rather have nagios tell me that a service has crashed then my boss, or my users.
    Really? I'd be quite happy to hear that my boss and/or users had crashed.
    You'd hear that they did, right after you heard that the service crashed. First the service crashes, then the boss or users (I'm assuming it's a logical or, not an exclusive or).
    The opposite of "exclusive" is "inclusive", not "logical". Both exclusive and inclusive "or" are logical functions. Thanks for your attention.
    Linguistics and logic differ in some ways, one being their use of the word "or". Let me summarise for you with this table.

    LogicalLinguistic Inclusive"or""and/or" Exclusive"exclusive or""or"

    As you can see, "or" occurs twice in this table (unless clarified, i.e. "exclusive or" or "and/or"). One "or" is logical, and the other "or" is linguistic. I meant the logical one.

  • anonymous (unregistered) in reply to Logic Nazi
    Logic Nazi:
    The opposite of "exclusive" is "inclusive", not "logical".
    Also, shame on you for inventing an opposite where I used an implied "and". There is only and exactly one "or" that is logical [and] not exclusive.
  • Kasper (unregistered) in reply to Luc
    Luc:
    At least it was only
    kill
    and not
    kill -9
    or data might have been lost or corrupted.
    That would have been an even bigger WTF. Anybody designing reliable software knows, that you need to be prepared for your program dying at any point in time and be able to recover on the next run without corrupting or losing data. Such an interruption could have happened for so many different reasons, and if you have designed for that, then kill -9 is actually quite graceful.

    The existence of a signal handler does not automagically protect against data corruption. Many library functions are not signal safe, it is so easy to call the wrong function and cause memory corruption.

  • Javelin (unregistered) in reply to dkf
    KatrinaS:
    Yeah but a kill 9 might have been logged letting them find the problem quicker
    Another fun technique is "kill -11".
  • Clair I.T. (unregistered) in reply to anonymous
    anonymous:
    Logic Nazi:
    anonymous:
    ideo:
    hobbes:
    I'd much rather have nagios tell me that a service has crashed then my boss, or my users.
    Really? I'd be quite happy to hear that my boss and/or users had crashed.
    You'd hear that they did, right after you heard that the service crashed. First the service crashes, then the boss or users (I'm assuming it's a logical or, not an exclusive or).
    The opposite of "exclusive" is "inclusive", not "logical". Both exclusive and inclusive "or" are logical functions. Thanks for your attention.
    Linguistics and logic differ in some ways, one being their use of the word "or". Let me summarise for you with this table.

    LogicalLinguistic Inclusive"or""and/or" Exclusive"exclusive or""or"

    As you can see, "or" occurs twice in this table (unless clarified, i.e. "exclusive or" or "and/or"). One "or" is logical, and the other "or" is linguistic. I meant the logical one.

    Is that i.e. "excusive or" exclusive or "and/or", or "exclusive or" and/or "and/or"?

    Your turn.

  • anonymous (unregistered) in reply to Clair I.T.
    Clair I.T.:
    anonymous:
    Logic Nazi:
    anonymous:
    ideo:
    hobbes:
    I'd much rather have nagios tell me that a service has crashed then my boss, or my users.
    Really? I'd be quite happy to hear that my boss and/or users had crashed.
    You'd hear that they did, right after you heard that the service crashed. First the service crashes, then the boss or users (I'm assuming it's a logical or, not an exclusive or).
    The opposite of "exclusive" is "inclusive", not "logical". Both exclusive and inclusive "or" are logical functions. Thanks for your attention.
    Linguistics and logic differ in some ways, one being their use of the word "or". Let me summarise for you with this table.

    LogicalLinguistic Inclusive"or""and/or" Exclusive"exclusive or""or"

    As you can see, "or" occurs twice in this table (unless clarified, i.e. "exclusive or" or "and/or"). One "or" is logical, and the other "or" is linguistic. I meant the logical one.

    Is that i.e. "excusive or" exclusive or "and/or", or "exclusive or" and/or "and/or"?

    Your turn.

    I anticipated this question and the answer is, it doesn't matter. Either is a true statement. I'd have been more specific otherwise.

  • Clair I.T. (unregistered) in reply to anonymous
    anonymous:
    Clair I.T.:
    anonymous:
    Logic Nazi:
    anonymous:
    ideo:
    hobbes:
    I'd much rather have nagios tell me that a service has crashed then my boss, or my users.
    Really? I'd be quite happy to hear that my boss and/or users had crashed.
    You'd hear that they did, right after you heard that the service crashed. First the service crashes, then the boss or users (I'm assuming it's a logical or, not an exclusive or).
    The opposite of "exclusive" is "inclusive", not "logical". Both exclusive and inclusive "or" are logical functions. Thanks for your attention.
    Linguistics and logic differ in some ways, one being their use of the word "or". Let me summarise for you with this table.

    LogicalLinguistic Inclusive"or""and/or" Exclusive"exclusive or""or"

    As you can see, "or" occurs twice in this table (unless clarified, i.e. "exclusive or" or "and/or"). One "or" is logical, and the other "or" is linguistic. I meant the logical one.

    Is that i.e. "excusive or" exclusive or "and/or", or "exclusive or" and/or "and/or"?

    Your turn.

    I anticipated this question and the answer is, it doesn't matter. Either is a true statement. I'd have been more specific otherwise.
    WTF? You answered me? Didn't you notice that you were supposed to ask me a question? I went to all that trouble to set this up (it's ors all the way down), told you it's your turn, and you refused? Sheeps, some people.

  • anonymous (unregistered) in reply to Clair I.T.
    Clair I.T.:
    anonymous:
    Clair I.T.:
    anonymous:
    Logic Nazi:
    anonymous:
    ideo:
    hobbes:
    I'd much rather have nagios tell me that a service has crashed then my boss, or my users.
    Really? I'd be quite happy to hear that my boss and/or users had crashed.
    You'd hear that they did, right after you heard that the service crashed. First the service crashes, then the boss or users (I'm assuming it's a logical or, not an exclusive or).
    The opposite of "exclusive" is "inclusive", not "logical". Both exclusive and inclusive "or" are logical functions. Thanks for your attention.
    Linguistics and logic differ in some ways, one being their use of the word "or". Let me summarise for you with this table.

    LogicalLinguistic Inclusive"or""and/or" Exclusive"exclusive or""or"

    As you can see, "or" occurs twice in this table (unless clarified, i.e. "exclusive or" or "and/or"). One "or" is logical, and the other "or" is linguistic. I meant the logical one.

    Is that i.e. "excusive or" exclusive or "and/or", or "exclusive or" and/or "and/or"?

    Your turn.

    I anticipated this question and the answer is, it doesn't matter. Either is a true statement. I'd have been more specific otherwise.
    WTF? You answered me? Didn't you notice that you were supposed to ask me a question? I went to all that trouble to set this up (it's ors all the way down), told you it's your turn, and you refused? Sheeps, some people.
    Read through the comment thread (which I've helpfully quoted) and you'll see that I (the anonymous) have consistently answered rather than asked questions.

  • Erik (unregistered)

    TRWTF is that they fired someone and then let them work on the crontab...

Leave a comment on “Classic WTF: A Crony Joke”

Log In or post as a guest

Replying to comment #:

« Return to Article