What’s New in SQL Server 2019’s sys.messages: More Unannounced Features

SQL Server 2019
19 Comments

The system table sys.messages holds error messages that SQL Server needs to return to end users. When a new build comes out, I love checking this table to see what features Microsoft has coded, but isn’t quite ready to announce yet. When SQL Server 2017 came out, that’s how I unmasked snapshot materialized views, a hidden feature that sadly never got enabled.

The official “What’s New in SQL Server 2019” lists a lot of stuff, but there’s even more they haven’t talked about yet. Here are the new messages, along with my thoughts on a few – and 2628 is going to go down as my absolute favorite message of all time. (Note that yes, there are plenty of typos, grammatical errors, and capitalization mistakes throughout the messages, and no, it’s not because I typed all these out. This is a straight dump from sys.messages, errors preserved as-is.)

And if you like this kind of thing, you’ll also like Aaron Bertrand’s writeup of what’s new (so far) in SQL Server 2019.

New Severity 10 Messages:

Logged to the event log:

  • 663 – Wait for redo catchup for the database “%.*ls” is taking longer than “%d” seconds for the LSN “%S_LSN”.
  • 664 – Aborting the query because it is trying to do logical revert on a readable secondary.
  • 892 – Using shared memory in the memory manager.
  • 893 – Failed to release latch. BUF address %p. Database ID %d. File ID %d. Page %S_PGID.
  • 3462 – Redo observed a higher LSN on the PFS page %S_PGID for transaction ID %S_XID, database ‘%.*ls’ (database ID %d). Redo LSN: %S_LSN, Page: LSN = %S_LSN, PrevPageLSN: %S_LSN. This can happen in the presence of concurrent PFS updates. No user action is required.
  • 3911 – Persistent version store is full. New version(s) could not be added. A transaction that needs to access the version store may be rolled back. Please refer to BOL on how to increase database max size. (Brent says: I’m constantly chuckling when people say robots are taking the jobs of database administrators, and yet with every version, the things we humans have to manage just keeps going up as fast as the robots take away the menial work. You would think that in the year 2018, when introducing a new feature, it’d be able to manage its own size without asking a human being to go read Books Online. Anyhoo, until now, the term “version store” referred to row versions that lived in TempDB, enabled optimistic concurrency, and cleared out on restarts.)
  • 10661 – The refresh operation for all snapshot views failed because there was another refresh operation (either for all or a single snapshot view) in progress. (Brent says: snapshot materialized views were somewhat baked in the product in 2017, but never released. The presence of new messages gives me hope that maybe, just maybe, this feature might still see the light of day.)
  • 10662 – The refresh operation for snapshot view ‘%.*ls’ failed because another refresh operation for the same snapshot view was already in progress.
  • 10663 – The refresh operation for snapshot view ‘%.*ls’ failed because refresh operation for all snapshot views was already in progress.
  • 49921 – Total Log Writer threads: %ld. This is an informational message; no user action is required.
  • 49935 – Enclave of type %d initialized successfully.
  • 27801 – Successfully initialize HPC environment from provider ‘%ld’, device type ‘%ld’ DLL version %ld, and find %ld device(s), %ld of them are used.

Not logged:

  • 3946 – The transaction was aborted because the secondary compute is taking long time to catchup redo.
  • 13809 – Warning: No datasets were found that match the expression ‘%ls’.
  • 15668 – No edge constraints reference table ‘%ls’, or you do not have permissions on referencing tables.
  • 15806 – Statement ID: %s | Query hash: %s | Distributed request ID: %s
  • 49716 – Database override on the category is not supported yet (Server: ‘%.*ls’, Database: ‘%.*ls’, Category: ‘%.*ls’).
  • 49717 – Failed to apply database override on category ‘%.*ls’, because physical db or instance ‘%.*ls’ in server ‘%.*ls’ is currently not in ‘Ready’ or ‘Deactivated’ state.
  • 49718 – The category name is either invalid or not supported yet. Server: ‘%.*ls’. Database: ‘%.*ls’. CategoryName: ‘%.*ls’.
  • 836 – Database ID %d, stale page %S_PGID is under restoring.
  • 890 – Could not create, retrieve or persist a bucket for the Write Page Recorder in database %ls. (Brent says: the WPR also surfaced in a new 2017 error message, but no word about it from Microsoft yet.)
  • 7223 – Warning: Enabling ‘remote proc trans’ is not supported on this instance. Defaulting to disabled.
  • 9113 – Warning: Creating and updating statistics will force FULL SCAN in this version of SQL Server. If persisting sample percent, persisted_sample_percent will be 100. (Brent says: in these messages, “version” usually refers to what you might think of as platform – cloud vs on-premises, or Azure SQL DB vs Managed Instance. It’s interesting that a version would only allow 100% stats scans – to me, that would either imply it was designed for small amounts of data, or else the data might be distributed across multiple servers, and all servers would report all of the data to recombine stats centrally.)
  • 9246 – Distributed Exchange moved %I64u rows and %I64u bytes.
  • 10667 – Warning: Create Index was started with MAXDOP %d. The operation will resume with MAXDOP value %d.
  • 11906 – The operation cannot be completed because a connection to the SBS file could not be made. Please try to run the operation again. If the error persists, please contact support.
  • 12112 – Warning: %ls statement is being forced to run WITH (%S_MSG = ON) because the ELEVATE_%S_MSG database scoped configuration is set to FAIL_UNSUPPORTED. The statement may fail. See the SQL Server error log for more information. (Brent says: folks had asked for the ability to run alter index rebuild with online = on, even on Standard Edition, but just have it fail gracefully or ignore the hint.)
  • 12623 – Clone backup succeeded and is stored in %ls.
  • 12624 – Clone backup failed.
  • 12625 – RESTORE VERIFY failed on the clone backup %ls
  • 12626 – Clone database verification has passed. (Brent says: this and the other clone warnings might imply that cloned databases are becoming first-class citizens like database snapshots, possibly even no longer requiring a DBCC command in order to do a clone. I’m sure Microsoft doesn’t want people running DBCC commands as part of regular workflow in Managed Instances. In a related example, there’s a new system dynamic management object to replace DBCC PAGE.)
  • 12627 – Clone database verification has failed.
  • 12628 – NO_STATISTICS and NO_QUERYSTORE options turned ON as part of VERIFY_CLONE.
  • 12629 – Database ‘%.*ls’ is a cloned database.
  • 13936 – Warning: Edge constraint ‘%.*ls’ on table ‘%.*ls’ was disabled as a result of disabling the index ‘%.*ls’.
  • 19246 – Incomplete message error is returned from SSPI but failed to proceed.
  • 19514 – Failed to wait for primary partner’s transport up while starting up secondary remote replica.
  • 22002 – Wait for the persisted version store page tracker to be enabled for the database “%.*ls” is taking longer than expected.
  • 22004 – [%d]. System transaction with xdes id %S_XID was aborted due to failure injection while moving rows from one page to another.
  • 22220 – Beginning database migration scan for database “%s”. (Brent says: I bet this has to do with Microsoft’s contracts with US immigration authorities, right? That’s what it is. For sure.)
  • 22221 – Database migration scan for database “%s” is complete.
  • 22222 – Database migration scan for database ‘%.*ls’ was aborted. Internal error. Migration scan was aborted.
  • 22227 – TIERED Storage Scanner encountered an error message “%ls” in “%ls”. (Brent says: I’m not SURE why TIERED would be CAPITALIZED unless it’s SOME new kind of ACRYONYM that I’ve never HEARD bEfOrE. Or maybe it’s like SHIELD, some kind of supergroup that will protect our storage.)
  • 33333 – The connection had a send posted for over %d seconds. The connection is suspected hung and is being closed.
  • 33334 – Error while setting up ssl channel. Error code: (%d, %d, %d)
  • 35511 – ABORT
  • 35512 – allow_enclave_computations
  • 41664 – Failed to refresh remote replica configuration for fabric service ‘%ls’. (Brent says: just because you see fabric messages in here doesn’t mean we’re going to get on-premises Managed Instances, but man, it sure would be nice.)
  • 41665 – Failed to resolve DW logical node id for physical database ‘%ls’, which is hosted by compute service: ‘%ls’.
  • 41870 – Dropped %d Orphan Internal Table(s).
  • 47059 – Reason: Unexpected error while swapping the session peer address with the VNET CA.
  • 47060 – Reason: Unexpected error on TDS readhandler, payload length > sni packet buf size
  • 47061 – Reason: Replicated Master is not ready at this point and user connections are disallowed. (Brent says: this is likely only for Azure Managed Instances, which replicate the contents of the master database to other nodes. It’d be awesome if we got that for master, model, and msdb for the boxed product though.)
  • 47062 – Reason: lock timeout expired while looking up interface endpoints list
  • 47063 – Reason: lock timeout expired while looking up interface endpoints list
  • 47064 – Reason: The incoming login VNET metadata was not found in the list of interface endpoints configured
  • 47065 – Reason: Unexpected error on Interface Endpoints access lockdown check
  • 47066 – Reason: Allow All Azure rule can’t be evaluated at DB level Firewall Rule for Interface Endpoints connections
  • 49503 – %.*ls: Page %d:%d could not be moved because it is an off-row persistent version store page.
  • 49504 – Error updating failover proc.
  • 49820 – Managed Server Resource Stats Timer task encountered an error (SQL Error Code: %d).
  • 49821 – Rg Metrics Reporting Timer task encountered an error (SQL Error Code: %d).
  • 49822 – Move Cost Calculation and Reporting Timer task encountered an error (SQL Error Code: %d).

New Severity 13-14 Messages:

Just two, and they’re both logged to the event log:

  • Sev 13: 10660 – The online index build operation was chosen as a deadlock victim over 500 times while attempt to process a single row. Resolve the blocking concurrent operation, and rerun the query. (Brent says: 500. That’s a lot.)
  • Sev 14: 15719 – User does not have necessary permissions (%ls) on current database to execute the stored procedure.

New Severity 15 Messages:

None of which are logged to the event log:

  • 12356 – Comparison, sorting, and manipulation of character strings that use a UTF8 collation is not supported with %S_MSG.
  • 12357 – Indexes on character columns that use a UTF8 collation are not supported with %S_MSG.
  • 16205 – Invalid read length provided in OPENROWSET query. Length has to be greater than zero.
  • 46528 – SHARDED DISTRIBUTION is allowed for SHARD_MAP_MANGER data source only. (Brent says: sharding, you say?)
  • 46532 – Sp_rename is not supported for data pool external table.
  • 46533 – Internal error occurred during distributed operation.
  • 46534 – A maximum of three NULL_VALUES are allowed in the list.
  • 46535 – Unable to retrieve secret [%s] from the secret store.
  • 46536 – Unable to process secret [%s] from the secret store.
  • 10665 – ‘%.*ls’ with DROP_EXISITNG option is not supported with %S_MSG option.
  • 13939 – The target table ‘%.*ls’ of the OUTPUT INTO clause cannot be on either side of an edge constraint relationship. Found edge constraint ‘%.*ls’.
  • 16203 – The option “INLINE=ON” is not valid for this function. Check the documentation for the constructs supported with INLINE option in a function.
  • 16204 – Invalid column ordinal provided for column %d. Column ordinal has to be greater than zero.
  • 46529 – Allowed integer values for FIRST_ROW are between and including 1-101
  • 46530 – External data sources are not supported with type %S_MSG.
  • 46531 – Support for external data sources of type HADOOP is not enabled. To enable, set ‘hadoop connectivity’ to desired value.

New Severity 16 Messages:

Logged to the event log:

  • 27802 – Failed to initialize HPC environment.
  • 939 – Database ‘%.*ls’ cannot be started because it failed to initialize the persistent version store due to error %d. Refer to previous errors in the error log to identify the cause and correct any associated problems. (Brent says: ooo, a new problem to look out for during troubleshooting.)
  • 3464 – An error occurred while resolving the deferred transaction. Transaction outcome: %d, IsDeferred: %ls.
  • 3465 – An error occurred while resolving the deferred transaction. Transaction not found.
  • 9114 – CREATE/UPDATE STATISTICS is not supported on the specified internal table.
  • 10666 – Cannot resume index build as required DOP %d (DOP operation was started with) is not available. Please ensure sufficient DOP is available or abort existing index operation and try again.
  • 12845 – CREATE DATABASE statement failed; cannot specify both CONTAINMENT = PARTIAL and CATALOG_COLLATION.
  • 15708 – Invalid automatic tuning option name.
  • 15709 – Invalid automatic tuning option state.
  • 15710 – Invalid database tuning mode string.
  • 15711 – Cannot acquire shared lock over the database.
  • 15712 – Invalid server tuning mode. (Brent says: Azure SQL DB’s automatic tuning can create indexes, drop them, and force old query plans. Automatic server tuning would be awesome if it ships for the boxed product – for example, try different Cost Threshold or MAXDOP settings. If anyone is listening at Microsoft: maybe start by changing the defaults.)
  • 15713 – Cannot acquire update lock over the database.
  • 15714 – Cannot execute stored procedure on this database type.
  • 15715 – Setting Automatic Tuning option %.*ls to DEFAULT is not allowed while in CUSTOM database tuning mode for database %.*ls.
  • 15717 – Requested automatic tuning configuration is not supported or parameters are invalid.
  • 15718 – Automatic tuning dependancy not met (%ls).
  • 17261 – initdata: No shared memory for kernel buffers.
  • 49402 – Failed to initialize the covering resilient buffer pool extension for foreign file ‘%.*ls’ with HRESULT 0x%x.
  • 49406 – Recovery modes other than full are not supported for Socrates(VLDB) compute. (Brent says: well, look what we have here – a new code name.)
  • 49969 – Cannot initialize the %d enclave for Always Encrypted. Error: %s.
  • 49970 – Loading simulator enclave of type %d for always encrypted.

Not logged:

  • 5345 – Both OFFSET and LENGTH parameters have to be provided together with inline schema (WITH clause).
  • 13808 – Starting offset cannot be larger than the file size.
  • 13958 – Internal Error: Unable to compile MATCH query with derived table or view ‘%.*ls’.
  • 13959 – Introducing edge constraint ‘%.*ls’ on table ‘%.*ls’ may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or modify other constraints.
  • 13960 – Cannot define edge constraint ‘%.*ls’ with cascaded DELETE on table ‘%.*ls’ because the table has an INSTEAD OF DELETE TRIGGER defined on it.
  • 13961 – The alias or identifier ‘%.*ls’ cannot be used in the select list, order by, group by, or having context.
  • 15805 – An error occurred while calling to external extractor ‘%ls’. HRESULT = ‘0x%x’.’
  • 16301 – User ‘%.*ls’ not found.
  • 16302 – Role ‘%.*ls’ not found.
  • 16303 – ‘%.*ls’ is not a feature than can be restricted.
  • 16304 – ‘%.*ls’ is not an object class than can be restricted.
  • 16305 – The database does not support feature restrictions. (Brent says: so cool! We’ve wanted to restrict Developer Edition down to Standard Edition for the longest time, and looks like we’ve got a few related messages in here.)
  • 16306 – Failed to add the feature restriction.
  • 16307 – Failed to drop the feature restriction.
  • 16308 – Invalid parameter ‘%.*ls’: Must be unicode string with length between 1 and 127.
  • 22006 – Version cleanup was aborted for database id ‘%d’ due to database exclusive waiter.
  • 25037 – Cannot publish article ‘%s’ as it contains columns of UTF8 collation. If you are using SQL Server Management Studio to publish columns of non-UTF8 collation and receive this error, use stored procedures to add this article instead.
  • 25038 – Cannot publish column of UTF8 collation.
  • 25039 – Cannot publish column ‘%s’ as its collation is UTF8.
  • 25040 – Cannot publish primary key columns for article ‘%s’ of UTF8 collation.
  • 25041 – Cannot publish clustered index columns for article ‘%s’ of UTF8 collation for indexed views.
  • 25042 – Cannot add column of UTF8 collation to a replicated table.
  • 25043 – Cannot set collation to UTF8 for column that is part of replication.
  • 33199 – Only Active Directory logins can impersonate other Active Directory logins.
  • 39111 – The SQL Server Machine Learning Services End-User License Agreement (EULA) has not been accepted.
  • 40973 – Can not drop database because a failover operation is in progress on the failover group.
  • 40974 – Partner region specified does not match region of partner managed instance.
  • 41668 – Failed to transition to forwarder role for physical database ‘%ls’ (ID %d) of Windows Fabric partition ‘%ls’ (partition ID ‘%ls’).
  • 41924 – All files need to be smaller or equal to 1TB in this edition of Managed Instance. File id: {0}. Size: {1} bytes.
  • 41925 – If DB has multiple data files, all files need to be larger than {0} MB in this edition of Managed Instance. File id: {1}. Size: {2} bytes.
  • 41926 – Secondary filegroup is not supported in this edition of Managed Instance. File id: {0}. Filegroup name: {1}.
  • 41927 – The file name ‘XTP’ is reserved for the files containing In-Memory OLTP data.
  • 41928 – The filegroup name ‘XTP’ is reserved for the filegroup containing In-Memory OLTP data.
  • 41929 – One or more files are not in online state after the restore.
  • 45161 – Managed instance ‘%.*ls’ is busy with another operation. Please try your operation later.
  • 45407 – The operation timed out and failed: ‘%ls’
  • 45408 – Resource not found: ‘%ls’.
  • 45409 – Network resource provider returned following error: ‘%ls’.
  • 45410 – Network resource provider denied access: ‘%ls’.
  • 45411 – Virtual network firewall rules are not currently supported on servers with failover groups configured with automatic failover policy. Please configure the failover groups on the server with manual failover policy.
  • 45412 – Failover Groups configured with an automatic failover policy are currently not supported on servers configured with virtual network firewall rules. Please configure the failover group with manual failover policy.
  • 45413 – Only one Interface endpoint profile is allowed.
  • 45414 – The instance collation cannot be changed on Managed Instance.
  • 45415 – Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).
  • 45416 – Cannot create a Managed Instance with collation ‘%.*ls’. Please use collation ‘SQL_Latin1_General_CP1_CI_AS’ instead.
  • 45417 – Vulnerability Assessment storage container path must be supplied
  • 45418 – The operation failed because the SQL instance had high CPU usage of %.*f%%. The current threshold is %.*f%%. Please wait for it to go down and try again.
  • 45419 – The operation failed because the SQL instance had high log write rate of %.*f%%. The current threshold is %.*f%%. Please wait for it to go down and try again.
  • 45420 – The operation failed because update elastic pool safety checks could not be completed. Details: ‘%ls’.
  • 45421 – The operation failed because a long running transaction was found on the elastic pool. Please wait for the transaction to finish execution and try again.
  • 45422 – The operation failed because the elastic pool had high CPU usage of %.*f%%. The current threshold is %.*f%%. Please wait for it to go down and try again.
  • 45423 – The operation failed because the elastic pool had high log write rate of %.*f%%. The current threshold is %.*f%%. Please wait for it to go down and try again.
  • 46660 – GENERIC
  • 47123 – Creation of system availability group ‘%.*ls’ has failed. this availability group contains system attribute. System AG only can be created before any AGs. Verify specified availability group availability options are correct, then retry the operation.
  • 47124 – Creation of replicated master failed. Only system AG can create replicated master. Verify availability group availability options are correct, then retry the operation.
  • 47125 – Joined system availability group ‘%.*ls’ has failed. Verify there is no other availability group existed, then retry the operation.
  • 47126 – Joined system availability group ‘%.*ls’ has failed. Verify there is no user DBs, then retry the operation.
  • 47127 – Join or Creating system availability group ‘%.*ls’ has failed. This instance is not enabled to create or join system availability.
  • 47128 – Creating system availability group ‘%.*ls’ has failed. For system AG, all databases will be added to system Ag. Remove databases from availability group speicifcation and then retry the operation.
  • 47129 – Build Distributed availability group ‘%.*ls’ has failed. Cannot build Distributed Availability Group on top of System Availability Group. Verify Availability Group’s name, then retry the operation.
  • 47130 – Creating system availability group ‘%.*ls’ has failed. For system AG, The master and msdb must be added to system Ag and no other DB is allowed. Add master and msdb and remove other databases from availability group speicifcation and then retry the operation.
  • 49508 – DBCC SHRINKFILE for data files is not supported in this version of SQL Server.
  • 698 – Internal error. Unable to gain access to the blob container accessor.
  • 699 – Failure to read data expected in Azure Block Blob Storage. Error code 0x%X.
  • 887 – Invalid RBPEX operation. Error: %ls.
  • 888 – Resilient buffer pool extension must be enabled while running this operation ‘%ls’. (Brent says: when Buffer Pool Extensions came out, they didn’t see much adoption because performance just wasn’t that good. I’ll be curious to see what’s been fixed. Hopefully “resilient” doesn’t refer to its ability to tolerate criticism without changing its ways.)
  • 889 – Resilient buffer pool extension must be disabled while running this operation ‘%ls’.
  • 997 – Failed to get the update lock on database ‘%.*ls’.
  • 1484 – Database Mirroring cannot be set for database ‘%.*ls’ because the database has Accelerated Database Recovery enabled. (Brent says: awwww yeah, I like acceleration. Database recovery is what happens on startup, mirroring failover, Availability Group failover, etc. It’s interesting that there’s a message here for mirroring, but not Availability Groups, which would indicate that AGs will probably be supported. I don’t blame Microsoft for not investing further in mirroring – after all, it’s deprecated – but also note that they did add the error message, which means mirroring will probably still ship as a supported (just deprecated) feature in SQL Server 2019.)
  • 1859 – Create database is not allowed in the model database context. Switch context to other database with USE statement and retry. (Brent says: that’s surprising.)
  • 2628 – String or binary data would be truncated in table ‘%.*ls’, column ‘%.*ls’. Truncated value: ‘%.*ls’. (Brent says: OMG THEY ARE FINALLY FIXING BINARY OR STRING DATA WOULD BE TRUNCATED!)
  • 2816 – The metadata for object with id %d has changed. Retry the statement.
  • 3079 – Could not find the blob file %.*ls. Please make sure that the file name points to a valid blob file.
  • 3080 – Invalid Backup Path. The length of the default backup path provided exceeds supported limit (maximum length is: %d). Correct the default backup path.
  • 3761 – Could not delete SBS backed file ‘%ls’. See the SQL Server error log for more information.
  • 3905 – The number of nested transactions has reached the maximum allowed value of 4294967296. (Brent says: seriously, who writes code like that?!? This is where I feel sorry for Microsoft support folks, having to deal with truly heinous code. I don’t mean in SQL Server, either, dear reader. I mean your code. Let’s be clear about this.)
  • 3907 – ADR failed to operate on nest transaction rollback, see previous errorlog message. (Brent says: ADR refers to Accelerated Database Recovery.)
  • 3941 – The transaction cannot modify an object that is published for replication or has Change Data Capture enabled because the transaction started before replication or Change Data Capture was enabled on the database. Retry the transaction.
  • 3947 – The transaction was aborted because the secondary compute failed to catch up during the redo. Retry the transaction. (Brent says: in theory, developers build retry rules for all of the error messages that can come out of a SQL Server, and handle them appropriately. In practice, they take code that worked fine on an old version, and just migrate it to vNext, not reading all the fine print about new error messages they now have to handle. In practice, we’re too busy adding new features to our apps.)
  • 4361 – Redo LSN has not changed for a while. Abandoning the wait as this could be a deadlock. Redo LSN %.*ls, HkRecoveryLsn %.*ls.
  • 4458 – The partitioned view “%.*ls” is not updatable because one or more of the partioned tables is a Hekaton table and the partitioned column is being updated. (Brent says: I would just like to point out that in the year 2018, the term Hekaton is indeed still a thing, and still being used in new error messages. Good job, Dr. DeWitt – your legacy continues.)
  • 4526 – Cannot use isolation level table hint on view ‘%.*ls’ that has snapshot materialization without EXPAND VIEWS query hint. (Brent says: ooo, please finally enable snapshot materialized views!)
  • 4527 – Cannot ALTER VIEW ‘%.*ls’ with SNAPSHOT attribute. Use CREATE VIEW instead.
  • 5340 – WITH schema clause cannot be specified together with FORMATFILE or SINGLE_BLOB/SINGLE_CLOB/SINGLE_NCLOB option.
  • 5341 – WITH schema clause cannot be provided without FORMAT = ‘CSV’ option.
  • 5342 – ROWTERMINATOR and FIELDTERMINATOR cannot be provided without WITH schema.
  • 5343 – ESCAPECHAR can be used in BULK INSERT and OPENROWSET only when CSV format is specified.
  • 5344 – Duplicate column ordinal cannot be provided in WITH schema clause.
  • 5868 – File system DMV/F’s has been disabled. (Brent says: I’m going to go out on a limb and guess that in the cloud, Microsoft wants to disable the file system objects so you can’t see what folders they’re using to store your data.)
  • 5869 – Changes to server configuration option %s are not supported in SQL Database Managed Instances.
  • 5870 – Changes to server configuration option %s are not supported in SQL Database Managed Instances.
  • 5871 – Cannot set the column encryption enclave type to Virtual Secure Mode (VSM) – the operating system does not support VSM. (Brent says: check out the new enclaves for confidential computing.)
  • 5872 – Invalid column encryption enclave type %d specified.
  • 6636 – Unable to read the compressed showplan xml because it was made with a newer version of SQL server. (Brent says: one of the challenges with storing query plans is that they take up a lot of space. Set that aside for a second though – this implies that SQL Server will be able to attach databases from future versions of SQL Server – something we’ve never been able to do before.)
  • 7222 – Only a SQL Server provider is allowed on this instance. (Brent says: this is part of the Satya’s New Microsoft, embracing other platforms. You thought running SQL Server on Linux was big? That’s nothing – starting in 2019, your instances will also be able to host Oracle, DB2, Access, and MongoDB. Okay, maybe this line is sarcasm.)
  • 7224 – Enabling ‘remote proc trans’ is not supported on this instance.
  • 8736 – Input parameter cannot be large object type such as VARBINARY(MAX).
  • 9041 – Could not retrieve backup uris for log backup query from the fabric property BackupUris.
  • 9042 – The log file’s ‘Size’ and ‘FixedVlfSize’ fields specified are invalid. Review the sizing requirements for a fixed VLF log. (Brent says: fixed VLF, interesting. VLFs have been problematic for DBAs for years.)
  • 9045 – Could not initialize the components required to dump page log records.
  • 9046 – Log record at LSN %S_LSN is not a page log record. (Brent says: between this and the above one, I’m curious.)
  • 9112 – Incremental statistics are not supported in this version of SQL Server. (Brent says: go on. Tell me more. It didn’t say this edition – it said this version, which implies the cloud might get it first.)
  • 9115 – CREATE/UPDATE STATISTICS failed. Please execute the statement again. (Brent says: why? SQL Server says: screw you, that’s why, just retry it. I said please.)
  • 9830 – %ls cannot be less than zero.\nParameter name: %ls.
  • 9831 – %ls cannot be larger than length of string.\nParameter name: %ls.
  • 9832 – Index and length must refer to a location within the string.\nParameter name: %ls.
  • 9833 – Invalid data for %ls-encoded characters
  • 10664 – Cannot specify included columns for indexes on memory optimized tables.
  • 10668 – The %S_MSG option is not supported for creating an index on a heap.
  • 10669 – The %S_MSG option is not supported for creating a nonclustered index on clustered columnstore index’.
  • 10670 – Resumable index creation for %S_MSG ‘%.*ls’ failed because the index includes a large object column ‘%.*ls’.
  • 10671 – The %S_MSG option is not supported for creating a filtered index.
  • 10672 – The %S_MSG option is not supported for creating a clustered index on a relation that has a filtered index.
  • 10673 – Cannot resume index creation due to incorrect persisted state found. Please ABORT the operation and try again.
  • 10674 – The %S_MSG option is not supported for creating a clustered index on a table containing nonclustered columnstore index.
  • 11439 – Resumable Online Index Build is not supported in tempdb.
  • 11561 – The %.*ls parameter %.*ls value has a length greater than the maximum allowed. Please try again with a valid parameter.
  • 11562 – The stored procedure ‘sp_showinitialmemo_xml’ is not available in this edition of SQL Server.
  • 11563 – The stored procedure ‘sp_set_session_resource_group’ is not available in this edition of SQL Server.
  • 11564 – The %.*ls JSON parameter %.*ls is missing or incorrectly formatted. Please check the formatting of the JSON.
  • 11565 – The %.*ls JSON string could not be parsed. Please check the formatting of the JSON.
  • 12111 – MODIFY MAXSIZE failed. The DynamicFileAllocationDetectionUnderLock is running by other thread, try again later.
  • 12113 – %ls statement with multiple clauses failed. The ELEVATE_ONLINE database scoped configuration requires single-clause DROP INDEX, ALTER TABLE ADD CONSTRAINT, and ALTER TABLE DROP CONSTRAINT statements.
  • 12114 – ALTER INDEX REBUILD does not support rebuilding ALL WITH (RESUMABLE=ON) and the ELEVATE_RESUMABLE database scoped configuration is set to FAIL_UNSUPPORTED.
  • 12115 – ADD COLUMN statement failed by the ELEVATE_ONLINE database scoped option; column could not be added online.
  • 12116 – Statement ‘%.*ls’ failed, because it attempted to set the ‘%.*ls’ option in tempdb.
  • 12117 – Cannot free the plan because a plan was not found in the database plan cache that corresponds to the specified plan handle. Specify a cached plan handle for the database. For a list of cached plan handles, query the sys.dm_exec_query_stats dynamic management view.
  • 12630 – VERIFY_CLONE option cannot be specified together with SERVICEBROKER option.
  • 13801 – TEXT, NTEXT, SQL_VARIANT and IMAGE types cannot be used as column types in OPENROWSET function with inline schema. These types are not supported in WITH clause.
  • 13802 – CLR types cannot be used as column types in OPENROWSET function with inline schema. These types are not supported in WITH clause.
  • 13803 – Table types cannot be used as column types in OPENROWSET function with inline schema. These types are not supported in WITH clause.
  • 13804 – Invalid escape character specified for bulk load. Escape character can be one single byte or Unicode character.
  • 13806 – It is not possible to expand wildcards in path to provided data source.
  • 13807 – Content of directory on path ‘%ls’ cannot be listed.
  • 13930 – Edge constraint cannot be created on table ‘%.*ls’. The table is not an edge table.
  • 13931 – Edge constraint ‘%.*ls’ references invalid table ‘%.*ls’. Table could not be found.
  • 13932 – Cross-database edge constraints are not supported.
  • 13933 – Edge constraint must reference node tables.
  • 13934 – Could not drop node table ‘%.*ls’ because it is referenced by an edge constraint.
  • 13935 – Cannot enable edge constraint ‘%.*ls’ as there are no online, unique, unfiltered $node_id indexes on one or more target node tables.
  • 13937 – Cannot disable clustered index ‘%.*ls’ on table ‘%.*ls’. Permission denied to disable edge constraint ‘%.*ls’ on table ‘%.*ls’ that references this table.
  • 13938 – The target table ‘%.*ls’ of the INSERT statement cannot be on either side of an edge constraint relationship when the FROM clause contains a nested INSERT, UPDATE, DELETE, or MERGE statement. Found edge constraint ‘%.*ls’.
  • 13940 – Cannot use a derived table ‘%.*ls’ in a MATCH clause.
  • 13941 – Cannot create an edge constraint that references a node table with a disabled $node_id index.
  • 13942 – The initial recursive quantifier must be 1: {1, … }.
  • 13943 – The final recursive quantifier must be greater than the initial recursive quantifier.
  • 13944 – Cannot truncate table ‘%.*ls’ because it is being referenced by an EDGE constraint.
  • 13945 – Cannot delete from a node table that is the target of both an edge constraint and a foreign key constraint on the $node_id column.
  • 13946 – Cannot create a foreign key constraint referencing the $node_id or $edge_id column of a graph table.
  • 13947 – Merge statements containing a MATCH clause do not support derived tables or views in the MATCH clause.
  • 13948 – The table name or alias ‘%.*s’ must be marked as FOR PATH to be used in the recursive section of a SHORTEST_PATH clause.
  • 13949 – The table name or alias ‘%.*s’ was marked as FOR PATH but was not used in the recursive section of a SHORTEST_PATH clause.
  • 13950 – Node table name or alias ‘%.*ls’ was used more than once in a SHORTEST_PATH recursive section.
  • 13951 – Aggregate function ‘%ls’ is not supported with WITHIN GROUP (GRAPH PATH).
  • 13952 – No columns in the aggregate ‘%ls’ WITHIN GROUP(GRAPH PATH) reference a recursive path.
  • 13953 – Columns in the aggregate ‘%ls’ WITHIN GROUP(GRAPH PATH) reference more than one recursive path.
  • 13954 – Identifier ‘%.*ls’ in aggregate ‘%ls’ WITHIN GROUP(GRAPH PATH) is not referencing a recursive path and cannot be used.
  • 13955 – Recursive MATCH queries cannot be used in a table-valued function.
  • 13956 – Recursive MATCH queries cannot be used on the right side of APPLY.
  • 13957 – Recursive MATCH queries cannot be used in subqueries.
  • 15720 – Setting Automatic Tuning option to DEFAULT is not allowed while in CUSTOM server tuning mode for server %.*ls. (Brent says: ooo, custom server tuning. Also interesting that they would put the server’s name in the error message, right? That implies that a single SQL Server will be returning error messages for other servers, like a federation or cluster.)
  • 15801 – Initialization of external distributed computation library failed.
  • 15802 – Request to perform an external distributed computation has failed with error “%s”.
  • 15803 – An inline schema must be specified to read distributed files instead of FORMATFILE option. Please use OPENROWSET(BULK) WITH (schema_desc) option.
  • 15804 – Could not load external extractor ‘%s’.
  • 15901 – Query not supported: Cannot determine result column sources.
  • 15902 – Query not supported: Cannot determine result column sources.
  • 15903 – Query not supported: Cannot determine result column sources.
  • 15904 – Query not supported: Cannot determine result column sources.
  • 16101 – Option ‘%.*ls’ is not supported for sensitivity classification.
  • 16102 – Object name specified ‘%.*ls’ is not valid.
  • 16103 – Sensitivity classification is not supported for the specified object.
  • 16104 – Sensitivity classification option ‘%.*ls’ was repeated.
  • 16105 – Option ‘%.*ls’ is too long (max %d chars).
  • 16106 – Option ‘%.*ls’ is empty.
  • 16107 – Schema ‘%.*ls’ was not found or you do not have permission to access it. (Brent says: looks like they’re making it harder to fish for object names that you’re not supposed to see. Now the messages are more security-savvy, meaning it might be the same error message whether the object exists or not.)
  • 16108 – Table ‘%.*ls’ was not found or you do not have permission to access it.
  • 16109 – Column ‘%.*ls’ was not found in table ‘%.*ls’ or you do not have permission to access it.
  • 16110 – Specification of database part of object name is not supported.
  • 16111 – Sensitivity classification operations cannot be used on computed column ‘%.*ls’.
  • 16113 – Label is missing.
  • 16114 – Information type is missing.
  • 16200 – The statement failed because ‘APPROX_COUNT_DISTINCT‘ does not support DISTINCT parameters. Consider using ‘APPROX_COUNT_DISTINCT’ without DISTINCT, or COUNT or COUNT_BIG with DISTINCT. (Brent says: Microsoft had already mentioned publicly at conferences that this new function was coming, excited to see it taking shape.)
  • 16201 – The statement failed because ‘%.*ls’ does not support DISTINCT parameters.
  • 16642 – Conflict logging retention period parameter is required if conflict logging is turned on.
  • 16643 – Data Sync conflict logging feature is not enabled. (Brent says: Azure Data Sync was in preview limbo for years, but but suddenly came back to life in June 2018 and went to general availability. Microsoft will probably pitch this as a replication replacement that works better with Azure SQL DB, and goes both ways, unlike transactional replication. The “sync group” and “data sync” messages below are likely Azure Data Sync as well despite the lack of capitalization.)
  • 16644 – Value for data Sync conflict logging retention in days should be positive or zero.
  • 16645 – The sync group is already being dropped.
  • 16646 – The sync member is already being dropped.
  • 16647 – Failed to perform data sync operation: %ls
  • 16648 – The sync database specified (%ls\\%ls) does not match the existing sync database (%ls\\%ls).
  • 16649 – Hub logical server %ls does not exist.
  • 16650 – The sync agent %ls already exists.
  • 16651 – The sync agent with the id %ls already exists.
  • 16652 – Cannot update the sync group because it is currently being dropped.
  • 16653 – Cannot use datawarehouse edition in data sync. (Brent says: interesting choice of capitalization here. Also, there is not currently a Data Warehouse Edition for SQL Server, although there is Azure SQL DW.)
  • 16654 – Cannot use logical master in data sync.
  • 19513 – Cannot create a distributed availability replica for availability group ‘%.*ls’. Distributed availability group cannot be built on top of basic local availability group. Please make sure you are specifying the correct local availability group name.
  • 22001 – FreeStaleVersionSpace failed for page %S_PGID for database id ‘%d’. It will be retired in the next iteration of the version cleaner.
  • 22003 – Stale/aborted version cleanup was aborted for database id ‘%d’ due to database shutdown.
  • 22005 – CTR cleanup failed for database id ‘%d’.
  • 22201 – Internal error. Unable to acquire the latch holding buffers for DW Tiered Storage ColumnStore Scan.
  • 22202 – Internal error. Unable to run the remote cs garbage collector. Error Code 22202.
  • 22203 – Internal error. Unable to update the blobs table in the catalogDB. Error Code 22203.
  • 22204 – Internal error. Unable to refresh catalog db information for service uri [%ls].
  • 22205 – Internal error. Unable to get catalog information via the catalog helper.
  • 22206 – Internal error. Unable to get lock for protected shared buffer
  • 22207 – Internal error. Unable to get a valid dbtable. Error Code 22207.
  • 22208 – Access to DW Tiered Storage ColumnStore blob failed. See earlier errors for cause.
  • 22209 – Internal error. Unable to populate instance member list.
  • 22210 – Internal error. Unable to get instance member.
  • 22211 – Internal error. Invalid instance member state.
  • 22213 – Internal error. Unable to get catalog information via the sp.
  • 22214 – Internal error. Unable to initialise XODBC Connection Manager.
  • 22215 – Internal error. Unable to get catalog information.
  • 22216 – Internal error. Protected buffer failure.
  • 22217 – Internal error. Persist lru cost info failure.
  • 22218 – Internal error. Catalog Communication Failure.
  • 22219 – Internal error. Internal table base failure.
  • 22223 – Internal error. Unable to refresh migration type from fabric property.
  • 22224 – Internal error. ADW Optimized for Compute storage detected. Unable to retrieve blob.
  • 22225 – An internal error (%d, %d) occured. Please retry the operation again. If the problem persists contact Microsoft Azure Customer Support.
  • 22226 – An internal error (%d, %d) occured. Please retry the operation again. If the problem persists contact Microsoft Azure Customer Support.
  • 22587 – Non-SQL Server Publishers and Subscribers are supported only on Windows. The platform detected is %s. (Brent says: this seems to imply that replication will get more cross-platform support, maybe to Azure SQL DB. No, you will not see me investigating that further. No, I am not interested in working on replication. I like that it still exists though.)
  • 22588 – Publications on non-Windows platforms cannot support updateable subscriptions. The platform detected is %s. The values of @allow_sync_tran and @allow_queued_tran must be ‘false’ or NULL.
  • 31205 – The import population for database %ls (id: %d), catalog id: %d is being cancelled because of a fatal error (‘%ls’). Fix the errors that are logged in the full-text crawl log. Then resume the import either by detaching the database and re-attaching it, or by taking the database offline and bringing it back online. If the error is not recoverable, rebuild the full-text catalog.
  • 33185 – An error ocurred while attempting to copy the encrypted DEK from the DBTable.
  • 33186 – Cannot alter the credential ‘%.*ls’ because it is being used by an active audit session (‘%.*ls’).
  • 33187 – Enclave was provided with an invalid authentication tag.
  • 33188 – Enclave was provided with insufficient buffer for ‘%hs’. The provided buffer size was %d, while the required size is (at least) %d.
  • 33189 – Enclave is out of session resources.
  • 33190 – Enclave attestation information requested for an unsupported enclave type.
  • 33191 – Enclave host encountered a runtime error: ‘%hs’
  • 33192 – Enclave raised an exception (major = %d, minor = %d). See error log for more information.
  • 33193 – Assert failure occurred within the enclave at file ‘%hs’ and line %d.
  • 33194 – Internal error. The enclave bcrypt method %hs failed with status 0x%x
  • 33195 – Enclave was provided with an invalid session handle.
  • 33196 – Error encountered during VSM enclave attestation. API: ‘%s’, ReturnCode: ‘%ld’.
  • 33197 – The value specified for TYPE option is not supported in this version of SQL Server. Allowed values are E (EXTERNAL_USER) and X (EXTERNAL_GROUP).
  • 33198 – TYPE and SID options have to be used along with each other, in this version of SQL Server.
  • 33331 – DBCC CLEANUPCONVERSATIONS is not allowed on this server.
  • 33332 – DBCC CLEANUPCONVERSATIONS cannot be executed through MARS connection.
  • 33528 – Valid values of the database compatibility level are %d, %d, %d, or %d.
  • 33529 – The audit filter predicate exceeds the maximum allowed length of %d characters.
  • 33530 – The combined length of audit name and blob storage container name exceeds the maximum allowed length (by %d character(s)). Please use shorter audit or container name.
  • 33531 – The specified value for QUEUE_DELAY is not valid in this version of SQL Server. Specify value higher than 0.
  • 33532 – Invalid value given for parameter PATH. Please specify a valid blob container path with the following format : https://.blob.core.windows.net/
  • 33533 – SHUTDOWN on failure option is not supported in this version of SQL Server. (Brent says: oh, interesting – this refers to auditing failures causing an instant shutdown, I assume, which is supported in the boxed product but not in Managed Instances.)
  • 33534 – Unable to initialize enclave
  • 33535 – Enclave call failed for method ‘%s’.
  • 33536 – Encryption scheme mismatch for columns/variables %.*ls. The encryption scheme for the columns/variables is %ls and the expression near line ‘%d’ expects it to meet one of the following conditions: 1) use deterministic encryption and column encryption key that is not enclave-enabled, 2) use randomized encryption, bin2 collation for string types and an enclave-enabled column encryption key, 3) be plaintext.
  • 33537 – Encryption scheme mismatch for columns/variables %.*ls. The encryption scheme for the columns/variables is %ls and the expression near line ‘%d’ expects it to meet one of the following conditions: 1) use randomized encryption, bin2 collation for string types and an enclave-enabled column encryption key, or 2) be plaintext.
  • 33538 – The credentials of blob storage container ‘%.*ls’ are invalid.
  • 33539 – The blob storage ‘%.*ls’ was not found. Verify your storage account name.
  • 33540 – Invalid audit or database names, please use valid URL characters.
  • 33541 – The credentials of blob storage container ‘%.*ls’ was not found.
  • 33542 – Unsupported operation near line ‘%d’; operation on encrypted columns with string data types need *_BIN2 collation.
  • 33543 – Cannot alter column ‘%.*ls’. The statement attempts to encrypt, decrypt or re-encrypt the column in-place using a secure enclave, but the current or/and the target column encryption key for the column is not enclave-enabled.
  • 33544 – Cannot alter column ‘%.*ls’. The target plaintext type for the column is different from the current plaintext type. Changing plaintext type cannot be combined with encryption scheme changes in a single statement.
  • 33545 – Cannot alter column ‘%.*ls’. The statement attempts to change an encryption scheme of the column in-place, which requires a secure enclave, but the enclave has not been initialized in the SQL Server instance. Check the status of the enclave in sys.dm_column_encryption_enclave.
  • 33546 – Enclave runtime error: CEK not found. Check that: (1) column encryption setting is enabled on connection, (2) driver is enclave-enabled.
  • 33547 – Enclave runtime error: Duplicate initialization of the Always Encrypted Enclave.
  • 33548 – Enclave runtime error: Enclave out of memory.
  • 33549 – Enclave runtime error: OSF Serialization error.
  • 33550 – Enclave runtime error: Invalid input.
  • 33551 – Enclave runtime error: Nonce checking in secure channel failed.
  • 33552 – Enclave attestation error: enclave platform returned unexpected output.
  • 33553 – A failure occurred during initialization of an Audit to External Monitor target. See the errorlog for details.
  • 35391 – Could not build or rebuild clustered columnstore index ‘%.*ls’ online, because the the table has secondary indexes. Please perform the operation offline, or remove the secondary indexes and try again. (Brent says: we’re getting online rebuilds for clustered columnstore indexes, woohoo!)
  • 35393 – Columnstore tuple mover unit tests can’t be run under master database.
  • 35394 – Transaction %d reached %I64u log used bytes and %I64d reserved log bytes. In order to minimize log usage %d suboptimal rowgroups were created, which is not allowed since it compromises index quality. Please re-run query at a higher resource class, and also consider increasing DWU. See ‘https://aka.ms/sqldw_columnstore_memory‘ for assistance. (Brent says: the robots won’t increase your bill for you automatically, which is smart, but at least they’ll tell you that your data has grown beyond the scope of the instance size you’re using for hosting.)
  • 35395 – Transaction %d reached %I64u log used bytes and %I64d reserved log bytes. In order to minimize log usage, %d suboptimal rowgroups were created, which is not allowed since it compromises index quality. Please re-run the query with more memory (change your Resource Governor settings or upgrade to a higher SLO) or target fewer partitions in the load if your target table is partitioned.
  • 37108 – A job account could not be linked to database ‘%.*ls’ on server ‘%.*ls’ because it is a geo-secondary database.
  • 37109 – Database ‘%ls’ on server ‘%ls’ is already linked to another job account.
  • 39101 – ‘%.*ls’ failed because it is not supported in the edition of this SQL Server instance.
  • 39102 – Duplicate column names are not allowed in ‘%.*ls’. Column name ‘%.*ls’ is a duplicate.
  • 39103 – Parameter ‘@input_data_1_order_by_columns’ is not allowed without parameter ‘@input_data_1_partition_by_columns’.
  • 39104 – Column ‘%.*ls’ in ‘%.*ls’ is not defined in the SELECT clause of ‘@input_data_1’ parameter.
  • 39105 – Invalid syntax for parameter ‘@input_data_1_partition_by_columns’. Specify a list of comma separated columns.
  • 39106 – Invalid syntax for parameter ‘@input_data_1_order_by_columns’. Specify a list of comma separated columns and an optional argument for sorting order <ASC|DESC>.
  • 39107 – Columns in parameters ‘@input_data_1_partition_by_columns’ and ‘@input_data_1_order_by_columns’ must be unique. Column name ‘%.*ls’ appears in both parameters.
  • 39108 – Maximum number of concurrent external script users has been reached. Limit is %d. Please retry the operation.
  • 39109 – The combined total number of columns given in parameters ‘@input_data_1_partition_by_columns’ and ‘@input_data_1_order_by_columns’ exceeds the maximum %d.
  • 39110 – Maximum number of concurrent external script queries for this user has been reached. Limit is %d. Please retry the operation.
  • 40934 – Server Dns Alias name ‘%.*ls’ cannot be empty or null. It can only be made up of lowercase letters ‘a’-‘z’, the numbers 0-9 and the hyphen. The hyphen may not lead or trail in the name.
  • 40935 – The endpoint ‘%.*ls’ is already in use. Use a different Server Dns Alias name.
  • 40936 – The Server Dns Alias ‘%.*ls’ already exists for the server ‘%.*ls’.
  • 40937 – The Server Dns Alias ‘%.*ls’ does not exist for the server ‘%.*ls’.
  • 40938 – The Server Dns Alias ‘%.*ls’ is busy with another operation and cannot perform the ‘%.*ls’ operation. Please try again later.
  • 40939 – The scale operation from service level objective ‘%.*ls’ to new service level objective ‘%.*ls’ is not supported. Please file a support ticket.
  • 40940 – The elastic pool ‘%.*ls’ cannot be updated because one of its databases is performing a copy or geo-replication failover operation.
  • 40941 – Copy operation for the database ‘%.*ls’ on the server ‘%.*ls’ cannot be started because the elastic pool ‘%.*ls’ is currently being updated.
  • 40942 – A service objective assignment operation cannot be performed because copy or failover operation for the database ‘%.*ls’ on the server ‘%.*ls’ is in progress.
  • 40943 – A Failover Group cannot be created on the server ‘%.*ls’ because the Table Auditing feature is enabled for this server.
  • 40944 – The database ‘%.*ls’ on the server ‘%.*ls’ cannot be added to a Failover Group because the Table Auditing or Security Enabled Access feature is turned on for this database.
  • 40945 – The Table Auditing feature cannot be turned on for a server that contains Failover Groups. Please try Blob Auditing instead.
  • 40946 – The Table Auditing or Security Enabled Access feature cannot be turned on for a database that is part of a Failover Group.
  • 40947 – The Table Auditing or Security Enabled Access feature cannot be turned on for a database that is located on a server with a Server DNS Alias.
  • 40948 – A Server DNS Alias cannot be created for the server ‘%.*ls’ because the Table Auditing feature is enabled for this server.
  • 40949 – A Server DNS Alias cannot be created for the server ‘%.*ls’ because the database ‘%.*ls’ has the Table Auditing or Security Enabled Access feature enabled.
  • 40950 – The Dns Alias ‘%.*ls’ already exists for the elastic pool ‘%.*ls’ on server ‘%.*ls’.
  • 40951 – The Dns Alias ‘%.*ls’ does not exist for the elastic pool ‘%.*ls’ on server ‘%.*ls’.
  • 40952 – A Server DNS Alias cannot be created because server ‘%.*ls’ would exceed the allowed Server DNS Aliases quota of %d.
  • 40953 – A Failover Group cannot be created because server ‘%.*ls’ would exceed the allowed Failover Groups quota of %d.
  • 40954 – The Table Auditing feature cannot be turned on for a server that contains Server Dns Aliases. Please try Blob Auditing instead.
  • 40955 – The operation cannot be performed due to insufficient file space in the elastic pool. The operation requires (%d) MBs file space and there are (%d) MBs file space available. Unused file space must be reclaimed before retrying the operation. Please refer to the following article for details on reclaiming unused file space: https://go.microsoft.com/fwlink/?linkid=864775.
  • 40956 – The Server Disaster Recovery Configuration feature is deprecated. Please use Failover Group instead.
  • 40957 – The DTU min per database must be at least (%d) for service tier ‘%.*ls’.
  • 40958 – The VCore max per database must be at least (%d) for service tier ‘%.*ls’.
  • 40959 – The VCore max per database cannot exceed (%d) for service tier ‘%.*ls’.
  • 40960 – The VCore max per database (%d) for the elastic pool does not belong to the specified values for service tier ‘%.*ls’.
  • 40961 – The VCore min per database cannot exceed (%d) for service tier ‘%.*ls’.
  • 40962 – The VCore min per database must be at least (%d) for service tier ‘%.*ls’.
  • 40963 – The VCore min per database (%d) for the elastic pool does not belong to the allowed values for service tier ‘%.*ls’.
  • 40964 – The VCore min per database (%d) cannot exceed the VCore max per database (%d).
  • 40965 – The service level objective ‘%.*ls’ does not support the license type ‘%.*ls’.
  • 40966 – No service objective was found for capacity ‘%d’ in edition ‘%.*ls’
  • 40967 – More than one service objective was found for capacity ‘%d’ in edition ‘%.*ls’
  • 40968 – Operation results in exceeding quota limits of %d. Maximum allowed: %d.
  • 40969 – Cannot open server ‘%.*ls’ requested by the login. Client is not allowed to access the server.
  • 40970 – Can not change from ‘%.*ls’ edition to ‘%.*ls’ edition.
  • 40971 – Cannot open Failover Group “%.*ls” requested by the login. The login failed.
  • 40972 – Database copy limit per database reached. The database ‘%ls’ cannot have more than %d concurrent database copies.
  • 41216 – The SEMANTICSIMILARITYTABLE, SEMANTICKEYPHRASETABLE and SEMANTICSIMILARITYDETAILSTABLE functions do not support common table expressions.
  • 41666 – Waiting for replica catchup before GeoDR role change failed for with error %d for database ‘%ls’, DBID %d, AGID ‘%ls’, and ReplicaID ‘%ls’.
  • 41667 – Fabric Service ‘%ls’ (partition ID ‘%ls’) encountered error (error code: 0x%08X) while setting Fabric property ‘%ls’.
  • 41904 – BACKUP DATABASE failed. SQL Database Managed Instance supports only COPY_ONLY full database backups which are initiated by user.
  • 41905 – Stored procedure %ls is not supported in SQL Database Managed Instance. (Brent says: for more info, see the differences for Managed Instances.)
  • 41906 – Statement ‘%.*ls’ is not supported in SQL Database Managed Instance.
  • 41907 – Unsupported file type during restore on SQL Database Managed Instance.
  • 41908 – Only ‘local’ routes are supported in SQL Database Managed Instance.
  • 41909 – Modifying logical file name is not supported in SQL Database Managed Instance.
  • 41910 – Add/remove/modify of log files is not supported in SQL Database Managed Instance.
  • 41911 – Adding or removing XTP file or filegroup is not allowed in SQL Database Managed Instance.
  • 41912 – Maximum number of databases for SQL Database Managed Instance reached.
  • 41913 – Multiple filestream files are not supported in SQL Database Managed Instance.
  • 41914 – SQL Server Agent feature %ls is not supported in SQL Database Managed Instance. Review the documentation for supported options.
  • 41915 – Memory-optimized filegroup must be empty in order to be restored on General Purpose tier of SQL Database Managed Instance.
  • 41916 – Maximum number of %u files for SQL Database Managed Instance reached.
  • 41917 – Dropping local instance via sp_dropserver is not allowed in SQL Database Managed Instance.
  • 41918 – Specifying files and filegroups in CREATE DATABASE statement is not supported on SQL Database Managed Instance.
  • 41919 – Multiple backup sets in a single backup file are not supported in SQL Database Managed Instance.
  • 41920 – This feature is not supported through T-SQL on SQL Database Managed Instance. (Brent says: somebody got tired of writing all the individual error messages above, hahaha, and made a generic one.)
  • 41921 – Restoring from a backup that contains multiple log files is not supported in SQL Database Managed Instance. (Brent says: wow, that’s pretty surprising. Tells you about an architectural change in Managed Instances. I mean, in theory you probably don’t want multiple log files, but I’ve used an extra 1mb one as an emergency escape valve for a database that started to fill up its regular log drive, and I couldn’t let a transaction fail, so I added another file and let it autogrow until the transaction finished.)
  • 41922 – The backup operation for a database with service-managed transparent data encryption is not supported on SQL Database Managed Instance. (Brent says: hmmm, I guess that makes sense, but it’s interesting: if you let Microsoft manage your keys, you can’t get a backup out? Would be a big drawback for service-managed TDE.)
  • 41923 – Cannot find server certificate with thumbprint ‘%.*ls’. Please use PowerShell Cmdlet ‘Add-AzureRmSqlManagedInstanceTransparentDataEncryptionCertificate’ to create the certificate.
  • 42034 – Boot of federation host failed with error 0x%08X.
  • 43020 – The storage size of %d MB is not a valid configuration. Valid storage sizes range from minimum of %d MB and additional increments of %d MB up to maximum of %d MB.
  • 43021 – The point in time %S_DATE is not valid. Valid point in time range from %d days early to now and not before source server creation time.
  • 43022 – The edition %.*ls is not a valid edition. Edition cannot be changed by restoring. (Brent says: Huh. That’s odd.)
  • 43023 – The storage size of %d MB is lower than the source storage size.
  • 43024 – The version %.*ls is not a valid version. Version cannot be changed by restoring.
  • 43025 – Input parameter is incorrect. Please double check the input.
  • 43026 – Cannot drop system database ‘%.*ls’, skipping.
  • 43027 – Geo Restore is not supported.
  • 43028 – The replication feature is not supported. (Brent says: me too, SQL Server. Me too.)
  • 43029 – Edition %.*ls must be the same as the primary server when creating a replica server.
  • 43030 – Version %.*ls must be the same as the primary server when creating a replica server.
  • 43031 – The storage size of %d MB is lower than the primary server’s storage size.
  • 43032 – No available primary server %.*ls is found when creating a replica server.
  • 43033 – The primary server %.*ls already has the maximum of replica servers.
  • 43034 – The replica server is not in ready state when promoting.
  • 43035 – ‘%.*ls’ and ‘%.*ls’ cannot be updated together.
  • 43036 – Input parameter is incorrect when creating a replica server. Please double check the input.
  • 45123 – Updating max size is not supported for database ‘%ls’. Database size will grow automatically as more data is inserted.
  • 45344 – Catalog DB creation failed.
  • 45345 – Cannot cancel database management operation ‘%ls’ in the current state.
  • 45346 – Subnet resource ID ‘%ls’ is invalid. Please provide a correct resource Id for the target subnet.
  • 45347 – LongTermRetentionBackup is enabled for server ‘%ls’. Move server cross subscription is not allowed.
  • 45348 – LongTermRetentionBackup is enabled for server ‘%ls’. Move server cross resource group is not allowed.
  • 45349 – The operation could not be completed because certificate rotation is in progress for server ‘%ls’. (Brent says: one of the gotchas of Transparent Data Encryption is that when you’re rotating certs for a database, you can’t do backups. The error message makes sense – you probably can’t add replicas or move an Azure SQL DB or Managed Instance to someone else’s subscription while this is taking place, either, since those likely involve backups.)
  • 45350 – MODIFY MAXSIZE failed. To reduce the database size, the database first needs to reclaim unused space by running DBCC SHRINKDATABASE. Note that this operation can impact performance while it is running and may take several hours to complete. Refer to the following article for details of using T-SQL to run DBCC SHRINKDATABASE: ‘https://go.microsoft.com/fwlink/?linkid=852312’
  • 45351 – MODIFY MAXSIZE failed. The requested database size is smaller than the amount of data storage used.
  • 45352 – Create Managed Instance failed. Provided virtual network subnet is located in %ls, which is a different region than the one you are provisioning Managed Instance in (%ls). To create a VNET-joined Managed Instance, the instance and the virtual network have to be located in the same region.
  • 45353 – This private cluster is associated with TR %ls. You specified TR %ls as a parameter.
  • 45354 – Tenant ring %d already has positive placement weight set(%d) and can’t be used for private cluster for subscription %ls. Please ensure that the ring is actually not used, reset weight back to 0 or -1 and re-run the SignalPrivateTenantRingReady CAS.
  • 45355 – The storage account %ls is not valid or does not exist.
  • 45356 – The storage account credentials are not valid.
  • 45357 – Auditing cannot be configured on secondary databases.
  • 45358 – Server auditing settings are being updated for server ‘%ls’. Please wait for the existing operation to complete.
  • 45359 – Database name validation failed. The database name is not allowed because it contains trailing whitespace characters.
  • 45360 – The operation could not be completed because app config deployment is in progress for the app ‘%ls’.
  • 45361 – Invalid subnet address range (%ls). Address range has to be in CIDR format (IP/MASK) where IP is a valid IPv4 address and MASK is a number between 0 and 28.
  • 45362 – The operation could not be completed because the Azure Key Vault principal certificate has expired. The error message from Active Directory Authentication library (ADAL) is ‘%ls’.
  • 45363 – Server automatic tuning settings from previous request have not propagated to all databases yet. Please try again in few minutes.
  • 45364 – The operation could not be completed because database ‘%ls’ on server ‘%ls’ is currently unavailable. Try again later. If the problem persists, contact customer support.
  • 45365 – vCore value (%d) is not valid. Please specify a valid vCore value.
  • 45366 – The retention days of %d is not a valid configuration. Valid backup retention in days must be between %d and %d.
  • 45367 – Invalid virtual network configuration. This is not allowed: %ls.
  • 45368 – The given rule ID: %s is invalid. You can find valid rule ids in scan results file.
  • 45369 – No baseline is set for rule ID: %d. You should first set a baseline for this rule.
  • 45370 – Vulnerability Assessment scan on the resource ‘%ls’ is in progress. Please wait for the existing operation to complete.
  • 45371 – Cannot cancel management operation ‘%ls’ in the current state.%ls
  • 45372 – Automatic tuning option ‘%.*ls’ was not found for requested resource.
  • 45373 – Automatic tuning is not supported for SQL Data Warehouse.
  • 45374 – HardwareGeneration ‘%ls’ is not valid. Please specify a valid HardwareGeneration value.
  • 45375 – vCore value (%d) and HardwareGeneration ‘%ls’ is not a valid combination. Please specify a valid vCore and HardwareGeneration value.
  • 45376 – Managed Instance cannot be joined to a classic virtual network. Please provide a Resource Manager vnet to join.
  • 45377 – The provided Key Vault uri ‘%ls’ is not valid. Please ensure the key vault has been configured with soft-delete. (https://aka.ms/sqltdebyoksoftdelete)
  • 45378 – geo-redundant-backup not supported for the current edition.
  • 45379 – geo-redundant-backup value is not allowed to update
  • 45380 – The edition %.*ls is not a valid edition. Edition cannot be changed by update.
  • 45381 – SKU Name ‘%ls’ is not valid. Please specify a valid SKU Name.
  • 45382 – Read or write operaions are not allowed on the storage account ‘%ls’.
  • 45383 – The storage account ‘%ls’ is disabled.
  • 45384 – The encryption protectors for all servers linked by GeoDR must be in the same region as their respective servers. Please upload key ‘%ls’ to a Key Vault in the region ‘%ls’ as server ‘%ls’. (https://aka.ms/sqltdebyokgeodr)
  • 45385 – Unexpected Key Vault region found in the response for Key Vault ‘%ls’ associated with server ‘%ls’. Expected region: ‘%ls’, Region receieved in response: ‘%ls’. (https://aka.ms/sqltdebyokgeodr)
  • 45386 – The key vault provided ‘%ls’ on server ‘%ls’ uses unsupported RSA Key Size or Key Type. The supported RSA Key Size is 2048 and Key Type is RSA.
  • 45387 – Invalid hardware generation. It isn’t allowed to have both Gen4 and Gen5.
  • 45388 – Target subnet has associated Network Security Group (NSG). Remove %ls. (https://go.microsoft.com/fwlink/?linkid=871071)
  • 45389 – Target subnet has no associated Route Table. Associate Route Table with single User Defined Route (UDR): Name: default, Address prefix: 0.0.0.0/0, Next hop type: Internet. (https://go.microsoft.com/fwlink/?linkid=871071)
  • 45390 – Target subnet has associated Route Table with invalid configuration %ls. Associate Route Table with single User Defined Route (UDR): Name: default, Address prefix: 0.0.0.0/0, Next hop type: Internet. (https://go.microsoft.com/fwlink/?linkid=871071)
  • 45391 – Invalid virtual network configuration %ls. Add Azure recursive resolver virtual IP address 168.63.129.16 at the end of your custom DNS list: %ls. (https://go.microsoft.com/fwlink/?linkid=871071)
  • 45392 – SQL service endpoint is currently not allowed on Managed Instance. Remove SQL service endpoint from %ls. (https://go.microsoft.com/fwlink/?linkid=871071)
  • 45393 – Target subnet is not empty. Remove all resources from %ls or use a different empty subnet. (https://go.microsoft.com/fwlink/?linkid=871071)
  • 45394 – Virtual network for the target subnet is locked. Remove the lock from %ls. (https://go.microsoft.com/fwlink/?linkid=871071)
  • 45395 – Gateway subnet cannot be used for deploying managed instance. Use a different empty subnet. (https://go.microsoft.com/fwlink/?linkid=871071)
  • 45396 – Target subnet %ls does not exist. Use a different empty subnet. (https://go.microsoft.com/fwlink/?linkid=871071)
  • 45397 – %ls. (https://go.microsoft.com/fwlink/?linkid=871071)
  • 45398 – The specified edition %ls is not consistent with the specified SKU %ls.
  • 45399 – The specified license tpye %ls is not valid.
  • 45400 – Invalid storage size: %ls GB. Storage size must be specified between %ls and %ls gigabytes, in increments of %ls GB.
  • 45401 – Ring buildout ‘%ls’ has no support for small VMs roles, role: ‘%ls’.
  • 45402 – Ring buildout ‘%ls’ does not support multiple DB roles.
  • 45403 – The operation could not be completed because a service tier change is in progress for managed instance ‘%.*ls.’ Please wait for the operation in progress to complete and try again.
  • 45404 – The operation failed because update SLO safety checks could not be completed. Details: ‘%ls’.
  • 45405 – The operation failed because a long running transaction was found on the SQL instance. Please wait for the transaction to finish execution and try again.
  • 45406 – Provisioning of zone redundant database/pool is not supported for your current request.
  • 46629 – EXTRACTOR (Brent says: I love the thought of an error just yelling out of nowhere, “EXTRACTOR” – like it’s Arnold yelling, “GET TO THE CHOPPA”)
  • 46655 – rejected rows location
  • 46656 – CONNECTION_OPTIONS
  • 46657 – PUSHDOWN
  • 46658 – GENERIC
  • 46659 – BLOB_STORAGE
  • 46724 – Communication error during bulk copy operation.
  • 47115 – The ‘%ls’ option is not valid for WSFC availability group ‘%.*ls’. Remove the option or set the ‘CLUSTER_TYPE’ option to a different value, then retry the operation.
  • 47116 – The external lease cannot be set on availability group ‘%.*ls’. External Lease updates are not enabled for this availability group.
  • 47117 – The ‘%ls’ option must be specified with a valid time value when updating the Availability Group’s external write lease status on availability group ‘%.*ls’.
  • 47118 – The ‘%ls’ option must be specified with a valid value when updating the external lease status on availability group ‘%.*ls’.
  • 47119 – The current write lease of the availability group ‘%.*ls’ is still valid. The lease expiration time cannot be set to an earlier time than its current value.
  • 47120 – The READ_WRITE_ROUTING_URL ‘%.*ls’ specified for availability replica ‘%.*ls’ is not valid. It does not follow the required format of ‘TCP://system-address:port’. For information about the correct routing URL format, see the CREATE AVAILABILITY GROUP documentation in SQL Server Books Online.
  • 47121 – The replica spec for the local replica ‘%.*ls’ has an invalid availability mode. Valid values are SYNCHRONOUS_COMMIT and ASYNCHRONOUS_COMMIT.
  • 47201 – Procedure expects ‘%u’ parameters.
  • 47202 – Procedure expects ‘%u’ parameters and ‘%u’ for _ex version.
  • 47203 – Procedure expects atleast ‘%u’ parameters and ‘%u’ max.
  • 49404 – Value ‘%.*ls’ for option ‘%.*ls’ is not supported in VLDB.
  • 49407 – Error: %ls.
  • 49408 – Error: %ls. Error code: %d.
  • 49409 – Special procedure is not available on the current SQL instance.
  • 49505 – Registering extended stored procedure failed because it is not valid to use UNC path for DLL name. Use local path for DLL name instead.
  • 49506 – The DBCC operation failed because it is not supported in an explicit transaction when Constant Time Recovery is enabled on the database. Commit or rollback the current transaction and run the operation again. (Brent says: Constant Time Recovery, I like that. I have no idea what it means. I like it anyway, like Cheeseburger Pizza. I’ve never had a cheeseburger pizza, but when you put those two words together, don’t they sound awesome? That’s what Constant Time Recovery sounds like. Cheeseburger Pizza.)
  • 49507 – Object ID %d, index ID %d, partition ID %I64d, alloc unit ID %I64d (type %.*ls), page %S_PGID, row %d: Row is aborted.
  • 49603 – CREATE FILE encountered operating system error %ls while attempting to copy the physical file ‘%.*ls’.
  • 49965 – The operation timed out and failed: ‘%ls’
  • 49966 – Resource not found: ‘%ls’.
  • 49967 – Network resource provider returned following error: ‘%ls’.
  • 49968 – Network resource provider denied access: ‘%ls’.
  • 49971 – Cannot initialize the Virtual Secure Mode (VSM) enclave for Always Encrypted, the operating system does not support VSM.
  • 49972 – Virtual network firewall rules are not currently supported on servers with failover groups configured with automatic failover policy. Please configure the failover groups on the server with manual failover policy.
  • 49973 – Failover Groups configured with an automatic failover policy are currently not supported on servers configured with virtual network firewall rules. Please configure the failover group with manual failover policy.

New Severity 17 Messages:

Logged to the event log:

  • 1133 – The managed instance has reached its storage limit. The storage usage for the managed instance cannot exceed (%d) MBs.
  • 49403 – Database ‘%.*ls’ does not allow autostart operations. An explicit ONLINE database operation is required.
  • 49405 – Skipping the default startup of vldb database ‘%.*ls’. The database will be started by the fabric. This is an informational message only. No user action is required.

Not logged:

    • 8737 – Error %I64d occurred when sending data over the network to another distribution. Please try to run the query again. If the error persists, please contact support.
    • 8738 – An error occurred when opening a connection from distribution %d to distribution %d. Please try to run the query again. If the error persists, please contact support.
    • 8739 – Error occurred when sending metadata over the network to another distribution. Please try to run the query again. If the error persists, please contact support.
    • 8740 – The row is too large to be shuffled between distributions. Row Size in Bytes: %d: Max Allowed Row Size in Bytes: %d. Please contact support for assistance. (Brent says: It’s tough to describe this feature in words, so I’ll just link you to a demo video.)
    • 8741 – An error occurred when reading data moved from one distribution to another. Try to run the query again. If the error persists, contact support.
    • 12450 – Could not allocate memory for DW query or Showplan of size (%ld). (Brent says: your query plan is so big we can’t even get the memory for it? Wow. Achievement unlocked.)
    • 13805 – An internal error has occurred during wildcard expansion.
    • 35396 – Effective DOP of %u is too high for columnstore compression on table id %d because each thread only has %I64d KB for compression. Please retry using the MAXDOP hint to use a lower DOP.

New Severity 21 Messages:

Logged to the event log:

  • 3463 – An error occurred while recovering database ‘%.*ls’. Transaction outcome could not be resolved. (Brent says: this is a good example of how people just assume the database will handle everything perfectly, but if you really wanna guarantee zero data loss, it’s gonna be hard. Plus, you’re going to have to read the error log closely on failovers.)

Not logged:

  • 9047 – Async recovery thread has exited unexpectedly, shutting down xlog reader.
  • 22212 – An error occurred while reading remote column store segment HoBt 0x%I64X, Object %d, Column %d, Type %d in database %d. The segement could not be decrypted.
  • 41869 – In-memory OLTP version %u.%u is not supported on this platform. (Brent says: implying that there’s going to be a new/better version of Hekaton somewhere – maybe Azure first, or maybe Windows before Linux, so that’s interesting.)
Previous Post
What’s New in SQL Server 2019: Faster Table Variables (And New Parameter Sniffing Issues)
Next Post
What’s New in SQL Server 2019 System Tables

19 Comments. Leave new

  • I love that decompiling error messages is still a thing. Though admittedly in SQL Server there isn’t any decompiling involved. Still, great insight. For the record, my favorite error message received in the wild is still that very late night back in the early 90s when the CA Clipper compiler simply said….. “something horrible has happened” and then went dark.

    Reply
  • I can’t believe that SQL is finally going to tell me which column is being truncated! AND WHAT THE VALUE IS!

    Now I just need to convince bosses to upgrade

    Reply
  • What ever new features added by Microsoft in SQL Server, still SQL server have no option for support composite partitioning, this has been implemented by oracle long years back, even REFS is not matches with oracle’s ZFS. Every year Microsoft releasing SQL server which may shows no stable in their previous versions.

    Reply
  • No improvements in tempdb, one database for all the databases. Providing approx distinct count will not be same as distinct. we cannot tell these simple things as a features. Oracle have options to increase their data block size, still SQL server have no option to increase page size.

    Reply
  • Table Partition, In Oracle you can determine that a single table be physically allocated in a separate drive, or by certainly amount of rows. You can do it with MS SQL Server, but not at the level you can specify in Oracle. Do we have such features in SQL server 2019?

    Reply
  • Captain Tasty-Eats!
    September 26, 2018 9:19 am

    I’m wondering if this one:
    3905 – The number of nested transactions has reached the maximum allowed value of 4294967296.
    can be triggered by a nasty recursive CTE?
    Yuck to the code that causes it anyway!

    Reply
  • “47130 – Creating system availability group ‘%.*ls’ has failed. For system AG, The master and msdb must be added to system Ag and no other DB is allowed.”

    This is interesting to me- I imagine it’s just for Azure, but I really wish it weren’t. Nothing would simplify syncing logins and jobs between servers like not having to sync them at all.

    Reply
  • Peter Vandivier
    September 28, 2018 10:39 am

    > 12450 – Could not allocate memory for DW query or Showplan of size (%ld). (Brent says: your query plan is so big we can’t even get the memory for it? Wow. Achievement unlocked.)

    Are XBox style achievements a current feature of ConstantCare or vNext? I need to figure out how hard to push for space in next year’s budget.

    Reply
  • […] Seen via Brent Ozar’s post: What’s New in SQL Server 2019’s sys.messages: More Unannounced Features […]

    Reply
  • […] conteúdo Conforme apontado pelo Brent Ozar nesse post aqui, o SQL Server 2019 nos traz uma série de mudanças nas mensagens de erro e alertas tradicionais […]

    Reply
  • “41913 – Multiple filestream files are not supported in SQL Database Managed Instance”

    Does that mean filestream support is being considered for SQL Database Managed Instance?

    https://docs.microsoft.com/en-us/azure/sql-database/sql-database-managed-instance-transact-sql-information#filestream-and-filetable

    Reply
  • > 49406 – Recovery modes other than full are not supported for Socrates(VLDB) compute. (Brent says: well, look what we have here – a new code name.)

    After a google search for: microsoft sql codename “socrates”
    I found that they’ve used Socrates before as a code name for a specific edition of Windows Server 2008 called “Windows HPC Server 2008”, and it also adds: (replacing Windows Compute Cluster Server 2003)

    This is according to a CompTIA A+ 2010 Home Study book:

    https://books.google.com/books?id=tf3zAgAAQBAJ&pg=PA51&lpg=PA51&dq=microsoft+sql+codename+%22socrates%22&source=bl&ots=Nkk5fp1Tzc&sig=skpc0aslnIl0QqIM6Y3W7F5IeXw&hl=en&sa=X&ved=2ahUKEwi14oXSn4HeAhXB6lMKHZPlCp0Q6AEwBXoECAEQAQ#v=onepage&q=microsoft%20sql%20codename%20%22socrates%22&f=false

    I also found that the original code name for “SQL Server 7.0 OLAP Services” was Plato, who was a student of Socrates. So that could mean something.

    Reply
  • 8740 – Oh NO, I’ve been Ditka-rolled!

    Reply
  • Stephane St-Louis
    May 13, 2019 8:29 am

    Interestingly, I got one of those new SQL-2019 _still unreleased_ version of SQL Server in Azure-SQL.

    We’ve truncated a whole bunch of audit tables on a production server. The database file size is 320 GB although it now only contains about 60 GB worth of data. Doing a DBCC SHEINKFILE won’t help. File size remains the same and I end up with this info message:


    DBCC SHRINKFILE: Page 1:8790962 could not be moved because it is an off-row persistent version store page. Page holdup reason: Contains versions produced by transaction that is newer than the oldest active transaction. Page holdup timestamp: 7183734762.
    DBCC SHRINKFILE: Page 1:8790962 could not be moved because it is an off-row persistent version store page. Page holdup reason: A secondary replica still needs the versions. Page holdup timestamp: 7183734762.

    I googled the message, and so far, this web page seems to be the very first to ever document it. Brent, you are way ahead of your time! I guess now I’ll have to investigate what the replication problem is (_over which I don’t have the slightest control being on Azure_) and will probably end up opening another support ticket…

    Reply
  • Good

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.