The Daily WTF: Curious Perversions in Information Technology
Welcome to TDWTF Forums Sign in | Join | Help
in Search

Auto Commit

Last post 03-19-2012 3:19 PM by morbiuswilters. 21 replies.
Page 1 of 1 (22 items)
Sort Posts: Previous Next
  • 03-15-2012 3:31 PM

    Auto Commit

    Someone nearby just had this problem.

    There is a rules engine. The rules are edited with a GUI by end users. There is a big Save Changes button on the face of the application, that becomes red when there are unsaved changes. Next to it is a dropdown list consisting of "Dev", "Test", "QA" and "Prod", and yes, it does exactly what you think it does.

    It's supposed to only permit saves to the production rule db under certain circumstances.

    Someone guy was requested to make a change to the tool to auto-commit the rules - in whatever state they were in - to the currently selected db, every 10 minutes, when he inadvertently commented something out. This enabled the Production option on the dropdown.The tool passed QA because nobody ever tried to save to the production db.

    Naturally, the end users saw the new db choice, and wanted to work with the latest data, so they selected production.

    Then, as they were making changes, the code was dutifully saving the inconsistent incoherent change, to the selected (production) db.

    Thankfully, we noticed the log entries showing rule updates in production. Fortunately, the application only loads the rules at startup, and so wasn't affected by the crap being dumped to the db. We were able to roll back in time.

    The feature is being removed as we speak.

    Doh!

  • 03-15-2012 3:34 PM In reply to

    Re: Auto Commit

    :twitch: Dodged a bullet there ...

  • 03-15-2012 4:02 PM In reply to

    Re: Auto Commit

    That sounds like a terrible feature; it practically guarantees you'll get inconsistent rules. True, it's only supposed to happen in the development environment, but that can still cause lots of problems. I'm also surprised your rule editing app doesn't have any kind of access control; anyone who can edit in development or QA can commit to production? WTF?

    Let the healing begin!

  • I may not agree with everything Morbs just said, but he expresses himself in a way that is dignified, respectful, polite and non-threatening!
  • 03-15-2012 4:31 PM In reply to

    • KattMan
    • Top 75 Contributor
    • Joined on 10-18-2006
    • Location Unknown, Destination Anywhere
    • Posts 662

    Re: Auto Commit

    morbiuswilters:
    That sounds like a terrible feature; it practically guarantees you'll get inconsistent rules. True, it's only supposed to happen in the development environment, but that can still cause lots of problems. I'm also surprised your rule editing app doesn't have any kind of access control; anyone who can edit in development or QA can commit to production? WTF?

    I'm guessing there was a rule there to prevent that, but this was the one that was commented out and then joyfully commited.

    CAPTCHA? We ain't got no CAPTCHA. We don't need no CAPTCHA. We don't need no stinking CAPTCHA!
  • 03-15-2012 6:42 PM In reply to

    • Zecc
    • Top 25 Contributor
    • Joined on 06-12-2007
    • and hasn't left since.
    • Posts 2,064

    Re: Auto Commit

    snoofle:
    We were able to roll back in time.
    The 80s were awesome!

    Yeah, I've got nothing else to add to the conversation, sorry.  Please continue.

    If mixed metaphors were illegal, I'd be having an indigestion.
    typeof NaN == 'number'
    var ò_ó, ಠ⁔ಠ, ᄒᆺᄒ, ᅙᅳᅙ, ᖛᨓᖜ, ꖴᅩꖴ, ఠᨋఠ; // Naming your variables is serious business
  • 03-16-2012 4:25 AM In reply to

    Re: Auto Commit

    snoofle:
    Someone guy was requested to make a change to the tool to auto-commit the rules - in whatever state they were in - to the currently selected db, every 10 minutes, when he inadvertently commented something out. This enabled the Production option on the dropdown.The tool passed QA because nobody ever tried to save to the production db.
     

    Maybe I'm being ignorant here, but wouldn't it be better to save the data every 10 minutes, rather than commit them? And, like others suggested, have some sort of revision control?

     

  • 03-16-2012 5:48 AM In reply to

    • erikal
    • Top 500 Contributor
    • Joined on 12-23-2011
    • Netherlands
    • Posts 137

    Re: Auto Commit

    Severity One:

    Maybe I'm being ignorant here, but wouldn't it be better to save the data every 10 minutes, rather than commit them? And, like others suggested, have some sort of revision control?

     

    Sure, on planet Utopia. Nasa needs to get their act together so we can all go there in our lifetime.

     

  • 03-16-2012 2:40 PM In reply to

    Re: Auto Commit

    @All: The reason for the auto-save/commit was that the users would work for hours and then forget to hit the big red button (finally, a time when you want them to press the button and they can't be bothered - maybe if they changed the label from SAVE to DO NOT PRESS).

    Yes, it's stupid to save in the middle of a logic change as the stuff in the db is absolutely inconsistent, but it's what they wanted.

    Not my project.

    I just get to listen to the grief they endure.

    Interestingly, my project - a world-o-wtf if ever there was one - is much better - maybe that's why I don't mind this place as much as I ought?

     

  • 03-16-2012 6:22 PM In reply to

    Re: Auto Commit

    snoofle:
    @All: The reason for the auto-save/commit was that the users would work for hours and then forget to hit the big red button (finally, a time when you want them to press the button and they can't be bothered - maybe if they changed the label from SAVE to DO NOT PRESS).
    "You have unsaved changes. Blah blah blah..."

    For the systems I've built, the rule generation app is separate from the rule management app. So, basically, you build the rules and can save "locally" any time you want to checkpoint your work. Once done, the rules are submitted for deployment to QA where they are run against a battery of automated test cases (to make sure rule changes haven't introduced logic errors) before going through acceptance testing and then being deployed separately to production. The rule management also gives the ability to apply certain sets of rule to certain time periods or user accounts or several other situations.. Basically, each system is independent and the rules are simply exported as XML and imported into a different environment, thus giving lots of people the ability to edit rules but few the ability to deploy for testing and even fewer to deploy to production. I realize that you don't have the ability to re-implement the entire process, but I've found it works very well.

    Let the healing begin!

  • I may not agree with everything Morbs just said, but he expresses himself in a way that is dignified, respectful, polite and non-threatening!
  • 03-17-2012 4:22 AM In reply to

    Re: Auto Commit

    morbiuswilters:
    For the systems I've built...

    ... you have (or someone has) understood business process workflow, proper stakeholder analysis to document the roles and responsibilities expected of those participating in such activities and coded a system to facilitate that process.

    i.e.... something that seems to be missing in snoofle's organisation. Many design decisions seem to occur as a fundamental lack of understanding the processes they support, lack of stakeholder engagement (leading to mismatched roles/responsibilities) and process circumvention due to overlooked exceptions[1].

    Or lack of time, money... the usual constraints that results in poor-quality products.

    [1] extensions to the happy path; deviation from the normal workflow. Not "coded exceptions".

  • 03-17-2012 4:16 PM In reply to

    Re: Auto Commit

    Cassidy:

    morbiuswilters:
    For the systems I've built...

    ... you have (or someone has) understood business process workflow, proper stakeholder analysis to document the roles and responsibilities expected of those participating in such activities and coded a system to facilitate that process.

    i.e.... something that seems to be missing in snoofle's organisation.

    Yeah, I just said all of that to make snoofie feel sad for his own situation. I mean, it's true, but the reason I brought it up was to make him envious.

    And for the record, I did all the requirements gathering, software architecting and programming myself.

    Let the healing begin!

  • I may not agree with everything Morbs just said, but he expresses himself in a way that is dignified, respectful, polite and non-threatening!
  • 03-18-2012 7:52 AM In reply to

    Re: Auto Commit

    morbiuswilters:
    I mean, it's true, but the reason I brought it up was to make him envious.
    +1 for correct use of "envious" and not saying "jealous."
    I denounce myself for this post
  • 03-19-2012 10:34 AM In reply to

    Re: Auto Commit

    boomzilla:
    morbiuswilters:
    I mean, it's true, but the reason I brought it up was to make him envious.
    +1 for correct use of "envious" and not saying "jealous."
    It's a noble sentiment, but you're fighting a loosing battle.

    “The whole modern world has divided itself into Conservatives and Progressives. The business of Progressives is to go on making mistakes. The business of Conservatives is to prevent mistakes from being corrected. Even when the revolutionist might himself repent of his revolution, the traditionalist is already defending it as part of his tradition. Thus we have two great types -- the advanced person who rushes us into ruin, and the retrospective person who admires the ruins. He admires them especially by moonlight, not to say moonshine. Each new blunder of the progressive or prig becomes instantly a legend of immemorial antiquity for the snob. This is called the balance, or mutual check, in our Constitution.”

    -- G. K. Chesterton
  • 03-19-2012 12:19 PM In reply to

    Re: Auto Commit

    PedanticCurmudgeon:
    but you're fighting a loosing battle.
     

    Loosening.

     

    So, what does it loosen?


    In complex analysis, a meromorphic function on an open subset D of the complex plane is a function that is holomorphic on all D except a set of isolated points

  • 03-19-2012 12:49 PM In reply to

    Re: Auto Commit

    dhromed:

    PedanticCurmudgeon:
    but you're fighting a loosing battle.
     

    Loosening.

     

    So, what does it loosen?

    You know how I know you didn't read the tag? The losing battle, for those who need it explicitly stated, is trying to get people who can't even spell "lose" correctly to choose words that precisely express their meaning.

    “The whole modern world has divided itself into Conservatives and Progressives. The business of Progressives is to go on making mistakes. The business of Conservatives is to prevent mistakes from being corrected. Even when the revolutionist might himself repent of his revolution, the traditionalist is already defending it as part of his tradition. Thus we have two great types -- the advanced person who rushes us into ruin, and the retrospective person who admires the ruins. He admires them especially by moonlight, not to say moonshine. Each new blunder of the progressive or prig becomes instantly a legend of immemorial antiquity for the snob. This is called the balance, or mutual check, in our Constitution.”

    -- G. K. Chesterton
  • 03-19-2012 12:55 PM In reply to

    Re: Auto Commit

    PedanticCurmudgeon:
    You know how I know you didn't read the tag? The losing battle, for those who need it explicitly stated, is trying to get people who can't even spell "lose" correctly to choose words that precisely express their meaning.
    I still don't get it, please explain your joke some more in excruciating detail.
      <-  I couldn't make my shit work, so here's a Godzilla head.
  • 03-19-2012 12:58 PM In reply to

    Re: Auto Commit

    blakeyrat:
    http://www.youtube.ug/watch?v=aIbMWzeGORQ#t=21m20s
    Wow. A Ugandan TLD. What will they think of next?
    I denounce myself for this post
  • 03-19-2012 1:03 PM In reply to

    Re: Auto Commit

    boomzilla:
    blakeyrat:
    http://www.youtube.ug/watch?v=aIbMWzeGORQ#t=21m20s
    Wow. A Ugandan TLD. What will they think of next?
    Whatever. I google the video, the video comes, I care not for URLs!
      <-  I couldn't make my shit work, so here's a Godzilla head.
  • 03-19-2012 1:08 PM In reply to

    Re: Auto Commit

    PedanticCurmudgeon:
    You know how I know you didn't read the tag?
     

    I read the tag.

    It appears you didn't notice I double-joked you.


    In complex analysis, a meromorphic function on an open subset D of the complex plane is a function that is holomorphic on all D except a set of isolated points

  • 03-19-2012 1:24 PM In reply to

    Re: Auto Commit

    dhromed:

    PedanticCurmudgeon:
    You know how I know you didn't read the tag?
     

    I read the tag.

    It appears you didn't notice I double-joked you.

    No, but I did manage to annoy Blakey, so there's always that.

    “The whole modern world has divided itself into Conservatives and Progressives. The business of Progressives is to go on making mistakes. The business of Conservatives is to prevent mistakes from being corrected. Even when the revolutionist might himself repent of his revolution, the traditionalist is already defending it as part of his tradition. Thus we have two great types -- the advanced person who rushes us into ruin, and the retrospective person who admires the ruins. He admires them especially by moonlight, not to say moonshine. Each new blunder of the progressive or prig becomes instantly a legend of immemorial antiquity for the snob. This is called the balance, or mutual check, in our Constitution.”

    -- G. K. Chesterton
  • 03-19-2012 3:13 PM In reply to

    • tweek
    • Not Ranked
    • Joined on 08-22-2011
    • Posts 71

    Re: Auto Commit

    PedanticCurmudgeon:
    dhromed:

    PedanticCurmudgeon:
    You know how I know you didn't read the tag?
     

    I read the tag.

    It appears you didn't notice I double-joked you.

    No, but I did manage to annoy Blakey, so there's always that.
    A butterfly flaps its wings in some Indian Call Center, and that annoys Blakey. (Aside -- one of my coworkers and my spouse and his girlfriend went to a museum last weekend, and when we got to the stuffed pangolin on display, I said "And in this exhibit, we have the BlakeyRat." Both other people did the Fry "Not sure if" face. He and I laughed, especially after I threatened to poke it with a stick to hear its rant.) This one's my favorite grammar rant. Hyperbole and a half -- the Alot. I wish someone would make an Alot I could keep in my cube. "You like this Alot? Huh? Is this the Alot you're talking about?" If only I cared enough to learn to sew fake fur.
  • 03-19-2012 3:19 PM In reply to

    Re: Auto Commit

    tweek:
    (Aside -- one of my coworkers and my spouse and his girlfriend went to a museum last weekend, and when we got to the stuffed pangolin on display, I said "And in this exhibit, we have the BlakeyRat." Both other people did the Fry "Not sure if" face. He and I laughed, especially after I threatened to poke it with a stick to hear its rant.)
    Man, Blakeyrat is living rent-free in your head.

    tweek:
    What does Hyperbole and a Half have to do Blakey?

    Let the healing begin!

  • I may not agree with everything Morbs just said, but he expresses himself in a way that is dignified, respectful, polite and non-threatening!
Page 1 of 1 (22 items)
Powered by Community Server (Non-Commercial Edition), by Telligent Systems