debugsqlMinor
Experiencing CLR error on SQL Azure DB
Viewed 0 times
errorsqlclrexperiencingazure
Problem
Out of nowhere we started seeing this error and it seems to occur fairly frequently when making calls to the database or any other database in our Elastic Pool. The DTUs aren't being maxed out and the resource dmvs don't seem bad.
Failed to enter Common Language Runtime (CLR) with HRESULT
0x80131022. This may be due to low resource conditions. (db)
Here's what I got from the system resource governor pool
From the sys.dm_os_performance_counters this is what it looks like for the past 3 hours.
This doesn't seem like a common error for SQL Azure as I cannot find anything that pertains to this happening past SQL Server 2008. Any help would be appreciated.
Update:
We got a response from the Microsoft support rep and it looks like our memory usage was completely capped out.
After moving the elastic pool up a tier the error has gone away. We have ~56GB of memory instead of the ~28GB we had previously and the error ceased. This would
Failed to enter Common Language Runtime (CLR) with HRESULT
0x80131022. This may be due to low resource conditions. (db)
Here's what I got from the system resource governor pool
Resource Pool Name cache_memory (MB) used_memory (MB)
internal 104.773437 1577.125000
default 37.609375 38.796875
SloSecSharedPool 2.914062 8.156250
InMemBackupRestorePool 26.210937 101.437500
InMemDmvCollectorPool 186.195312 203.406250
InMemMetricsDownloaderPool 2.234375 2.250000
InMemDTAPool 0.000000 0.000000
SloHkPool 0.000000 0.031250
InMemQueryStorePool 22.453125 35.304687
InMemWIAutoTuningPool 3.312500 4.062500
InMemXdbLoginPool 3.976562 6.250000
PVSCleanerPool 0.000000 0.000000
InMemTdeScanPool 0.000000 0.000000
SloSharedPool1 1108.890625 1234.312500From the sys.dm_os_performance_counters this is what it looks like for the past 3 hours.
cpu% data_io% log_write% memory_usage% max_worker% sessions%
22.37 73.51 16.54 41.56 5.50 0.43This doesn't seem like a common error for SQL Azure as I cannot find anything that pertains to this happening past SQL Server 2008. Any help would be appreciated.
Update:
We got a response from the Microsoft support rep and it looks like our memory usage was completely capped out.
After moving the elastic pool up a tier the error has gone away. We have ~56GB of memory instead of the ~28GB we had previously and the error ceased. This would
Solution
While Azure SQL Database (not the new Managed Instance) does not support custom SQLCLR Assemblies (i.e. the "CLR enabled" server-level configuration option), CLR is still used internally for the following features:
Msg 7432, Level 16, State 0, Line XXXXX
Heterogeneous queries and use of OLEDB providers are not supported in fiber mode.
Of course, this does not point to what would be hogging memory. But it should help identify the affected area(s).
- CLR datatypes:
- Geometry
- Geography
- Hierarchyid
- Built-in functions:
- introduced in SQL Server 2012:
FORMAT
PARSE
TRY_PARSE
- introduced in SQL Server 2016:
AT TIME ZONE
COMPRESS
DECOMPRESS
sys.time_zone_info
- maybe others
- SSIS (Fuzzy Lookup /
sp_FuzzyLookupTableMaintenanceInvoke, etc)
- Change Data Capture (CDC)
- Replication
- Master Data Services
- Policy Based Managemen (PBM; originally named "Dynamic Management Framework (DMF)" )
- External Tables (including External Data Sources and possibly External File Formats): This functionality is new as of SQL Server 2016, and this functionality using CLR internally has been mentioned in other answers here by Joe and Henrik. Both Joe and Henrik indicate being told by Microsoft that External Tables rely upon CLR, and while I have not been able to confirm this directly (by seeing the system App Domain get created when using any of this functionality), I was at least able to confirm that when "Lightweight Pooling" mode is enabled, all 3 of these components fail with the following error:
Msg 7432, Level 16, State 0, Line XXXXX
Heterogeneous queries and use of OLEDB providers are not supported in fiber mode.
- maybe others
Of course, this does not point to what would be hogging memory. But it should help identify the affected area(s).
Context
StackExchange Database Administrators Q#213328, answer score: 4
Revisions (0)
No revisions yet.