| A community of more than 1,600,000 database professionals and growing |
| | My Problem, or Yours? Today we have a guest editorial as Steve is on vacation. It's the nature of being in IT that things go wrong, often for less than obvious reasons. We start with the ritual question of "what changed?" and get the ritual answer of "nothing", and then we move on to figuring out the source of the problem (knowing that something did change!). The easy ones are easy, the hard ones test the culture because everyone is trying to quickly say "it's not my part of the stack". You know how it goes. Application performance degrades and the devs yell DATABASE! It's unlikely (hmm) to be us, so we yell STORAGE and NETWORKING, because, well, those guys are always causing problems. Soon it's apparent that none of us caused the problem - it must be the code! Not long ago I was working on a project to enhance security for a large company and part of that involved moving some servers to new subnets and tightening the firewall rules. We got all the teams (silos) together, planned the change carefully, and did the implementation. Things went smoothly and all the apps were working fine. Then overnight a database job took 6X the normal run time. The conversation about the slowness went about like this: Database: Nothing changed on our side, job has been steady for months. It's not us. Firewall: The app works, it's not us. Network: The app works, it's not us. My suggestion was that since the db had not changed, it seemed reasonable to think about how the changes to the firewall and network could be the cause. No give at all from those teams, they were certain it was not them. So, we rolled it all back, putting the db back in the old subnet. The next night, performance was back to normal. Faced with proof that the db really was working, the other teams went back and looked again. This time, looking harder, they found that packet inspection was enabled on the new subnet, but not the old one, and it was maxing out the CPU on the switch when the job ran. They turned that off, we moved everything back, and all was good. More recently a server VM I use for remote admin began running really slow. Slow as in 15 minutes to boot. Windows guys blamed me, saying it had to be the tools I installed (seemed unlikely to me). Storage team says everything is normal. Same for the network. Weeks go by (weeks!) and the problem seems to come and go. Turning off AV seemed to help, which to me pointed to some kind of network/storage issue. Finally it happened on a different server and then everyone took a harder look. Turned out there was a bad cable on the switch and because the port was used in some kind of round robin fashion we only saw the problem at random times and it was worse when we did a lot of IO to network storage on that bad cable (like the AV scan and booting). Sometimes it's them, sometimes it's us. I think because the nature of our work involves skewed data, plans falling out of cache, and fragmented indexes - the kinds of changes that don't cause a change management ticket to be created - that we look a little harder. If we everyone says "not me" the only reasonable approach is for everyone to assume "it is me" and look again and keep looking until the cause is identified. It's interesting to think about why that's so often not the case, isn't it? Andy Warren from SQLServerCentral.comJoin the debate, and respond to today's editorial on the forums |
|
| ADVERTISEMENT | | Stop your database being a bottleneck The new Redgate Hub is the shortcut to the latest insights into database development. Constantly updated with invaluable content, it’s the one resource you need to solve problems, share ideas, discover new tool features, and expand your database skills. Discover the Redgate Hub |
| | SQL Clone: Now supporting databases up to 64TB Create copies of production databases and SQL backups in seconds and save up to 99% of disk space using SQL Clone. Redgate’s new tool removes much of the time and resource needed to create and manage database copies, allowing teams to work on local environments to develop, test and diagnose issues faster. Try it free |
|
|
|
| | | Perry Whittle from SQLServerCentral.com In this new level of the stairway, we examine the storage knowledge you need for an AlwaysOn configuration. More » |
| Press Release from Redgate When you can’t get to your data because another application has it locked, a thorough knowledge of SQL Server concurrency will give you the confidence to decide what to do. More » |
| Additional Articles from Microsoft SQL Home This paper shares the approach used to understand and determine: 1) Using ‘Hekaton’ in SQL Server 2014 against RPM, including performance analysis. 2) Understand the specifics involved while migrating to Hekaton. More » |
| kleegeek from SQLServerCentral Blogs One of the biggest differences with managing SQL Server Linux is with drive presentation. With Windows, we’d all scream if... More » |
| matthew.mcgiffen 73574 from SQLServerCentral Blogs I’ve mentioned previously how not having up to date statistics can cause problems in query performance. This post looks at... More » |
|
|
| | Today's Question (by Steve Jones): I have this R code creating a vector. x However, I want a sum of these values and get this: > sum(x) [1] NA What can I do? |
Think you know the answer? Click here, and find out if you are right. We keep track of your score to give you bragging rights against your peers. This question is worth 1 point in this category: R Language. We'd love to give you credit for your own question and answer. To submit a QOTD, simply log in to the Contribution Center. |
|
|
| |
ADVERTISEMENT | The company's new IT initiative, code named Phoenix Project, is critical to the future of Parts Unlimited, but the project is massively over budget and very late. The CEO wants Bill to report directly to him and fix the mess in ninety days or else Bill's entire department will be outsourced. Get your copy from Amazon today. | | |
|
|
|
|
|
| Yesterday's Question of the Day |
| Yesterday's Question (by Steve Jones): I want to run a series of queries from SQLCMD and capture performance statistics from the batch. What parameter should I use? Answer: -p Explanation: The -p parameter will include performance statistics for each result set. Ref: SQLCMD - click here » Discuss this question and answer on the forums |
|
|
| Database Pros Who Need Your Help |
| Here's a few of the new posts today on the forums. To see more, visit the forums. H?ow to identify sql server installation is licensed version or not? - Hi, How to identify sql server installation is licensed version or not. Pls advise. Regards Binu Distributed Availability Group error message - Hello, I am trying to execute below code and for the <primary_server_instance> and <secondary_server_instance> values I have it as "MSSQLCLUSTER" because that's... INFORMATION_SCHEMA views - Just curious, how many of you use the INFORMATION_SCHEMA views? Personally I prefer to use the DMVs like sys.tables, sys.columns,... Dynamic Like - Hi all, I am trying to UPDATE the column SupplementaryInformation in the temp table #temptitle3, where the title is like... Give access to users for certain data in the table or move that set of data to new table - Hi All, I have a question for the senior members to get a solution forthe below issue. Issue: We have a database, and... Copy Only Full Backups - Hi, I know that the copy only option on a Full backup doesn't update the LSN of the database, and therefore... Login only has access to master and tempdb databases - I'm using SQL Server 2014 Standard and starting to wonder if I have a bug. I've created some logins with limited... Can't open RSReportServer config file - Invalid license data. Reinstall is required - Server : SQL server 2014 Standard edition I wanted to open RSReportServer config file as I need to addthe new path of... Bit vs. Int in return code - Hello, Can a bit be used when validating for a return code? Or should int be used? Why or why not? Dynamic date range - Hi there, I need to write a query that displays certain data between the first day of the last month and... Query optimization help - Hi Experts, One of the query is taking long time to execute. Its taking more than 6 mins. Can anyone provide... Handling DBNull When Inserting or Updating Using Stored Query - Hi Guys, I have a question and I'm hoping someone can help me sort out a clean and effective way of... Checking server settings - Hi guys Just after someone checking a few server settings for me to see if I've done anything dim (it's entirely... Load multi tab Excel data into SQL Server table using SSIS - I have a requirement that I need to load an Excel file with multiple tabs into the SQL Server table. The... Foreign Key Heirarchy - Okay, first, I haven't written any real code just test code as I am having a problem just trying to... Introduce rows for ROW_NUMBER Solution - Hi All, Thanks for any help I may receive as this is complex for me and am really struggle a best... BCP upload from a txt file - Hi Guys, I an trying to do a simple upload from a txt file to a table. I know it should... Subreport size limits - Hello, Are there any size limits of a subreport on a report server or on a parent report? I've got a... Using parameters in Execute SQL Task - Hmmm...how to best summarize this... I'm writing an SSDT package that: 1) Clones the table schema of a source table query to... Calculated Query Help - Hi, I am struggling to grasp on how to calculate in SQL where there is a fixed Qty in stock and... |
|
| This email has been sent to [email protected]. To be removed from this list, please click here. If you have any problems leaving the list, please contact the [email protected]. | This newsletter was sent to you because you signed up at SQLServerCentral.com. Feel free to forward this to any colleagues that you think might be interested. If you have received this email from a colleague, you can register to receive it here. | This transmission is ©2017 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved. Contact: [email protected] |
|
|