High CPU usage when using the automatic tuning feature in SQL Server can occur due to several factors, including the nature of the queries being optimized and the system's overall workload. Here are some considerations and steps you can take to address the issue:
- Query Optimization: Automatic tuning may lead to changes in query execution plans that could inadvertently increase CPU usage. If the automatic tuning feature is causing performance issues, you might want to review the execution plans of the queries that are timing out or consuming high CPU.
- Service Broker Endpoint: The error message regarding the Service Broker endpoint being in a disabled or stopped state suggests that there might be issues with messaging or background processing that could affect performance. Ensure that the Service Broker is properly configured and enabled if your application relies on it.
- Access Denied Errors: The errors about denied access to .NET DLLs could indicate permission issues that might affect the execution of certain queries or processes. Verify that the SQL Server service account has the necessary permissions to access these resources.
- Monitoring and Logging: Utilize SQL Server's monitoring tools to log CPU usage and query performance over time. This can help identify patterns or specific queries that are causing spikes in CPU usage.
- Disabling Automatic Tuning: If disabling automatic tuning resolves the CPU issues, consider managing index tuning and query optimization manually. This allows for more control over how changes are applied to your database.
- Consult Documentation: Check the official Microsoft documentation for any known issues related to automatic tuning and high CPU usage. There may be specific configurations or updates that address your situation.
If these issues persist, it may be beneficial to engage with Microsoft support or consult the SQL Server community for further insights.
References: