• (cs)

    huh......

  • (cs)

    I would have written 16 k like this:

     

    string My_16_6k = "kkkkkkkkkkkkkkkk";

    Much cleaner.

  • (cs) in reply to Darax The Good
    Darax The Good:

    I would have written 16 k like this:

     

    string My_16_k = "kkkkkkkkkkkkkkkk";

    Much cleaner.

     

    Oops, Typo...fxd

  • (cs)

    oh don't get me started on logs!!!  Had a guy try to parse log files to repair the data his app broke.  omg.  Horrible times

  • (cs)

    lol too much logging is worse than no logging at all ;-)

  • (cs)

    Uhm... what? I'm confused. What purpose could this serve other than sabotage? Not that I'm accusing anyone of sabotage (always give the benefit of the doubt), but what's going on here?

  • (cs)
    Alex Papadimoulis:
    to ensure that the log properly wrote out 16k ... every single second


    WHY?
  • (cs) in reply to Brendan Kidwell
    Brendan Kidwell:
    Uhm... what? I'm confused. What purpose could this serve other than sabotage? Not that I'm accusing anyone of sabotage (always give the benefit of the doubt), but what's going on here?


    To make sure the buffer gets written to the disk. Writter.flush() anyone?
  • Jason (unregistered) in reply to haveworld

    How was that not noticed during testing?

  • diaphanein (unregistered) in reply to Jason

    The real purpose of this is to make sure that each log message is easy to spot.  You know...between all the asterisks. [;)]

  • (cs)

    Oh, there was sabotage all right. A career has been sabotaged.

  • Dave (unregistered)

    Log...it's big, it's heavy, it's wood. It's better than bad, it's good!

    (Apologies to Ren and Stimpy.)

     

  • (cs) in reply to Jason

    Using some round numbers, this was going on non-stop for 2 months, 3 days, 6 hours, 12 minutes, and 55 seconds before it crashed...at least. One of the real WTFs is that this was going on for so long and no one noticed their server storage slowly grinding to a halt.

  • (cs)

    whatever happened to code reviews?

  • (cs) in reply to Dave

    I do not believe this. Not even the dimmest programmers I know would be able to perform such a feat, without knowing that is was incredibly stupid? And how come it wasn't discovered earlier? Doesn't anyone just skim the logs at that company?


  • (cs)

    This, children, is why you meet "de-hirees" as the come in the door with their last 2 weeks pay and large security guards rather than give them the day (or worse the next 2 weeks) to "clean up" and such.

    Imminent unemployement can make people stupid...

    Frankly I am amazed that he managed to get as close to the server as he did even with a VPN.

    Mind you, this might have concievably been a job security feature... "The system doesn't work right when bob isn't here"... Sure, because no one but bob knows to delete the logs every 3 hours or so...

  • (cs)

    ah!... reminds me when the hard drive of a soon-to-be "de-hired" coworker, became completly corrupt the day before he left!!, this co-worker was nice enough that he spend the last day "working", trying to recover his damaged drive

    arrrrgghh!!!

    and the guy was so worried that any code that he created that wasn't for the company wouldn't be anywhere to be found, like he created the next killer application...

    what a loser!

  • (cs) in reply to Xepol
    Xepol:
    This, children, is why you meet "de-hirees" as the come in the door with their last 2 weeks pay and large security guards rather than give them the day (or worse the next 2 weeks) to "clean up" and such.

    Imminent unemployement can make people stupid...

    Frankly I am amazed that he managed to get as close to the server as he did even with a VPN.

    Mind you, this might have concievably been a job security feature... "The system doesn't work right when bob isn't here"... Sure, because no one but bob knows to delete the logs every 3 hours or so...



    At the two companies I've worked for, VPN access could get you to a Remote Desktop or VNC seesion on your PC at the office, where you could then do anything you could normally do while sitting in front of it.

    As for your "no one but Bob knows how to delete the logs" comment--  It is probably that several developers trade-off "pager duty".. Steve has it this week, Dave next week, etc... Not that "bob" was the only one who was capable of deleting the log files.  He was just the one on call that night.

  • (cs)
    Alex Papadimoulis:

    A bit of investigation the next day revealed the culprit: the LogFillerPlugin class. Written by a "de-hired" coworker, its purpose was surprisingly not sabotage, but to ensure that the log properly wrote out 16k ... every single second ...



    Forgive me for leaving my sarcasm detector at home today.  Is Alex being sarcastic or was this really not sabotage?  I don't even see a bad reason for this being there if not for sabotage..

    Also, when he says this was written by a "de-hired" employee, does that mean the guy was told he had two more weeks or whatever, and in that time period he wrote this code?  In that case, this would almost certainly be sabotage.  Or does it mean that the guy wrote this code with no knowledge that he would soon be fired?  Or, third possibility, he was fired, but before passwords were reset he VPN'ed in and did this?

    There's a lot of ambiguity here...
  • (cs) in reply to Athas

    This guy has to be completely retarded. First off, the whole thing is just stupid. Then, somehow, he knows that creating the string like the way he does is faster than making a for loop to create it. But THEN, even though it's all FILLER, he puts NEWLINES into it at the END OF EVERY LINE.... www.WTF.com.

  • (cs) in reply to kipthegreat
    kipthegreat:

    As for your "no one but Bob knows how to delete the logs" comment--  It is probably that several developers trade-off "pager duty".. Steve has it this week, Dave next week, etc... Not that "bob" was the only one who was capable of deleting the log files.  He was just the one on call that night.


    I believe you completely misunderstood the point that was being made. Try rereading it a few times.

    Sincerely,
    Richard Nixon
  • Wolf550e (unregistered) in reply to Brendan Kidwell
    Brendan Kidwell:
    Uhm... what? I'm confused. What purpose could this serve other than sabotage? Not that I'm accusing anyone of sabotage (always give the benefit of the doubt), but what's going on here?

    Maybe the saboteur he didn't know how to flush to disk (fsync) and thought if he filled a whole file system block it would get written to disk? But why not generate the filler with a loop? Personally, I would've generated pseudo-random filler on demand, to circumvent compression on the storage level. </kidding>

    signed,
    An IT code monkey who has seen too many idiots armed with VM oriented languages.
  • (cs) in reply to Richard Nixon

    He knows enough to make it final, static, and private, but he doesn't know how to flush?

    Actually, that sounds like a few people I lived with in college... +o(

  • (cs) in reply to Volmarias

    and by +o( I mean [+o(]

    I miss you, preview!

  • (cs) in reply to Volmarias

    Oh, you're fucking shitting me. It replaces the goddamned emoticon with HTML that DOESN'T EVEN WORK BECAUSE THE SERVER ESCAPES IT

  • (cs) in reply to MikeB

    MikeB:
    Oh, there was sabotage all right. A career has been sabotaged.

    "You say sabotage, I say sabatage" - William Shatner.

  • (cs) in reply to Volmarias
    Volmarias:
    Oh, you're fucking shitting me. It replaces the goddamned emoticon with HTML that DOESN'T EVEN WORK BECAUSE THE SERVER ESCAPES IT


    That's because god hates people who use emoticons.
  • (cs) in reply to Volmarias
    Volmarias:
    Oh, you're fucking shitting me. It replaces the goddamned emoticon with HTML that DOESN'T EVEN WORK BECAUSE THE SERVER ESCAPES IT


    Welcome to the Daily WTF.
  • (cs) in reply to Volmarias
    Volmarias:
    He knows enough to make it final, static, and private, but he doesn't know how to flush? Actually, that sounds like a few people I lived with in college... +o(
  • (cs) in reply to Volmarias

    Volmarias:
    He knows enough to make it final, static, and private, but he doesn't know how to flush? Actually, that sounds like a few people I lived with in college... +o(

    If your college buddies didn't know how to flush...it wasn't really private then either, was it?

  • (cs) in reply to Jason
    Anonymous:
    How was that not noticed during testing?

    Probably because testing consisted of a run over a short timescale, and no one cared if the log was on the order of a megabyte during testing.

    I laughed long and hard at this one.
  • (cs)

    Yea, I've been beating my brain trying to come up with any non-malicious reason for putting a zillion "*"'s in a log file, and the only other thing I can come up with is utter stupidity. If nothing else, it'd make your logs utterly unreadable, even using grep because the nearest meaningful lines would be 100 lines of *'s away.

    This guy should be taken out and shot.

  • (cs) in reply to IceBox13

    <font size="2" style="font-family: verdana;">

    IceBox13:
    </font>

    <font size="1">

    Volmarias:
    He knows enough to make it final, static, and private, but he doesn't know how to flush? Actually, that sounds like a few people I lived with in college... +o(
    </font>

    <font size="2">If your college buddies didn't know how to flush...it wasn't really private then either, was it?</font>

    <font size="2" style="font-family: verdana;">


    It would certainly make it static, though...

    </font>
  • (cs)

    And here is a prime example of why I follow TDWTF .... to pop my delusional bubbles of what really goes on in the real world, outside of university ......

  • (cs) in reply to BlackTigerX
    BlackTigerX:

    ah!... reminds me when the hard drive of a soon-to-be "de-hired" coworker, became completly corrupt the day before he left!!, this co-worker was nice enough that he spend the last day "working", trying to recover his damaged drive

    arrrrgghh!!!

    and the guy was so worried that any code that he created that wasn't for the company wouldn't be anywhere to be found, like he created the next killer application...

    what a loser!



    We once had a developer add an ACL to his XP box so that Everyone had read-only access to the hard drive, and only local administrators has write access.  That's a fun one to get out of.  knoppix-std wouldn't work because the machine only had SATA drives.
  • (cs) in reply to Richard Nixon
    Richard Nixon:
    kipthegreat:

    As for your "no one but Bob knows how to delete the logs" comment--  It is probably that several developers trade-off "pager duty".. Steve has it this week, Dave next week, etc... Not that "bob" was the only one who was capable of deleting the log files.  He was just the one on call that night.


    I believe you completely misunderstood the point that was being made. Try rereading it a few times.

    Sincerely,
    Richard Nixon


    My bad Mr. President.
  • (cs) in reply to kipthegreat

    kipthegreat:
    Also, when he says this was written by a "de-hired" employee, does that mean the guy was told he had two more weeks or whatever, and in that time period he wrote this code?  In that case, this would almost certainly be sabotage.  Or does it mean that the guy wrote this code with no knowledge that he would soon be fired?  Or, third possibility, he was fired, but before passwords were reset he VPN'ed in and did this?

    You forget the fourth possibility - the guy was fired because he wrote this code.

  • (cs) in reply to HAK

    Why didn't they monitor the server hard drive space?  If a drive hits 80% full, you send an email to the admins...

    Oh, and, yes, emoticons make baby Jesus cry :'(

  • (cs) in reply to kipthegreat
    kipthegreat:
    Richard Nixon:
    kipthegreat:

    As for your "no one but Bob knows how to delete the logs" comment--  It is probably that several developers trade-off "pager duty".. Steve has it this week, Dave next week, etc... Not that "bob" was the only one who was capable of deleting the log files.  He was just the one on call that night.


    I believe you completely misunderstood the point that was being made. Try rereading it a few times.

    Sincerely,
    Richard Nixon


    My bad Mr. President.

    He is not the real president, you know,  he resigned.
  • (cs) in reply to Hugo
    Hugo:

    kipthegreat:
    Also, when he says this was written by a "de-hired" employee, does that mean the guy was told he had two more weeks or whatever, and in that time period he wrote this code?  In that case, this would almost certainly be sabotage.  Or does it mean that the guy wrote this code with no knowledge that he would soon be fired?  Or, third possibility, he was fired, but before passwords were reset he VPN'ed in and did this?

    You forget the fourth possibility - the guy was fired because he wrote this code.

    It's a possibility.  Alex's post doesn't give any indication as to the timeframe of the de-hiring.  This would definitely warrant it.

  • (cs) in reply to tmountjr
    tmountjr:
    Using some round numbers, this was going on non-stop for 2 months, 3 days, 6 hours, 12 minutes, and 55 seconds before it crashed...at least. One of the real WTFs is that this was going on for so long and no one noticed their server storage slowly grinding to a halt.
    I'm not sure about the math you used.

    I get 68Million K / 16K = 2.5Million seconds
    2.5M s = 70833.33 minutes = 1180.55 hours = 49.1898 days

    Or about 2% of the available disk space every day.  Still a pretty slow rate of fill.  And a pretty poor set of testing if you don't know how quickly your resources are going to be depleted.
  • (cs) in reply to WTFer
    WTFer:
    kipthegreat:
    Richard Nixon:
    kipthegreat:

    As for your "no one but Bob knows how to delete the logs" comment--  It is probably that several developers trade-off "pager duty".. Steve has it this week, Dave next week, etc... Not that "bob" was the only one who was capable of deleting the log files.  He was just the one on call that night.


    I believe you completely misunderstood the point that was being made. Try rereading it a few times.

    Sincerely,
    Richard Nixon


    My bad Mr. President.

    He is not the real president, you know,  he resigned.


    "After a president of the U.S. leaves office, the title "President" continues to be applied to that person the rest of his life."
      -- http://en.wikipedia.org/wiki/President_of_the_United_States

    Although, Dick is no longer alive so.. whatever..
  • Anonymous (unregistered)

    The real WTF there is that the type modifiers are backwards. It should be "private static final" not "final static private".

  • (cs) in reply to kipthegreat
    kipthegreat:
    Richard Nixon:
    kipthegreat:

    As for your "no one but Bob knows how to delete the logs" comment--  It is probably that several developers trade-off "pager duty".. Steve has it this week, Dave next week, etc... Not that "bob" was the only one who was capable of deleting the log files.  He was just the one on call that night.


    I believe you completely misunderstood the point that was being made. Try rereading it a few times.

    Sincerely,
    Richard Nixon


    My bad Mr. President.


    Do you see your error in thought now? I think this way of educating you is the most effective.

    Sincerely,
    Richard Nixon
  • (cs) in reply to Anonymous
    Anonymous:
    The real WTF there is that the type modifiers are backwards. It should be "private static final" not "final static private".


    The Java compiler doesn't think they are backwards. Why is that a WTF? Who's definition of forwards and backwards are you using?
  • Andir (unregistered)
    Alex Papadimoulis:

    "APPL IS COMPLTLY FRIED," Damien's emergency pager read, "CANT EVEN LOGON TO SRVR!!!" Damien dragged himself out of bed and VPN'ed on in.

    I don't mean to point out gramatical errors, but "dragged himself out of bed"?  Was it just me or did anyone else have a problem reading this first set of sentences with the combination of poor quoting and then the made word?

  • anon1 (unregistered) in reply to Andir
    Anonymous:
    Alex Papadimoulis:

    "APPL IS COMPLTLY FRIED," Damien's emergency pager read, "CANT EVEN LOGON TO SRVR!!!" Damien dragged himself out of bed and VPN'ed on in.

    I don't mean to point out gramatical errors, but "dragged himself out of bed"?  Was it just me or did anyone else have a problem reading this first set of sentences with the combination of poor quoting and then the made word?

    Actually "dragged" is correct.

    http://dictionary.reference.com/search?q=dragged

     

  • (cs) in reply to Andir
    Anonymous:
    Alex Papadimoulis:

    "APPL IS COMPLTLY FRIED," Damien's emergency pager read, "CANT EVEN LOGON TO SRVR!!!" Damien dragged himself out of bed and VPN'ed on in.

    I don't mean to point out gramatical errors, but "dragged himself out of bed"?  Was it just me or did anyone else have a problem reading this first set of sentences with the combination of poor quoting and then the made word?



    I'm going to go out on a limb and suggest that perhaps English is not your native language?
  • Pointy Haired Manager (unregistered) in reply to DiamondDave

    DiamondDave:
    whatever happened to code reviews?

    Yes, I know that solid engineering practices like code reviews actually shorten the development cycle but we don't have time for them, dammit!!!

    I am fully aware that quality is free but we can't afford to implement that now, dammit!!!

    We are all aware that written requirements that are agreed to and signed off act to keep a project on time and under budget but, dammit, we're already behind schedule and we're bleeding money.

    Dammit, man!  Why can't you come up with a suggestion that would actually help us?  Dammit!!

  • (cs) in reply to Pointy Haired Manager

    Hey, I thought they "de-hired" you!!!

Leave a comment on “Logged to Death”

Log In or post as a guest

Replying to comment #:

« Return to Article