All we need is an easy explanation of the problem, so here it is.

A CHECKDB job has recently started returning error number 2706 for 2 databases (msdb and a user database).
The msdb.dbo.suspect_pages table is empty though. When I run CHECKDB manually it says:
CHECKDB found 0 allocation errors and 0 consistency errors in database ‘msdb’.

I’m not sure if it’s related, but just before the error started appearing we upgraded SQL Server 2016 from CU17 to SP3.

Where can I find information on what error number 2706 means?


How to solve :

I know you bored from this bug, So we are here to help you! Take a deep breath and look at the explanation of your problem. We have many solutions to this problem, But we recommend you to use the first method because it is tested & true method that will 100% work for you.

Method 1

You can get more information here: https://www.sqlservercentral.com/forums/topic/sql2017-cu21-checkdb-with-extended_logical_checks where user Albert Hamidullin reports:

I caught the error, it appears twice with this message "Table ‘fn_available_backups’ does not exist."

Two objects – two messages

It turns out that dbcc does not always correctly understand whether an object is a table or not.

I caught the same errors on other databases, where table types were the culprit

There are two table-valued functions in msdb named fn_available_backups, one in the managed_backup schema, and one in the smart_admin schema.

The error is thrown when EXTENDED_LOGICAL_CHECKS attempts to check for corruption in statistics associated with indexes on the return table variables.

Note: Use and implement method 1 because this method fully tested our system.
Thank you 🙂

All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply