1. Hi Guest: Welcome to TRIBE, Toronto's largest and longest running online community. If you'd like to post here, or reply to existing posts on TRIBE, you first have to register on the forum. You can register with your facebook ID or with an email address. Join us!

Open source backwards compatibility blows.

Discussion in 'Technology' started by JamesM, Sep 9, 2010.

  1. JamesM

    JamesM TRIBE Member

    holy shit heart attack city.

    So you'd think newer versions of PHP would be backwards compatible with previous code (expression engine in particular). Apparently this isn't the case.

    Install new PHP on IIS7 just to serve our corporate site which was running totally slow on Win2008server IIS7. They say get the latest and greatest php. Got it, installed! yay!.. but....

    corporate site crashes. restart server.

    100+ client websites sites crash and redirected to ftp server instead.

    install old original php version. all sites now shut down.

    restart. everything ok.

    fuck. these open source boys better get it together. I've noticed major problems with jQuery, etc. not being backwards compatible friendly.

    Christ. I hate PHP and MySQL. ASP and MSSQL all the way!
  2. oddmyth

    oddmyth TRIBE Member

    Sounds like someone didn't rtfm.

    As well you may want to look into some best practices like:

    Never install new software on your live site and expect it to work (regardless of vendor).

    Never install new software on your live site and expect it to work (regardless of vendor).

    Never install new software on your live site and expect it to work (regardless of vendor).

    If you don't understand why some code is deprecated then its your job to figure out why.

    In other words, you didn't do your job correctly and paid for it.
  3. JamesM

    JamesM TRIBE Member

    everything worked out.

    at some point, you need to upgrade the software. right? It just plain didn't work.

    Had to reinstall the older version of php to get it working again.

    granted, i'd probably have to upgrade expression engine with php. But from their standpoint. Why would you need to upgrade your software just because php was also upgraded, and rendering your code useless.

    I have similar problems with our saas. Newer jquery versions breaks certain essential features. I haven't had time to recode it all. But it shouldn't have to be that way, really. But it's free software, so that's what you get.
  4. ian

    ian TRIBE Member

    As oddbox said. . . installing a new version of software on a production system with that many clients without testing it first on a test system is simply a huge mistake man. Sorry to be so blunt. That just isn't done in a professional shop.
  5. ian

    ian TRIBE Member

  6. JamesM

    JamesM TRIBE Member

    dude. we're were in the process of migrating from old 2000 servers to 2008 cloud. Theres about 10 servers in total.

    For this php snafu, the set up was nearly identical on the 2000 boxes, save the IIS 7 on the new servers. Php version went and did something with FastCGI (installed it over IIS) which expression engine didn't jive with.

    When going to a new environment like that, you can't nail down 100% of the permutations of what could, or could not go wrong. Yes, we should have upgraded php before we flipped the switch.

    anyway, it wasn't just some cowboy style implementation. But it just did raise questions about backwards compatibility. That's all.
  7. oddmyth

    oddmyth TRIBE Member

    Dude I migrate over 200 servers sometimes twice a year and they literally spend 3 months in pre-production with people doing tests on them before we upgrade our whole farm.

    We've spent over 4 months in pre-production on a new OS roll-out for our workstations simply because of video setting issues glitching up with some software and spending the time with support getting the software patched up.

    Backwards compatibility has nothing to do with reading the release notes and figuring out where you are going to be borked or not. Its simply a matter of precaution.

    Long story short. You are pointing the finger in the wrong direction.
  8. JamesM

    JamesM TRIBE Member

    open source has a tendency to just "do shit" without permission. That's what I'm saying.

    there is no way a php update of .3 version should have shut down the entire IIS. You take those calculated risks when you deal with real software like MSSQL, whatever. You think most companies sit there and test out a service pack for 3 months? no. (yes, if your a fortune company) Especially when that means your company is going to save $10k under a very tight timeline.

    PHP and open source just take to many liberties because they're all fanboys, and they think it should just run this way because it's better, at the expense of what's been already implemented.

    ya know.
  9. jw

    jw TRIBE Member

    ouch , no staging pre-prod environment? Attempting to deploy any type of application to a live/prod system without testing, would equate to my job resignation . Though, the change approval board would shoot it down before it made it that far anyway ;-)

    Maybe you can take this blunder and do some good for the company. Be the one to create a DR system, and a pre-prod lab. Maybe win some brownie points with management?

  10. JamesM

    JamesM TRIBE Member

    oh man. we have 2 tech people in a 6 person company stuck moving 10 servers and 10 tb worth of data.

    The saas/db servers were perfect. properly tested. The rest were pretty much needed to done overnight. They should give us a god damn medal for pulling that shit off. We don't have time resources or money to set up a staging server for the remaining 6 servers.

    sounds like you work for a large company. Congratulations.
  11. oddmyth

    oddmyth TRIBE Member


    we have 2 tech people in a company of 100 which scales up to 150 in less than a months time with over 2000 procs in the farm and several hundred more used daily outside of workstations. I take care of over 100TB of data.

    There's a right way to do things and a wrong way. Doing things the wrong way usually results in less income for the company in the long run, especially if you consistently do them the wrong way.

    In regards to your open source BS. All software has a tendency to just *do shit* most of that shit is either laid out in the release notes or is figured out through testing. If you don't have the capacity to test your FREE software then perhaps a paid solution would work better for you. Either way you can guarantee that you don't get something for nothing.

    Moreover any point release of any software can bog down any other software it could be dependent upon. This goes for open source or otherwise, there is no precursor for that behaviour not happening.

    Lastly what kind of statement is "PHP and open source just take to many liberties because they're all fanboys, and they think it should just run this way because it's better"? I think you have been bamboozled into thinking all software *just works* together, however when you are installing complex systems of multiple versions of software you have to be cautious. This has nothing to do with developers and everything to do with the process your company has decided to undertake with its most valuable resource.

    The truth is I agree with jw in that you should learn from this mistake and come up with a much more solid process of upgrading your servers. Having test hardware, or even virtual test hardware in this day and age is cheap and will save you more money in the end than making blunders like this and then complaining about things that are your own fault.

    Personally it sounds like the engineering of your current solution is way off base and if management can't see that for what it is then the problem will be multiplied greatly as you scale. These are never easy conversations to have, but necessary because if IT is your business then you may want to understand how and when your infrastructure can grow.

Share This Page