SQL Server, PASS, and other data mishaps
Ramblings
How valuable are good employees
Mar 1st
Every successful business knows that its employees are its biggest asset.
As driven employees, we strive to be members of highly functioning teams. Company management wants a highly effective team, everyone would seem to want the same thing yet it can be hard to achieve for a number of reasons. Highly effective employees on great teams are the fundamental bedrock of all successful businesses. But, what is the difference between an average team and an exceptional team? A interesting discussion I had today about these differences prompted this post.
Are you an above average member of your team?
What makes someone a great technical team member, Is it deep knowledge of a technical subject? Business application of said technology? Ability to schmooze the boss? Any of these things can lead a person to be known as a highly effective employee. likewise inability to execute on any of these things (plus a host of others!) can lead someone to be an average performer or worse an under performer.
What are you worth to your team?
Would you consider yourself 10% above average? 20%? , 50%?. I’ve asked around and when most people are asked their self assessments are that they are at least 20% above average. With that thought, as a business manager would you consider a 1% above average (what is average anyway ????) employee desirable?
Consider the math
As a team member at a reasonable sized organization lets say you are responsible for 50 Million$ in information (data for the DBA’s reading this). If you are able to perform at a 1% higher level than average, you should be able to manage about 500K more than an average team member. If somehow you managed the herculean task of being 20% better than average you’d be able to manage 10 Million$ more. Likewise If you have a team member who is performing at a lower level , say 1% below average they’d only be able to manage 49.5 Million$. 20% below average and well, lets just say its a bad day to be responsible for 40 Million$. If you extrapolate those numbers further and compound them yearly for a few years the 1% better employee Vs the 1% underperformer would look something like this
The 1% high performer nets $51,515,050
while the 1% underperforming employee nets $48,514,950
Thats a 3 Million dollar difference for a 1% above average performance. (not bad!!)
End result is the same
The next time you’re debating with your boss about the value you bring to your team, it can be helpful to point out the math especially if you can make a reasonable leap to huge numbers like billions of dollars in assets and 2% above average Vs 1% below. 1 great employee who brings tons to the table and say works at a 5% above average range is potentially worth more than the entire rest of an under-performing team. Of course, asking your boss for a 500K raise might not go over well either but If you are lucky enough to be able to tie your work product to actual company revenue, this is a great way to show the leaders in your organization how important it is to hire good people, even if they are ONLY better than average by 1%
PASS Bylaw Changes
Feb 24th
Cha-Cha-Changes….
We published a set of changes to the PASS bylaws yesterday. Seeing as how Bill Graziano already wrote everything possible and more about these changes and what they mean to the organization I figure Ill save the bits and say that he does a good job summing everything up nicely. Since a lot of this was done before I joined the board, I wasnt involved in some of the discussion about these changes but, I will say that the discussions I was involved with were very detailed and often labored on the finer points of making sausage. Needless to say, I agree 100% with these changes and think they make sense.
Whats next?
Ive got far too many PASS irons in the fire currently so I know I wont have time to do the necessary background work to push for a few additional changes but, at some point I’d like to see PASS go to a fully elected Executive committee. Id like to see the executives be elected board members serving regular two year terms who are then elected by the board for the executive positions. As part of that I also think Id also like to see a general election of our President. How better for the membership to guide the organization than to have a direct say about who should be providing the overall direction.
A tall tale of SQL database corruption
Feb 1st
This corruption story begins like many. Somebody in a server room far far away decided to make a change to a VMware guest machine and that little change rippled through our poor server like a lady Gaga Meat Dress through the VMA’s. Needless to say, it wasnt pretty. The full set of events may never be known by me but it appeared as though our guest server ran out of disk space on the OS and some form of recovery was done.
What we started with was a sql 2005 sp3 server where 1 of the drives was apparently corrupted, So 2 SQL instances wouldnt start. They were both erroring with the message :
Error: 9003, Severity: 20, State: 1.
The log scan number (23:5736:37) passed to log scan in database ‘master’ is not valid. This error may indicate data corruption or that the log file (.ldf) does not match the data file (.mdf). If this error occurred during replication, re-create the publication. Otherwise, restore from backup if the problem results in a failure during startup.
Using trace flag 3608 and startup parameters -c -m I set about to do a normal “disaster” recovery of our server
After rebuilding the master database, everything came online successfully. Then master was recovered from the previous backup. Once master was online I started getting the very same error message about the model database
Error: 9003, Severity: 20, State: 1.
The LSN (11:999:1) passed to log scan in database ‘model’ is invalid
This would prove to be a trying error! it took about several iterations and quite a time to figure out exactly what was going on.
On this server after initial setup we had moved the system databases from the install drive to seperate drives for log and data. When rebuilding master, the system db’s wind up back in the default directories but, after recovering master, the databases are pointed back to the original locations.
Once we got the server started the log scan error message for model showed up so, I began what I thought would be a normal restore of the model database. Unfortunately, there was no way for model to be restored. During the restore command, I got alternating messages that the model database log file was corrupted
Error: 3283, Severity: 16, State: 1.
The file “modellog” failed to initialize correctly. Examine the error logs for more detail
The Error 3283 Would be followed by
the database ‘model’ is marked RESTORING and is in a state that does not allow recovery to be run.
After trying various iterations of deleting the existing model log & database files, copying in the newly created ones and running restores, nothing was working. I began to think the disks were actually having problems, or the backup was bad. After verifying both the backup and the disk config I was left with only a hail mary –> sp_detach_db
After detaching model, I copied in the newly created model files (from the rebuild of master) and ran sp_attach_db on them. Once the Model database was attached the instance started successfully!
After the instance started model was restored from the same backup and the instance restarted. Finally, once the instance came online, it was a standard restore of all the user databases.
Im not sure what about the logscan error in model caused the errors I saw, but, both instances behaved exactly the same. I had to detach and reattach a blank model to make the other instance work as well.
After going through this, I went back and tried to reproduce the problems by intentionally corrupting model and its transaction log in various ways. Every corruption I could cause in model behaved as I expected and a simple restore statement worked. Im still not sure WHY this happened but, hopefully it wont happen again and if it does there wont be so much testing to figure out how to get model online
What is PASS to me, what is it to you?
Jan 24th
For all of the years Ive been involved with PASS it seems like one of the struggles has always been in defining what PASS is. From the very early days, I don’t think PASS has always done a good job describing in words that we can all understand what the goal is. Sure theres lots of management speak, and other marketingspeak on the PASS site but, it has never really done a good job of actually explaining it. I thought id take a quick try at it
<the views that follow are mine alone>
In a single sentence I think Id sum it up like this:
PASS is all about enabling our SQL Community to grow via education and networking.
Details details details
PASS has essentially one job, that job is to enable the many dedicated volunteers across the SQL community to execute on those core values we hear PASS throw about “Connect, Share, Learn” Unfortunately, enabling these volunteers isnt always the most exciting work, and sometimes its down right benign.
PASS Enables this connecting, sharing and learning several different ways
- PASS Summit
- PASS SQL Rally
- 24 Hours of PASS
- SQL Saturday
- Virtual Chapters
- Regular Chapters
Every one of these has at its core a very strong group of (generally) under recognized volunteers working to make them happen. PASS has varying levels of involvement in making these different “community events” happen. Some like the Summit require an extreme level of involvement, others like chapters get very little help. Sometimes the ratio of “glue” used to hold these things together is incorrect and we try to structure things too much in some places and too little in others. I think this is a normal occurrence in most established organizations, the pendulum swings to far one way or the other and needs to be pushed back a bit.
PASS divided
PASS the organization is merely the infrastructure that holds all of these pieces together. PASS the organization is nothing without the community volunteers that put their mark on these different community events.
PASS the community is all of the volunteers that support the organization from the BOD, Speakers, SQL Saturday leaders, chapter leaders, etc. In many cases the same people serve many of these different roles. PASS is not the SQL Community, its merely a single player in the community but, it requires a large part of the active members in the community to be successful.
What do you see PASS as?
Hopefully, Ive done a decent job with this quick explanation of what I see PASS as but, as always Id love to hear from you if you have different views of what PASS is, or more importantly where it should be headed
This year I resolve to…
Jan 11th

