Internal query processor error the query processor could not produce a query plan

Hi,
 

Hi,

I am working on a query optimization task . My actual query is mentioned below which is taking 16 seconds to load for a period of 1 month. The problem I am facing over here is when exclude the  part highlighted in bold below my query is running fine.
But when I include the part highlighted in bold I am getting an error as :

Error: «Msg 8624, Level 16, State 17, Line 82

Internal Query Processor Error: The query processor could not produce a query plan. For more information, contact Customer Support Services. »

Query for the same:

;WITH SRSSDetailsCTE 
AS        
 (      

 SELECT

 PU.ProductionUnitID,      

    TTW.WeighingDate,
    SOTR.SodiumTreatmentRecipeID ,

  (CASE 
      WHEN  TTW.TapTicketWeightTypeID = 1 then  TTW.[Weight]  END
    ) AS FullWeight,

  (SELECT [Weight] FROM HotMetal.TapTicketWeight TTW WHERE TTW.TapTicketWeightTypeID = 4          
 AND TTW.TapTicketID = TT.TapTicketID) PreSkimWeight,

  ((SELECT [Weight] FROM HotMetal.TapTicketWeight TTW WHERE TTW.TapTicketWeightTypeID = 4          
 AND TTW.TapTicketID = TT.TapTicketID) — (SELECT [Weight] FROM HotMetal.TapTicketWeight TTW WHERE TTW.TapTicketWeightTypeID = 1          
 AND TTW.TapTicketID = TT.TapTicketID) ) SkimmedWeight, 

  ((SELECT [Weight] FROM HotMetal.TapTicketWeight TTW WHERE TTW.TapTicketWeightTypeID = 1          
 AND TTW.TapTicketID = TT.TapTicketID) —         
    (SELECT [Weight] FROM HotMetal.TapTicketWeight TTW WHERE TTW.TapTicketWeightTypeID = 3          
 AND TTW.TapTicketID = TT.TapTicketID)) NetWeight,        
  TT.EstimatedWeight,

    (CASE 
      WHEN  SOTR.SodiumTreatmentRecipeID=8 then  ISNULL(SUM([Weight]),0) END
    ) AS TotalWeightOfSkimOnlyMetal,

    (CASE 
      WHEN SOTR.SodiumTreatmentRecipeID !=8 then  ISNULL(SUM([Weight]),0) END
    ) AS TotalWeightOfNonSkimOnlyMetal,

        (CASE 
      WHEN SOTR.Code IS NULL then  ISNULL(SUM([Weight]),0) END
    ) AS TotalWeightOfNullRecipeMetal,
      (CASE 
      WHEN SOTR.SodiumTreatmentRecipeID =8 then  COUNT(TapTicketNo) END
    ) AS NoOfSkimOnlyMetal,
     (CASE 
      WHEN SOTR.SodiumTreatmentRecipeID !=8 then  COUNT(TapTicketNo) END
    ) AS NoOfNonSkimOnlyMetal,
     (CASE 
      WHEN SOTR.Code IS NULL then  COUNT(TapTicketNo) END
    ) AS NoOfNullRecipeMetal,

 ****************TROUBLED Code **********************

   

 ISNULL((select Top 1 numericalValue from ProductionResponse.GetDataPointExtendedValues(              
     (SELECT               
       TTW.CreatedDate               
      FROM HotMetal.TapTicketWeight TTW ,               
       HotMetal.TapTicketWeightType TTWType            
      WHERE              
       TTW.TapTicketID = TT.TapTicketID              
      AND              
       TTWType.TapTicketWeightTypeID = TTW.TapTicketWeightTypeID               
      AND              
       TTWType.TapTicketWeightTypeID IN (4)              

       ),              
      (SELECT               
       TTW.CreatedDate               
      FROM HotMetal.TapTicketWeight TTW ,               
       HotMetal.TapTicketWeightType TTWType              
     WHERE              
       TTW.TapTicketID = TT.TapTicketID              
      AND              
       TTWType.TapTicketWeightTypeID = TTW.TapTicketWeightTypeID               
      AND              
       TTWType.TapTicketWeightTypeID IN (1)              

      ),12,HotMetal.GetTemperatureOrALF3Tags(CAST(RTRIM(LTRIM(SUBSTRING(PU_Bay.Code,len(PU_Bay.Code),1))) as NVARCHAR(MAX)),’ALF3′),              
   NULL  )  
    GROUP BY numericalValue  
   order by  numericalValue desc     

   ), ») AIF3Qty,

***********************************************************************************

    FROM           

  HotMetal.TapTicket TT  
  LEFT JOIN Potline.Crucible PO on  TT.CrucibleID = PO.CrucibleID AND PO.IsActive = 1        
  LEFT JOIN HotMetal.SodiumTreatmentRecipe SOTR on SOTR.SodiumTreatmentRecipeID = TT.SodiumTreatmentRecipeID          
  LEFT JOIN HotMetal.TapTicketWeight TTW on TT.TapTicketID = TTW.TapTicketID 
  JOIN HotMetal.TapTicketWeightType T1 ON TTW.TapTicketWeightTypeID = T1.TapTicketWeightTypeID             
  LEFT JOIN FurnaceCharge.Batch FBA WITH (INDEX(ukBatchBatchNo)) on FBA.BatchID = TTW.BatchID        
  LEFT JOIN Equipment.ProductionUnit PU_Bay on PU_Bay.ProductionUnitID = TTW.ScaleProductionUnitID,        
  Equipment.ProductionUnit PU              
 WHERE TTW.WeighingDate >= @StartDate

 AND TTW.WeighingDate < @EndDate           
 AND T1.Code in (‘PreSkimming’ , ‘Full’)            

   )

  Select * from SDetailsCTE S
  order by S.WeighingDate,S.TapTicketNo desc

       

OK folks, it did happen at some point, to get this error message: Internal Query Processor Error: The query processor could not produce a query plan. For more information, contact Customer Support Services.

Reproducing the Internal Query Processor Error Message

I was trying to execute the following query:

SELECT * 
FROM dbo.tbl1
WHERE 
tbl2ID=(SELECT id FROM dbo.tbl2 WHERE Code='Code1')
AND 
tbl3ID=(SELECT id FROM dbo.tbl3 WHERE Code='Code2')

As you can see, in the above query I’m using two subqueries for getting some keys for use in my main query. In some cases you might get the aforementioned error message. However, this is not always the case as it depends on many factors and not only on the query itself.

Resolving the Internal Query Processor Error Message

Anyway, in order to resolve the issue I just had to re-write the query. The re-written query is the following:

SELECT  t1.* 
FROM dbo.tbl1 t1, dbo.tbl2 t2, dbo.tbl3 t3
WHERE 
t1.tbl2ID=t2.ID 
AND t1.tbl3ID=t3.ID
AND t2.Code='Code1'
AND t3.code='Code2'

As you can see, I just removed the subqueries and replaced them with additional joins on my main query. Now my query works like a charm!

*** Before changing your query or doing anything else, first, make sure that your instance of SQL Server has the latest service pack installed.

Strengthen you SQL Server Development Skills – Enroll to our Online Course!

Check our online course titled “Essential SQL Server Development Tips for SQL Developers
(special limited-time discount included in link).

Via the course, you will sharpen your SQL Server database programming skills via a large set of tips on T-SQL and database development techniques. The course, among other, features over than 30 live demonstrations!

Essential SQL Server Development Tips for SQL Developers - Online Course

(Lifetime Access/ Live Demos / Downloadable Resources and more!)

Enroll from $14.99

Featured Online Courses:

  • Essential SQL Server Administration Tips
  • SQL Server Fundamentals – SQL Database for Beginners
  • Essential SQL Server Development Tips for SQL Developers
  • Working with Python on Windows and SQL Server Databases
  • Introduction to Computer Programming for Beginners
  • Boost SQL Server Database Performance with In-Memory OLTP
  • Introduction to Azure SQL Database for Beginners
  • .NET Programming for Beginners – Windows Forms with C#
  • Introduction to Azure Database for MySQL
  • Introduction to SQL Server Machine Learning Services
  • SQL Server 2019: What’s New – New and Enhanced Features
  • Entity Framework: Getting Started – Complete Beginners Guide
  • How to Import and Export Data in SQL Server Databases
  • Learn How to Install and Start Using SQL Server in 30 Mins
  • A Guide on How to Start and Monetize a Successful Blog

Read Also:

  • Essential SQL Server Development Tips for SQL Developers
  • The TempDB System Database in SQL Server
  • SQL Server Installation and Setup Best Practices
  • The feature you are trying to use is on a network resource that is unavailable
  • SQL Server 2016: TempDB Enhancements
  • tempdb growth
  • Introduction to SQL Server Machine Learning Services
  • Essential SQL Server Administration Tips
  • What are SQL Server Statistics and Where are they Stored?
  • How Resolve Error 0xE0434352 in Windows Task Scheduler
  • How To Fix the Issue “This device can’t use a Trusted Platform Module”
  • …more

Check our other related SQL Server Administration articles.

Subscribe to our newsletter and stay up to date!

Check out our latest software releases!

Check our eBooks!

Rate this article: 1 Star2 Stars3 Stars4 Stars5 Stars (2 votes, average: 5.00 out of 5)

Loading…

