Problems displaying this newsletter? View online.
SQL Server Central
Featured Contents
Question of the Day
The Voice of the DBA
 

Daily Coping Tip

Take a positive action to help in your local community

I also have a thread at SQLServerCentral dealing with coping mechanisms and resources. Feel free to participate.

For many of you out there working in a new way, I'm including a thought of the day on how to cope in this challenging time from The Action for Happiness Coping Calendar. My items will be on my blog, feel free to share yours.

Rolling Back One Bug for Another

I was working with a customer recently that developers software for use by their clients. They work in a DevOps style flow, regularly completing work and sending that to their clients. In one case, they released a hot fix quickly to resolve a bug in their software. In this case, the developers received the report, triage'd the bug, and released the fix in less than a week. Their clients were happy with the response and speed at which the fix was delivered.

Unfortunately, they also released another bug with the fix. The new bug was in an unrelated area of the software, created by separate changes to the code. Now they had a dilemma. The hot fix helped some customers, but the fix also broke some things that other customers cared about.

What do you do here? If you were in charge of this software team, how do you decide what to do? You can pull the patch, but that means some clients might have broken software. You can leave the patch out there, but then you risk other customers being upset by a new bug.

There isn't a good solution here, and the more clients you have, the more likely that you have a large split of customers wanting version 1 versus those wanting version 2. You could rebuild the hotfix to remove the new bug, or you could make another patch that just addresses the second bug. The latter idea is what DevOps would suggest, with a roll forward to a third version of the software. The idea being you keep improving things and fixing bugs as you continue to develop new features. You will release some bugs, but you can fix them quickly.

The downside of this is that if you release too many bugs, customers are loathe to upgrade. When this happens, you start to find yourself having to support many versions of your software. If you respond to customers with special patches that only fix bugs without adding features, you may end up with many more versions than you can track, which can be a real nightmare for developers to manage.

How do you deal with patches causing bugs? I recently re-read a piece by Eric Sink in which he recounts releasing three maintenance versions to his customers in a week. Embarrassing for a version control vendor. It's a good (but long) read, and one that might give you some perspective. We can't squash every bug, and we can't test for everything, but we can work to continue to improve, chasing the dream of bug free software. Or at least, regression bug free software.

Steve Jones - SSC Editor

Join the debate, and respond to today's editorial on the forums

 
 Featured Contents

The Products-Often-Purchased-Together Problem Solved in R

Alex Chamchourine from SQLServerCentral

Learn how to analysis products that might be sold together using R and SQL Server.

Run a SQL Server Agent Job from SSIS

Additional Articles from SQLServerCentral

While we can schedule SQL Server Agent jobs and SSRS report subscriptions, the actual time that we want to run them is dependent on when certain processing in our SSIS packages is completed. We also have certain business rules surrounding launching these jobs that we need to enforce which the built-in scheduling capabilities cannot accommodate. For example, we execute a SQL Server Reporting Services (SSRS) report subscription every Monday at 8:00AM but we want to skip it if the current week coincides with our month end processing which will also execute a report subscription for the same report. Can you provide a solution that we can use to accomplish this?

From the SQL Server Central Blogs - Replicating SQL IN operator in Azure Data Factory

Rayis Imayev from Data Adventures

(2020-May-01) There is a current limitation in Azure Data Factory (ADF) to accept only two conditions for the OR function.You won't be able to specify the following expression to evaluate...

From the SQL Server Central Blogs - Azure Data Factory trigger tip

Daniel Janik from Confessions of a Microsoft Addict

This tip comes from my DBA days working with SQL Agent Job schedules. If you’ve ever worked on a server where many people created job schedules you’ll know exactly...

 

 Question of the Day

Today's question (by Steve Jones - SSC Editor):

 

More Binary CASTing

I have a password for Zoom that I want to encode and send to certain users to limit the chance of unauthorized users joining our meeting. The password from Zoom is a number, in this case, I see this in my control panel for the password: 027489 How should I change this to binary encoding?

Think you know the answer? Click here, and find out if you are right.

 

 

 Yesterday's Question of the Day (by Steve Jones - SSC Editor)

Changing the DMK Password

I have a database on one of my SQL Server 2017 instances with a Database Master Key (DMK). I do not know the password, as someone else created this. How do I reset this password?

Answer: Use the ALTER MASTER KEY command with the FORCE REGENERATE WITH ENCRYPTION BY PASSWORD = '' option

Explanation: There is only one DMK in a database. If you do not know the password, you can use the FORCE REGENERATE option. Ref: ALTER MASTER KEY - https://docs.microsoft.com/en-us/sql/relational-databases/extended-events/sql-server-extended-events-packages?view=sql-server-ver15

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.