If you hadn’t guessed, today’s post is part of this months TSQL Tuesday. This is an interesting topic for me since as a matter of principle I usually refuse to make resolutions and the like around the start of the new year. I like to set goals, and work towards those goals but, I think “resolving” to do something has this nagging way of never turning out how I’d like. It probably has something to do with the fact that I track goals but, typically only think about resolutions at a point in time.
So, this year Ill resolve to document a few of my goals for the year.
This year I only have a few professional goals. Actually, quite a few less than usual. I decided to trim down my professional goals this year to only a couple since they are quite large and very open ended.
- Id like to make PASS as responsive as possible to the needs of our SQL Community. This is simply to say that I plan to do what I feel I was elected to do. Of all the directors I am as well positioned as anyone to make real change that can be seen to the average user of SQL Server. I will need lots of help to make this happen, and I have no problem asking for that help (watch this space SOON for details)
- I want to learn to be a better “manager/leader” It takes a different set of skills to lead people than it does to be a DBA and do technical work. I love the technical work, actually more than the management stuff but, my current roles are requiring more leadership and less technical. I need to do better with the details of this and learn to inspire greatness in my teammates.
That’s it, 2 whole goals for the year, not much by count but, by effort I’d say these might be the some of the loftiest goals I’ve set in a long time…