Reference: SQLNetHub.com (https://www.sqlnethub.com)

© SQLNetHub

Artemakis Artemiou

Artemakis Artemiou is a Senior SQL Server Architect, Author, a 9 Times Microsoft Data Platform MVP (2009-2018). He has over 20 years of experience in the IT industry in various roles. Artemakis is the founder of SQLNetHub and {essentialDevTips.com}. Artemakis is the creator of the well-known software tools Snippets Generator and DBA Security Advisor. Also, he is the author of many eBooks on SQL Server. Artemakis currently serves as the President of the Cyprus .NET User Group (CDNUG) and the International .NET Association Country Leader for Cyprus (INETA). Moreover, Artemakis teaches on Udemy, you can check his courses here.

Views: 2,766

We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept All”, you consent to the use of ALL the cookies. However, you may visit «Cookie Settings» to provide a controlled consent. Read More

Hi all, I have hit a problem in SQL server 2016 and I don’t have access to 2017 to see if the same problem occurs there to. If someone would be so kind as to try the below query in a SQL 2017 environment and report back here I would be very grateful.

In SQL 2016 (SP2-CU3) (KB4458871) — 13.0.5216.0 (X64), Std. Ed., the query results in an error message:

Msg 8624, Level 16, State 17, Line 16

Internal Query Processor Error: The query processor could not produce a query plan. For more information, contact Customer Support Services.

With it a stackdump is created and logged in the sql log. So better not run it in a production environment…

The query has no table requirements and no side effects, so it can be run in any database. This is a very simplified version of an extremely complex query. The crucial part seems to be to generate an xml type in an outer apply, which then gets processed by the .nodes() function.

Here’s the query I would like to hear your results for:

select
(
select top 1
n.e.value('@val','int')
from t2.xmlfragment.nodes('/*') n(e)
)
from (
select 'somevalue'
) t1 (v)
outer apply (
select
t.val as [@val]
from (
select 1 as [val]
) t
for xml path('el'), type
) t2 (xmlfragment)
  • This topic was modified 3 years, 10 months ago by  R.P.Rozema. Reason: removed order by as it is not needed to reproduce the problem
  • This topic was modified 3 years, 10 months ago by  R.P.Rozema. Reason: Also union all can be left out and still the dump occurs

Posting Data Etiquette — Jeff Moden[/url]
Posting Performance Based Questions — Gail Shaw[/url]
Hidden RBAR — Jeff Moden[/url]
Cross Tabs and Pivots — Jeff Moden[/url]
Catch-all queries — Gail Shaw[/url]


If you don’t have time to do it right, when will you have time to do it over?

R.P.Rozema

SSChampion

Points: 12305

Using the outer apply is causing this. Replacing it by a cross apply avoids the problem. Now I just need to make sure that I won’t filter out any rows by the cross apply…

Actually I found that this problem exists since at least 2014 in SQL 2008 SP2: https://dba.stackexchange.com/questions/78659/the-query-processor-could-not-produce-a-query-plan

And I was able to reproduce it myself in SQL 2012 too.


Posting Data Etiquette — Jeff Moden[/url]
Posting Performance Based Questions — Gail Shaw[/url]
Hidden RBAR — Jeff Moden[/url]
Cross Tabs and Pivots — Jeff Moden[/url]
Catch-all queries — Gail Shaw[/url]


If you don’t have time to do it right, when will you have time to do it over?

Grant Fritchey

SSC Guru

Points: 398118

Interesting. I just validated that this will fail on SQL Server 2019 as well as SQL Server 2017. The logic of the OUTER APPLY must be somehow invalid. I’m not sure.

In Joyful Craftsmen we provide, among other things, technical support to our customers, which from time to time involves us in very interesting cases. One of them occurred after a migration of a critical stock trading system database to SQL Server 2017. Every night, when there are no trades on the market, a sanitary job runs and deletes old data from some tables in one of its steps. After the migration, this job started to fail with an interesting error message:

Executed as user: DOMAINXYZ. Error: The query processor could not produce a query plan. For more information, contact Customer Support Services. [SQLSTATE 42000] (Error 8624). The step failed.

The error also caused a crash of the thread and a minidump creation:

After some research, we were able to get to the critical part of the code, where the error was occurring:

  DELETE TER
  FROM [trd].[EntityReferences] AS TER
  INNER JOIN [trd].[TransactionBuffers] AS T
  ON TER.Id = T.ID AND TER.Type = 10670
  WHERE TER.Type = 10670
  AND T.Modified < @ToDate

The interesting thing was that the error occurred only when the code had run inside the SQL Server Agent’s job. When we copied the exact same lines of code into SSMS, everything was working properly and the statement finished in a few seconds. As a logical conclusion we tried to align the connection settings of SSMS to the connection options of SQL Server Agent and then the query started to run immediately. This helped us to get the job working but another question arose – why the query had failed with such a strange error under the SQL Server Agent’s connection options?

Connection options vs query optimizer

Before we get to the explanation, let’s have a brief look on what some of these connection options mean and how they are set. The fact that different connectors are using different connection options is pretty well known and on the internet we can find several resources which show differences for most typical connectors. One of them can be found in Erland Sommarskog’s great article Query Plan Mysteries.

ANSI Setting Applications using ADO .Net, ODBC or OLE DB SSMS SQLCMD, OSQL, BCP, SQL Server Agent ISQL,  DB-Library
ANSI_NULL_DFLT_ON ON ON ON OFF
ANSI_NULLS ON ON ON OFF
ANSI_PADDING ON ON ON OFF
ANSI_WARNINGS ON ON ON OFF
CONACT_NULLS_YIELD_NULL ON ON ON OFF
QUOTED_IDENTIFIER ON ON OFF OFF
ARITHABORT OFF ON OFF OFF

In a table taken from Erland’s article I have highlighted two options which differ between SSMS and SQL Server Agent – ARITHABORT and QUOTED_IDENTIFIER.

An ARITHABORT option sets how to handle an overflow or divide-by-zero errors. More specifically, it sets if a number divided by null or zero is a null (when ARITHABORT is OFF) or an error (when ARITHABORT is ON). To make it more complicated this behavior is true only when SET ANSI WARNINGS is OFF. The following diagram visualizes this behavior graphically:


A QUOTED_IDENTIFIER option in simple words means – should a query optimizer consider double quotes as an identifier just as it does for square brackets? All of us know that [] are used in T-SQL to identify keywords or characters against T-SQL syntax. If QUOTED_IDENTIFIER is set to ON, the double quotes will represent the same thing as the square brackets. That’s the reason why both following statements fail:

SET QUOTED_IDENTIFIER ON
GO
SELECT [1]
GO
SELECT “1”
GO

Msg 207, Level 16, State 1, Line 3
Invalid column name ‘1’.
Msg 207, Level 16, State 1, Line 5
Invalid column name ‘1’.

And why the query optimizer for statements

SET QUOTED_IDENTIFIER OFF
GO
SELECT [1]
GO
SELECT “1”
GO

returns an error only for the first one.

By the way, do different connection options for SSMS and SQL Server Agent mean that they are using different drivers to connect to the engine itself? Not at all! As you can see in the following figure, these settings are changed by calling an explicit query statement whenever a new connection is created.

In the first step, SQL Server Agent sets all the connection options during the login phase to “ODBC defaults” which are immediately rewritten by calling set quoted_identifier off. This happens every single time when a new job step opens a connection to SQL Server.

The exact same thing is happening within the SSMS where default driver-based options are also rewritten by a consequent statement as shown in the next figure.

This behavior can be understood in case of SSMS, where the query aligns many settings from a query options dialog, but it really doesn’t make much sense for SQL Server Agent’s connection. Especially when there is no option for how to globally change it.

Root cause

Now that we know how these options are set and what their impact is, let’s focus back on the Internal Query Processor Error. It’s important to say that the table where the delete was performed was something like a crossroads of a database, which linked many tables together. Developers were very conscientious in creating foreign key constraints between all linked tables, which is great for ensuring the integrity of the data but not that useful if you are concerned about performance…

A following figure shows what query plan was generated for that simple delete:

Dozens of relationships for referenced tables mean that for every single row dozens of other tables have to be checked. This is not something that could cause an error by itself, but it led us to the idea of checking the underlying objects in each of the referenced tables. And then we found them…

One of the most discussed things related to connection options are filtered indexes. If you want to create and use them, your connection options have to have QUOTED_IDENTIFIER set to ON. Surprisingly, this information is missing in the documentation for filtered indexes but you can find it in the documentation for QUOTED_IDENTIFIER and for general indexing.

You can display filtered indexes easily by calling:

  SELECT * FROM sys.indexes i WHERE i.has_filter = 1

When we crosschecked the output with objects referencing the table where deletion has occurred, we found two filtered indexes. Once we dropped them, the error was gone.

A similar thing could happen with XML indexes as well.

Is it a bug? Under normal circumstances, when you try to perform an operation which would touch a filtered index, you get a nice error message saying “DELETE failed because of SET options”:

USE AdventureWorks2016
GO
SET QUOTED_IDENTIFIER ON;
CREATE NONCLUSTERED INDEX FI_Production_Weight
ON Production.Product ([Weight],[ProductSubcategoryID])
WHERE [Weight] IS NOT NULL;
GO
SET QUOTED_IDENTIFIER OFF;
DELETE
FROM Production.Product
WHERE ProductSubcategoryID = 1;

Msg 1934, Level 16, State 1, Line 10
DELETE failed because the following SET options have incorrect settings: ‘QUOTED_IDENTIFIER’. Verify that SET options are correct for use with indexed views and/or indexes on computed columns and/or filtered indexes and/or query notifications and/or XML data type methods and/or spatial index operations.

But in our case, when the filtered index was “far” in a tree of referencing tables, a mysterious Internal Query Processor Error appeared instead and the thread crashed. This is definitely not an intended behavior and most likely a bug.

How is this case connected with an upgrade to SQL Server 2017 which I mentioned at the beginning of the post? It isn’t! It just confused us, because the upgrade was connected with some indexes creation (including filtered indexes) from developers and local DBAs didn’t know about it. It’s a good example how Database Lifecycle Management shouldn’t be handled, but that is another story. The important thing is that the connection options for SQL Server Agent remain unchanged in all current versions of SQL Server and an upgrade had nothing to do with the issue we experienced.

Takeaways

A key takeaway is that filtered indexes and T-SQL code inside T-SQL job step in SQL Server Agent don’t play together. Therefore, the first statement in any T-SQL job step should always be SET QUOTED_IDENTIFIER ON. Otherwise we run the risk that the job will fail with a nice or way less nice error message. This is especially true if you are not using stored procedures to execute your code from SQL Server Agent.

If stored procedures or other programmable objects are used (which is good practice anyway), don’t forget to check their connection options by:

WITH c AS (
  SELECT  OBJECTPROPERTY([object_id], ‘IsQuotedIdentOn’) AS IsQuotedIdentOn, OBJECTPROPERTY([object_id], ‘ExecIsQuotedIdentOn’) AS ExecIsQuotedIdentOn, *
  FROM sys.objects o
  WHERE o.type NOT IN ( ‘D’, ‘C ‘ )
)
SELECT *
FROM c
WHERE c.IsQuotedIdentOn <> 1
OR c.ExecIsQuotedIdentOn <> 1;
GO

If any rows are returned, check them and try to set proper connection settings for them.

 
Skip Navigation Links

Home > Tips & Tricks > Error Messages 8501 to 9000

SQL Server Error Messages — Errors 8501 to 9000

SQL Server Error Message — Errors 8501 to 9000

A message number uniquely identifies each error message and the error message
text describes the problem.  The error message text often includes
placeholders for information (such as object names) to be inserted in the error
message when it is displayed.  Unfortunately, the error message text does
not tell you how to solve or work around the problem.  In this series of
Error Messages list, we will try to provide you with ways on how to overcome or
work around certain error messages.

Some error messages are self-explanatory and can easily be fixed, such as
«Invalid object name».  Others are harder to fix or work around, especially
by those who are new to SQL Server.  It is the intent of this page and
succeeding pages (to come) to assist you in addressing or working around
SQL Server error messages.

Error Severity Description
8501 16 MSDTC on server ‘%.*ls’ is unavailable.
8502 20 Unknown MSDTC token ‘0x%x’ received.
8504 20 Invalid transaction import buffer.
8506 20 Invalid transaction state change requested from %hs to %hs.
8508 20 QueryInterface failed for ‘%hs’: %hs.
8509 20 Import of MSDTC transaction failed: %hs.
8510 20 Enlist of MSDTC transaction failed: %hs.
8511 20 Unknown isolation level %d requested from MSDTC.
8512 20 MSDTC Commit acknowledgement failed: %hs.
8513 20 MSDTC Abort acknowledgement failed: %hs.
8514 20 MSDTC PREPARE acknowledgement failed: %hs.
8515 20 MSDTC Global state is invalid.
8517 20 Failed to get MSDTC PREPARE information: %hs.
8518 20 MSDTC BEGIN TRANSACTION failed: %hs.
8519 16 Current MSDTC transaction must be committed by remote client.
8520 20 Commit of internal MSDTC transaction failed: %hs.
8521 20 Invalid awakening state. Slept in %hs; awoke in %hs.
8522 20 Distributed transaction aborted by MSDTC.
8523 15 PREPARE TRAN statement not allowed on MSDTC transaction.
8524 16 The current transaction could not be exported to the remote provider. It has been rolled back.
8525 16 Distributed transaction completed. Either enlist this session in a new transaction or the NULL transaction.
8601 17 Internal Query Processor Error: The query processor could not obtain access to a required interface.
8602 16 Indexes used in hints must be explicitly included by the index tuning wizard.
8616 10 The index hints for table ‘%.*ls’ were ignored because the table was considered a fact table in the star join.
8617 17 Invalid Query: CUBE and ROLLUP cannot compute distinct aggregates.
8618 17 Warning: The query processor could not produce a query plan from the optimizer because the total length of all the columns in the GROUP BY or ORDER BY clause exceeds 8000 bytes.
8619 17 Warning: The query processor could not produce a query plan from the optimizer because the total length of all the columns in the GROUP BY or ORDER BY clause exceeds 8000 bytes. Resubmit your query without the ROBUST PLAN hint.
8620 17 Internal Query Processor Error: The query processor encountered an internal limit overflow.
8621 16 Internal Query Processor Error: The query processor ran out of stack space during query optimization.
8622 16 Query processor could not produce a query plan because of the hints defined in this query. Resubmit the query without specifying any hints and without using SET FORCEPLAN.
8623 16 Internal Query Processor Error: The query processor could not produce a query plan. Contact your primary support provider for more information.
8624 16 Internal SQL Server error.
8625 16 Warning: The join order has been enforced because a local join hint is used.
8626 16 Only text pointers are allowed in work tables, never text, ntext, or image columns. The query processor produced a query plan that required a text, ntext, or image column in a work table.
8627 16 The query processor could not produce a query plan because of the combination of hints and text, ntext, or image data passing through operators using work tables.
8628 17 A time out occurred while waiting to optimize the query. Rerun the query.
8629 16 The query processor could not produce a query plan from the optimizer because a query cannot update a text, ntext, or image column and a clustering key at the same time.
8630 16 Internal Query Processor Error: The query processor encountered an unexpected error during execution.
8640 17 Internal Query Processor Error: The query processor encountered an unexpected work table error during execution.
8642 17 The query processor could not start the necessary thread resources for parallel query execution.
8644 16 Internal Query Processor Error: The plan selected for execution does not support the invoked given execution routine.
8645 17 A time out occurred while waiting for memory resources to execute the query. Rerun the query.
8646 21 The index entry for row ID %.*hs was not found in index ID %d, of table %d, in database ‘%.*ls’.
8647 20 Scan on sysindexes for database ID %d, object ID %ld, returned a duplicate index ID %d. Run DBCC CHECKTABLE on sysindexes.
8648 1720 Could not insert a row larger than the page size into a hash table. Resubmit the query with the ROBUST PLAN hint.
8649 17 The query has been canceled because the estimated cost of this query (%d) exceeds the configured threshold of %d. Contact the system administrator.
8650 13 Intra-query parallelism caused your server command (process ID #%d) to deadlock. Rerun the query without intra-query parallelism by using the query hint option (maxdop 1).
8651 17 Could not perform the requested operation because the minimum query memory is not available. Decrease the configured value for the ‘min memory per query’ server configuration option.
8653 17 Warning: The query processor is unable to produce a plan because the table ‘%.*ls’ is marked OFFLINE.
8654 16 A cursor plan could not be generated for the given statement because it contains textptr ( inrow lob ).
8660 16 An index cannot be created on the view ‘%.*ls’ because the view definition does not include all the columns in the GROUP BY clause.
8661 16 A clustered index cannot be created on the view ‘%.*ls’ because the index key includes columns which are not in the GROUP BY clause.
8662 16 An index cannot be created on the view ‘%.*ls’ because the view definition includes an unknown value (the sum of a nullable expression).
8663 16 An index cannot be created on the view ‘%.*ls’ because the view definition does not include count_big(*).
8664 16 An index cannot be created on the view ‘%.*ls’ because the view definition includes duplicate column names.
8665 16 An index cannot be created on the view ‘%.*ls’ because no row can satisfy the view definition.
8666 10 Warning: The optimizer cannot use the index because the select list of the view contains a non-aggregate expression.
8667 10 Warning: The optimizer cannot use the index because the group-by list in the view forms a key and is redundant.
8680 17 Internal Query Processor Error: The query processor encountered an unexpected error during the processing of a remote query phase.
Error Severity Description
8901 13 Deadlock detected during DBCC. Complete the transaction in progress and retry this statement.
8902 17 Memory allocation error during DBCC processing.
8903 16 Extent %S_PGID in database ID %d is allocated in both GAM %S_PGID and SGAM %S_PGID.
8904 16 Extent %S_PGID in database ID %d is allocated by more than one allocation object.
8905 16 Extent %S_PGID in database ID %d is marked allocated in the GAM, but no SGAM or IAM has allocated it.
8906 16 Page %S_PGID in database ID %d is allocated in the SGAM %S_PGID and PFS %S_PGID, but was not allocated in any IAM. PFS flags ‘%hs’.
8908 16 Table error: Database ID %d, object ID %d, index ID %d. Chain linkage mismatch. %S_PGID->next = %S_PGID, but %S_PGID->prev = %S_PGID.
8909 16 Table error: Object ID %d, index ID %d, page ID %S_PGID. The PageId in the page header = %S_PGID.
8910 16 Page %S_PGID in database ID %d is allocated to both object ID %d, index ID %d, and object ID %d, index ID %d.
8911 10 The error has been repaired.
8912 10 %.*ls fixed %d allocation errors and %d consistency errors in database ‘%ls’.
8913 16 Extent %S_PGID is allocated to ‘%ls’ and at least one other object.
8914 10 Incorrect PFS free space information for page %S_PGID, object ID %d, index ID %d, in database ID %d. Expected value %hs, actual value %hs.
8915 10 File %d (number of mixed extents = %ld, mixed pages = %ld).
8916 10 Object ID %ld, Index ID %ld, data extents %ld, pages %ld, mixed extent pages %ld.
8917 10 Object ID %ld, Index ID %ld, index extents %ld, pages %ld, mixed extent pages %ld.
8918 10 (number of mixed extents = %ld, mixed pages = %ld) in this database.
8919 16 Single page allocation %S_PGID in table %ls, object ID %d, index ID %d is not allocated in PFS page ID %S_PGID.
8920 16 Cannot perform a %ls operation inside a user transaction. Terminate the transaction and reissue the statement.
8921 16 CHECKTABLE terminated. A failure was detected while collecting facts. Possibly tempdb out of space or a system table is inconsistent. Check previous errors.
8922 10 Could not repair this error.
8923 10 The repair level on the DBCC statement caused this repair to be bypassed.
8924 10 Repairing this error requires other errors to be corrected first.
8925 16 Table error: Cross object linkage: Page %S_PGID, slot %d, in object ID %d, index ID %d, refers to page %S_PGID, slot %d, in object ID %d, index ID %d.
8926 16 Table error: Cross object linkage: Parent page %S_PGID, slot %d, in object ID %d, index ID %d, and page %S_PGID, slot %d, in object ID %d, index ID %d, next refer to page %S_PGID but are not in the same object.
8927 16 Object ID %d, index ID %d: The ghosted record count (%d) in the header does not match the number of ghosted records (%d) found on page %S_PGID.
8928 16 Object ID %d, index ID %d: Page %S_PGID could not be processed. See other errors for details.
8929 16 Object ID %d: Errors found in text ID %I64d owned by data record identified by %.*ls.
8930 16 Table error: Object ID %d, index ID %d cross-object chain linkage. Page %S_PGID points to %S_PGID in object ID %d, index ID %d.
8931 16 Table error: Object ID %d, index ID %d B-tree level mismatch, page %S_PGID. Level %d does not match level %d from parent %S_PGID.
8932 16 Table error: Object ID %d, index ID %d, column ‘%.*ls’. The column ID %d is not valid for this table. The valid range is from 1 to %d.
8933 16 Table error: Object ID %d, index ID %d. The low key value on page %S_PGID (level %d) is not %ls the key value in the parent %S_PGID slot %d.
8934 16 Table error: Object ID %d, index ID %d. The high key value on page %S_PGID (level %d) is not less than the low key value in the parent %S_PGID, slot %d of the next page %S_PGID.
8935 16 Table error: Object ID %d, index ID %d. The previous link %S_PGID on page %S_PGID does not match the previous page %S_PGID that the parent %S_PGID, slot %d expects for this page.
8936 16 Table error: Object ID %d, index ID %d. B-tree chain linkage mismatch. %S_PGID->next = %S_PGID, but %S_PGID->Prev = %S_PGID.
8937 16 Table error: Object ID %d, index ID %d. B-tree page %S_PGID has two parent nodes %S_PGID, slot %d and %S_PGID, slot %d.
8938 16 Table error: Page %S_PGID, Object ID %d, index ID %d. Unexpected page type %d.
8939 16 Table error: Object ID %d, index ID %d, page %S_PGID. Test (%hs) failed. Values are %ld and %ld.
8940 16 Table error: Object ID %d, index ID %d, page %S_PGID. Test (%hs) failed. Address 0x%x is not aligned.
8941 16 Table error: Object ID %d, index ID %d, page %S_PGID. Test (%hs) failed. Slot %d, offset 0x%x is invalid.
8942 16 Table error: Object ID %d, index ID %d, page %S_PGID. Test (%hs) failed. Slot %d, offset 0x%x overlaps with the prior row.
8943 16 Table error: Object ID %d, index ID %d, page %S_PGID. Test (%hs) failed. Slot %d, row extends into free space at 0x%x.
8944 16 Table error: Object ID %d, index ID %d, page %S_PGID, row %d. Test (%hs) failed. Values are %ld and %ld.
8945 16 Table error: Object ID %d, index ID %d will be rebuilt.
8946 16 Table error: Allocation page %S_PGID has invalid %ls page header values. Type is %d. Check type, object ID and page ID on the page.
8947 16 Table error: Multiple IAM pages for object ID %d, index ID %d contain allocations for the same interval. IAM pages %S_PGID and %S_PGID.
8948 16 Database error: Page %S_PGID is marked with the wrong type in PFS page %S_PGID. PFS status 0x%x expected 0x%x.
8949 10 %.*ls fixed %d allocation errors and %d consistency errors in table ‘%ls’ (object ID %d).
8950 16 %.*ls fixed %d allocation errors and %d consistency errors not associated with any single object.
8951 16 Table error: Table ‘%ls’ (ID %d). Missing or invalid key in index ‘%ls’ (ID %d) for the row:
8952 16 Table error: Database ‘%ls’, index ‘%ls.%ls’ (ID %d) (index ID %d). Extra or invalid key for the keys:
8953 10 Repair: Deleted text column, text ID %I64d, for object ID %d on page %S_PGID, slot %d.
8954 10 %.*ls found %d allocation errors and %d consistency errors not associated with any single object.
8955 16 Data row (%d:%d:%d) identified by (%ls) has index values (%ls).
8956 16 Index row (%d:%d:%d) with values (%ls) points to the data row identified by (%ls).
8957 10 DBCC %ls (%ls%ls%ls) executed by %ls found %d errors and repaired %d errors.
8958 10 %ls is the minimum repair level for the errors found by DBCC %ls (%ls %ls).
8959 16 Table error: IAM page %S_PGID for object ID %d, index ID %d is linked in the IAM chain for object ID %d, index ID %d by page %S_PGID.
8960 23 Table error: Page %S_PGID, slot %d, column %d is not a valid complex column.
8961 23 Table error: Object ID %d. The text, ntext, or image node at page %S_PGID, slot %d, text ID %I64d does not match its reference from page %S_PGID, slot %d.
8962 23 Table error: The text, ntext, or image node at page %S_PGID, slot %d, text ID %I64d has incorrect node type %d.
8963 23 Table error: The text, ntext, or image node at page %S_PGID, slot %d, text ID %I64d has type %d. It cannot be placed on a page of type %d.
8964 23 Table error: Object ID %d. The text, ntext, or image node at page %S_PGID, slot %d, text ID %I64d is not referenced.
8965 23 Table error: Object ID %d. The text, ntext, or image node at page %S_PGID, slot %d, text ID %I64d is referenced by page %S_PGID, slot %d, but was not seen in the scan.
8966 22 Could not read and latch page %S_PGID with latch type %ls. %ls failed.
8967 16 Table error: Invalid value detected in %ls for Object ID %d, index ID %d. Row skipped.
8968 16 Table error: %ls page %S_PGID (object ID %d, index ID %d) is out of the range of this database.
8969 16 Table error: IAM chain linkage error: Object ID %d, index ID %d. The next page for IAM page %S_PGID is %S_PGID, but the previous link for page %S_PGID is %S_PGID.
8970 16 Row error: Object ID %d, index ID %d, page ID %S_PGID, row ID %d. Column ‘%.*ls’ was created NOT NULL, but is NULL in the row.
8971 16 Forwarded row mismatch: Object ID %d, page %S_PGID, slot %d points to forwarded row page %S_PGID, slot %d; the forwarded row points back to page %S_PGID, slot %d.
8972 16 Forwarded row referenced by more than one row. Object ID %d, page %S_PGID, slot %d incorrectly points to forwarded row page %S_PGID, slot %d; the forwarded row correctly refers back to page %S_PGID, slot %d.
8973 16 CHECKTABLE processing of object ID %d, index ID %d encountered page %S_PGID, slot %d twice. Possible internal error or allocation fault.
8974 16 Text node referenced by more than one node. Object ID %d, text, ntext, or image node page %S_PGID, slot %d, text ID %I64d is pointed to by page %S_PGID, slot %d and by page %S_PGID, slot %d.
8975 16 Table error: Object ID %d, index ID %d. The child page pointer %S_PGID on PageId %S_PGID, slot %d is not a valid page for this database.
8976 16 Table error: Object ID %d, index ID %d. Page %S_PGID was not seen in the scan although its parent %S_PGID and previous %S_PGID refer to it. Check any previous errors.
8978 16 Table error: Object ID %d, index ID %d. Page %S_PGID is missing a reference from previous page %S_PGID. Possible chain linkage problem.
8979 16 Table error: Object ID %d, index ID %d. Page %S_PGID is missing references from parent (unknown) and previous (page %S_PGID) nodes. Possible bad root entry in sysindexes.
8980 16 Table error: Object ID %d, index ID %d. Index node page %S_PGID, slot %d refers to child page %S_PGID and previous child %S_PGID, but they were not encountered.
8981 16 Table error: Object ID %d, index ID %d. The next pointer of %S_PGID refers to page %S_PGID. Neither %S_PGID nor its parent were encountered. Possible bad chain linkage.
8982 16 Table error: Cross object linkage. Page %S_PGID->next in object ID %d, index ID %d refers to page %S_PGID in object ID %d, index ID %d but is not in the same index.
8983 10 File %d. Extents %d, used pages %d, reserved pages %d, mixed extents %d, mixed pages %d.
8984 10 Object ID %d, index ID %d. Allocations for %S_PGID. IAM %S_PGID, extents %d, used pages %d, mixed pages %d.
8985 16 Could not locate file ‘%.*ls’ in sysfiles.
8986 16 Too many errors found (%d) for object ID %d. To see all error messages rerun the statement using «WITH ALL_ERRORMSGS».
8987 16 No help available for DBCC statement ‘%.*ls’.
8988 10 The schema for database ‘%ls’ is changing. May find spurious allocation problems due to schema changes in progress.
8989 10 %.*ls found %d allocation errors and %d consistency errors in database ‘%ls’.
8990 10 %.*ls found %d allocation errors and %d consistency errors in table ‘%ls’ (object ID %d).
8991 16 0x%.8x + 0x%.8x bytes is not a valid address range.
8992 16 Database ID %d, object ‘%ls’ (ID %d). Loop in data chain detected at %S_PGID.
8993 16 Object ID %d, forwarding row page %S_PGID, slot %d points to page %S_PGID, slot %d. Did not encounter forwarded row. Possible allocation error.
8994 16 Object ID %d, forwarded row page %S_PGID, slot %d should be pointed to by forwarding row page %S_PGID, slot %d. Did not encounter forwarding row. Possible allocation error.
8995 16 System table ‘%.*ls’ (object ID %d, index ID %d) is in filegroup %d. All system tables must be in filegroup %d.
8996 16 IAM page %S_PGID for object ID %d, index ID %d controls pages in filegroup %d, that should be in filegroup %d.
8997 16 Single page allocation %S_PGID for object ID %d, index ID %d is in filegroup %d; it should be in filegroup %d.
8998 16 Page errors on the GAM, SGAM, or PFS pages do not allow CHECKALLOC to verify database ID %d pages from %S_PGID to %S_PGID. See other errors for cause.
8999 10 Database tempdb allocation errors prevent further %ls processing.
Related Articles :
  • Frequently Asked
    Questions — SQL Server Error Messages
  • Tips & Tricks — SQL Server Error Messages 4001 to 5000
  • Tips & Tricks — SQL Server Error Messages 5001 to 6000
  • Tips & Tricks — SQL Server Error Messages 6001 to 7000
  • Tips & Tricks — SQL Server Error Messages 7001 to 7500

Понравилась статья? Поделить с друзьями:
  • Internal protection error консультант плюс
  • Internal protection error please contact to author как исправить
  • Internal program error abbyy finereader 12
  • Internal power error при установке windows 10
  • Internal power error перевод