SQL Server 2017 - Development
Search All Tables for a specific Value & return the location - Hi Forum, I need to find a Value in a database and have seen some useful code to do this. The only thig is there's littl explanation on how to use it or how it works. Note this helpful link HOW TO FIND A VALUE IN ALL COLUMN OF ALL TABLE IN A db. My […]
SQL Server 2016 - Administration
replication error - we configured  transactional replication  with  account as sql user having sysadmin on sql , but when we tried to run the job getting error Step 1 failedreason: The LogReader subsystem failed to load [see the SQLAGENT.OUT file for details]; The job has been suspended). The step failed.'   How to slove this error ?
Windows update on Virtual SQL Server 2016. - We have a Virtual Server with Windows Server 2012 & SQL 2016 installed on it. When we restart the server to apply windows updates we find that we get logged off the rdp session but the server is still available as it is being monitored via SentryOne, during this time we receive reply on ping. […]
SQL Server 2016 - Development and T-SQL
Self join / row_number() partition number generation based multiple status - Thanks in Advance:) Whenever there is a change in Status or Comment for name_id then we need to consider that record Attached sample data excel with output Table1 data
SSIS Implementation - Hi We would like to implement SSIS Jobs in our new environment for the Data Loading. I am little new to the Environment/capacity planning. So I would need suggestions on how I can implement it. I am aware of the Package creation. Our task here is to load data from CSV/Excel files into Database tables. […]
Network timeout issue with sqlcmd from Linux - Hello experts, Some clients are testing a sqlcmd statement from a Linux host that is trying to run code in a SQL Server database on a Windows host. However, they are using the option -D (uppercase 'D'), which I do not see listed in the documentation for the Windows sqlcmd utility. Their goal is to […]
SQL Server 2012 - T-SQL
An issue with an encrription function - Hi, I am trying to get a Microsoft function to work with a variable. Below as you can see I am using the encryptByPassPhrase function. If I put the number in quotes as shown in the first code shown it works great. However, I would like to use a variable, as in the 2nd one, […]
SQL Server 2019 - Development
Using result of previous function call in SQL Server... or any better idea - I use a recursive CTE ;WITH cte ( -- anchor UNION ALL -- recursive parte ) SELECT * INTO #ReservaREBAtivos FROM cte OPTION(MAXRECURSION 0);?   to get this sample rowset then I use the following query to return the data from the temp table create: SELECT Chave ,Ano ,Idade ,qx ,qy ,qxi ,ix ,vx ,vx_pec […]
How to get column names in the row wise along with their values -
nvarchar - int comparisions - I have an nvarchar column size which has values like 1200 MB How do I compare in a where clause : where size > 1000 in a select clause and get the relevant results Cannot redefine column to int or any other datatype. Thanks
How can I determine relationships or dependencies between tables or queries? - Hello everybody I have inherited a very large database with really many tables, queries and countless stored procedures (SP). There is also no ER model created. Tables and queries are used in SP and are related to each other. And now my question: How can I determine relationships or dependencies between tables or queries? Or […]
SQL Server 2008 - General
Memory Pressure alleviate with proper indexing ? - Dear friends: SQL Server physical machine, critical services, overloaded with several requests, some partitioned tables, although non aligned indexes exist, other indexes appears that are not wiseley choosen, my question is how indexing could help alleviate memory pressure counters or make worst the problem. Thanks for your help and ideas
How to prevent access with TDE ... one user wants to access on the fly. - if we want ensure no one else access database and only app user can get connect. Please suggest options to use on the fly / network along with data need to encrypt.....
Integration Services
Export dtx package but doesnt work on SQL Agent - Hello, So I am trying to get this simple SSIS package to work on SSISDB, it has 1 variable called SheetName, a foreach loop, and within the foreach loop has a data flow task and the foreach loop is using ado.net schema rowset Enumerator. The purpose of this is to get an excel file from […]
COVID-19 Pandemic
Daily Coping 11 May 2020 - Today’s tip is tell someone about why your favorite music means a lot to you. My thoughts: http://voiceofthedba.com/2020/05/11/daily-coping-11-may-2020/
 

 

RSS FeedTwitter

This email has been sent to {email}. To be removed from this list, please click here. If you have any problems leaving the list, please contact the webmaster@sqlservercentral.com. This newsletter was sent to you because you signed up at SQLServerCentral.com.
©2019 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved.
webmaster@sqlservercentral.com

 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -