Sign in with Microsoft
Sign in or create an account.
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.


Assume that you have enabled the new cardinality estimatorin Microsoft SQL Server 2014. When you run a query that contains join statements, you may encounter the following issues:

  • Some queries take significantly longer time to compile, especially when the query has a large number of joins. The compile time may keep growing significantly with the growing of joins.

  • When the join predicate uses other conditions than equality or a combination of equalities, the estimated number of rows of specific types in joins differs from the actual number of rows that are processed. In this situation, the query performance decreases, and because the query requests a large memory grant, the overall server performance decreases.


Service pack information

To resolve this issue, obtain Service Pack 1 for SQL Server 2014.

For more information about SQL Server 2014 Service Pack 1 (SP1), see bugs that are fixed in SQL Server 2014 Service Pack 1.

Note To make the fix take effect for the second issue described in this article, enable trace flag 4199.


To work around these issues, use the old cardinality estimator by either setting the database compatibility level to a value less than 120, or enabling trace flag 9481 at global, session, or query level.


Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.

Was this information helpful?

What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!