New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sp_BlitzBackups should throw an error when it fails #1904

Closed
RonMacNeil opened this Issue Jan 4, 2019 · 4 comments

Comments

Projects
None yet
2 participants
@RonMacNeil
Copy link
Contributor

RonMacNeil commented Jan 4, 2019

Version of the script
Bug in sp_BlitzBackups - (2.10)

What is the current behavior?
When executing sp_BlitzBackups from a SQL Agent job, it does not cause the job to fail if sp_BlitzBackups does not complete successfully.

If the current behavior is a bug, please provide the steps to reproduce.
For example if I were to execute this on a newly installed SQL Server without having first created the linked server named 'BIG-AG':

	EXEC sp_BlitzBackups 
	@PushBackupHistoryToListener = 1, 
	@WriteBackupsToListenerName = 'BIG-AG', 
	@WriteBackupsToDatabaseName = 'Backups-AG', 
	@WriteBackupsLastHours = 3000

We would get this message:

	Pushing backup history to listener
	We need a linked server to write data across. Please set one up for BIG-AG.

But we see that the "Query executed successfully."

What is the expected behavior?
sp_BlitzBackups should throw a SQL error if it cannot execute as required; it should not finish with "Query executed successfully." in these cases.
The fix would be to change the 'severity' value for every call to RAISERROR where it is immediately followed by a RETURN. The RAISERROR should be called with a 'severity' value of 16 instead of 0 as it is done for example in sp_BlitzCache to cause it to throw a SQL error.

Which versions of SQL Server and which OS are affected by this issue? Did this work in previous versions of our procedures?
All versions of SQL Server and of the O/S would be affected by this.
As I am not yet a GitHubian I'm reporting this with the hope someone could have a look at making this change.

@BrentOzar

This comment has been minimized.

Copy link
Member

BrentOzar commented Jan 4, 2019

M-Ron - thanks, but this isn't really free consulting here, unfortunately. You're absolutely welcome to point out the specific lines that need to be changed, and how to change them, but if you need a change made, you do need to roll up your sleeves and help. Is this something you want to tackle?

@RonMacNeil

This comment has been minimized.

Copy link
Contributor Author

RonMacNeil commented Jan 4, 2019

'free consulting', ha! I'd never think of it. The T-SQL change is quite straight forward, I can make the change. I'd just need to get up the GiHub learning curve...

RonMacNeil pushed a commit to RonMacNeil/SQL-Server-First-Responder-Kit that referenced this issue Jan 4, 2019

@RonMacNeil

This comment has been minimized.

Copy link
Contributor Author

RonMacNeil commented Jan 4, 2019

I have created my first Pull request for this issue. Let me know if I missed anything. Thanks!

BrentOzar added a commit that referenced this issue Jan 4, 2019

Merge pull request #1911 from M-Ron/issue_1904
Issue #1904 Change RAISERROR 'severity' to 16 for those that should throw an error…
@BrentOzar

This comment has been minimized.

Copy link
Member

BrentOzar commented Jan 4, 2019

Great job! Congratulations on getting your first (two!) pull requests accepted. Thumbs up! Now go enjoy the beverage of your choice for the weekend. This will be in the Feb release of the First Responder Kit, and we'll credit you in the announcement.

@BrentOzar BrentOzar closed this Jan 4, 2019

BrentOzar added a commit that referenced this issue Jan 28, 2019

2019-01 Release (#1932)
* Updating readme.md for sp_DatabaseRestore

Documenting @ExistingDBAction for https://dba.stackexchange.com/questions/226145/sp-databaserestore-msg-50000.

* 1900 sp_BlitzIndex add histograms

When @TableName is specified and sys.dm_db_stats_histogram is available. Closes #1900.

* #1903 sp_Blitz SQLServerCheckup

Adding filter for that app name. Closes #1903.

* #1905 sp_BlitzIndex remove BOU link

Nothing against BOU, just don't need it in that particular place. Closes #1905.

* #1908 Update copyright dates

Ah, the glamour. Closes #1908.

* Issue #1904 Change RAISERROR 'severity' for that should trigger throw and error.

* Issue #1910 Add SQL Server version check before choosing 'memory grant' as the @BlitzCacheSortOrder.

* Issue #1910 Add temp table creation.

* #1914 sp_BlitzIndex partition error severity

Dropping severity level from 16 to 0 since we're logging it in the result set anyway. Closes #1914.

* Issue 1894 Moved RESTORE HEADERONLY up

* LF line endings

* added some extra checks + corrected some nesting

* rebase and line endings

* Web site commit

Does this fix line endings?

* #1916 sp_Blitz ignore backup on TempDB drive

Closes #1916.

* Auto line endings

Dealing with sp_DatabaseRestore's line endings.

* 1919 sp_Blitz ignoring a few checks for Managed Instances (#1920)

* 1919 sp_Blitz ignoring a few checks for Managed Instances

Working on #1919.

* #1919 sp_Blitz excluding restored databases

When checking backup history. Working on #1919.

* #1919 sp_Blitz ignore some checks on Mgd Instances

Changing RCSI wording on Azure SQL DB. Working on #1919.

* #1921 Sp_BlitzIndex Add Drop and Create Columns to Output (#1923)

Joined output query to #IndexCreateTsql to retrieve the CreateTsql already generated earlier in the script.  Created Drop TSQL based off evaluating what type of index was present.

* #1921 sp_BlitzIndex adding drops (#1924)

Moving drop and create TSQL to the end of mode 2's results. Closes #1921.

* #1925 sp_Blitz AWS RDS detection (#1926)

Don't just rely on EC2 VM name to detect RDS. Also adds a new result noting that checks were skipped. Closes #1925.

* #1927 sp_BlitzIndex skip rdsadmin db (#1928)

GetAllDatabases = 1 fails when it hits rdsadmin because they're referring to the resource db. Closes #1927.

* 2019_01 Release (#1931)

Prep work for the release - changing version numbers, building build scripts.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment