0

Updating TFS 2012 RTM to TFS 2012.3, Always an Adventure

by Angela 8. August 2013 09:27

I often get asked to upgrade clients’ TFS instances to newer versions, apply updates, etc. and I swear it never “just works”.  Well, it did once, and it was a server I had literally JUST upgraded personally to TFS 2012 that no one had touched since Smile with tongue out  My challenges in upgrading TFS instances are rarely due to problems with TFS itself.  99% of the time someone got paranoid about an account having ‘sysadmin’ rights on TFS databases, or Administrator rights on one of the TFS servers, and removed it without telling anyone and suddenly boom!  Of course “boom” doesn’t happen until I am in there maintaining the server or performing an upgrade... So, onto my story about update 3.

It seems every time I get error messages back from the TFS install wizard, they’re not documented (don’t get me started on that rant!), no one else has blogged about it, and no one has asked about it in a forum that I can find.  So I’m posting it myself so the next person to run into this doesn’t waste a lot of time troubleshooting.

So, I was upgrading from TFS 2012.0 to TFS 2012.3.  I upgraded the server from TFS 2010 on SQL 2008 to TFS 2012 on SQL 2012 myself back in January of this year, with just a few minor hiccups. I returned to the client recently to do some customizations to discover they had undone some of the security setup I worked on. :: heavy sigh::  After granting my account all the necessary rights to effectively administer TFS I started working on the upgrade to TFS 2012.3.  About 20 minutes in I encountered this fun little error: “Error: TF400167: Installation failed for the package (patch_KB2815416) with the following status 0x80070643”

clip_image002

So to me there were two places to focus for figuring out the issue.  1) figure out what that KB file was and why it was failing to install, and 2) check out the status 0x80070643 and what causes it.

First I tried simply searching on the error message “TF400167 Installation failed for the package”.  A lot of unrelated posts were returned, and a few potentially helpful ones in Japanese.  Alas I do not speak or read that language.  I did see a lot of references to needing to reboot the server in the posts I COULD read, which I did, to no avail.

Then I tried finding any references to KB2815416 and found exactly one, but alas it was not related to the issue I was having. Grrr.

I dug through the error logs, found the one related to that file (KB2815416), and noticed a host of errors including one saying “TFS 2012 timeout while waiting for worker process” and lots of warnings in the TFS logs about issues with the TFS application pool - [Info   @22:09:26.796] Waiting for worker process for application pool Microsoft Team Foundation Server Message Queue Application Pool to stop.  OK then, Guess I’ll restart the app tier and try to install Update 3 again. Still not working. FRACK!

So now I started focusing on the status being thrown back (0x80070643) and I start finding more helpful posts, though most of them related to much older releases of TFS.  Still, gave it a go.  So I’d already rebooted the server, restarted IIS, but then I noted Vicky’s comment about necessary permissions of the user.  Well, I know the user I am logged in as SHOULD have all of those permissions, because it did back in January when I upgraded to TFS 2012, but we’ve been here before with other clients haven’t we?  BINGO! The TFS admin account I was using had its rights revoked on the SQL Server machine and databases. It was a general TFS Admin account that was shared too, not just Angela-consultant account, so that could have been a big problem for someone. Why, WHY does this happen everywhere I go?!?  So I added the TFS admin account back to the server admin group, and gave it sysadmin on the TFS databases, and finished up the upgrade nicely. Good thing I get paid by the hour, I guess.

The only other things I had to do was rebuild the data warehouse (through the admin console) and rebuild the cube to get reports back up and running.  And even though I manually ran the scheduled backup job after the upgrade successfully, when the exact same job ran overnight it failed with error: “TFS database backup job failed with error: TF30040: The database is not correctly configured. Contact your Team Foundation Server administrator.System.Data.SqlClient.SqlException (0x80131904): Could not find stored procedure 'prc_TfsSetTransactionLogMark'.”

Next step is to recreate the backup job and hope that does the trick.

Tags:

ALM | Application Lifecycle Management | TFS | TFS 2012 | TFS Administration | TFS Power Tools | TFS Upgrade | Team Foundation Server | Visual Studio | Visual Studio 2012

0

A Continuation of My Ruminations on the Human Factor of ALM

by Angela 2. August 2013 12:41

Part 1: In the beginning

In my “And Now For Something Completely Different” series, I wax philosophical, almost literally, on human behavior. Now I’m hearing that Bjork song in my head. Anyone else? No? Just me? Ok then, moving on.

Now, before anyone thinks I’m some kind of behavioral science genius, I had quite a few of these realizations while reading “Drive: The Surprising Truth About What Motivates us” by Daniel Pink. Earlier this year at the ALM Summit, it seemed like every other speaker that I went to see recommended that book. And so I gave in and ordered it, hard to argue being that it was around $10 on Amazon. I also then spelunked into a deep rabbit hole of Wikipedia articles, scientific studies, and other related digital publications to see what the real experts had to say. And while nothing I read was specifically aimed at ALM, or even technology per se (except for the use of OSS to disprove money as a primary motivator), I found so many ideas that were EXTREMELY relevant to what I was doing in my day to day job. So this post will focus on the first major point of many that I dog-eared in the book.

Favorite quote #1: The best use of money as a motivator is to pay people enough to take the issue of money off the table. (and ditch the stupid contests!)

Intrinsic motivation. This is one of those things that you KNOW to be true, but you can’t quite put your finger on the why of it. I know I had that reaction whenever contests and incentives were announced at my previous job. I immediately groaned, rolled my eyes, and tried to think of the fastest way to produce the results they wanted while still doing all of the work that I saw as actually being valuable. You know, the stuff I am “graded” on during my end of year review.  Turns out, everyone felt that way too. And we never got the type of results from those silly contests that management was hoping for. It also felt like a form of punishment, as in, if you need to incentivize me with $500 do this, it must REALLY suck! Imagine our enthusiasm to take on that challenge? At the end of the day, money and rewards only get you so far, and too many bonuses and rewards can actually backfire and decrease motivation. People have to be internally motivated to WANT to do something for a strategy to realize long term success. Now I’m not a volunteer, mind you, I get paid very well at my new job, but I did leave a higher paying job to realign my career path with my passions. At the end of the day, the challenge of solving customers’ problems and making their lives better was driving my behavior. My passion is ignited and sustained by fresh, new problems and by having at least a little freedom to be creative in how I do my job. I should note that in most cases, I am speaking specifically from the perspective of a person working in IT so if you are in a vastly different line of work, you may not agree with all of my observations.

So back on track, my first thought was that this is yet another example of where agile is just a natural fit for software development. People enjoy challenge, and novelty, and need an environment that fosters that. Not that Waterfall based environments cannot provide freedom, novelty, and challenge (don’t laugh), but I have yet to find one that provided freedom, let alone the RIGHT kinds of novelty and challenge to promote a motivational environment. For instance, working 80 hour weeks for a month to make a deadline because of poorly planned milestones that you had no early visibility or input into is NOT a motivating challenge. And when the next 6 – 12 months of your life are scheduled, collated, and written in stone well, there goes freedom and creativity. Your focus now is on making dates, at any cost.

Because Agile and Scrum-based processes focus on self-direction, introspection, and continuous improvement, people get opportunities to constantly evolve and find new and more efficient ways to solve problems. Now that’s FUN. I’ve met few software engineers who don’t respond to that kind of motivation in a VERY positive way. After all, software development is as much of an art as a science. Despite all of the misleading comparisons to building a house, building software requires FAR more creativity and flexibility than framing a McMansion in the suburbs. And making software is HARD. The first time a Scrum instructor (Richard Hundhausen to be specific) uttered those words out loud, I kind of laughed, but then realized just how significant that statement was. Say it out loud with me and really think about it, “software development is HARD”. Sure there are hundreds of frameworks and software patterns out there to help you do it, but at the end of the day knowing how and when to use them, or even when to stray from them, is a really tough skill to master and requires constant recalibration.

Any artist will tell you that being confined by strict rules, and working under a heavily structured rewards and punishment system, stifles their creativity and narrows their focus. Working without freedom and with stifled creativity results in an inferior product, and an unhappy artist. It’s no different for software craftsman. At first I bristled a little at that term, “software craftsman”, but have come to embrace it as being a FAR more accurate label for what we do. Software is not churned out using repetitive and unchanging patterns like a Whopper. It relies as much on the right-brain as it does the left, and if it doesn’t for you, you might be doing it wrong.

Next we’ll talk about metrics. Hairs on the back of your next standing up? Did you get a little chill just then? I did.

Tags:

Application Lifecycle Management | Agile | Collaboration | Process Methodology | SDLC | development | Scrum

Powered by BlogEngine.NET 2.7.0.0
Original Design by Laptop Geek, Adapted by onesoft