{
  "id": "dotnet/ef-core-connection-resiliency-failed-to-retry",
  "signature": "Microsoft.EntityFrameworkCore.Storage.RetryLimitExceededException: The execution strategy 'SqlServerRetryingExecutionStrategy' executed the operation 6 time(s) without success.",
  "signature_zh": "Microsoft.EntityFrameworkCore.Storage.RetryLimitExceededException: 执行策略 'SqlServerRetryingExecutionStrategy' 已执行操作 6 次但未成功。",
  "regex": "RetryLimitExceededException.*RetryingExecutionStrategy",
  "domain": "dotnet",
  "category": "data_error",
  "subcategory": null,
  "root_cause": "Entity Framework Core's retry execution strategy exhausted its retry attempts due to persistent transient faults like deadlocks, timeouts, or network blips from SQL Server.",
  "root_cause_type": "generic",
  "root_cause_zh": "Entity Framework Core 的重试执行策略因 SQL Server 的持久性瞬时故障（如死锁、超时或网络波动）而耗尽重试次数。",
  "versions": [
    {
      "version": "Entity Framework Core 6.0.x",
      "introduced": null,
      "deprecated": null,
      "removed": null,
      "behavior_change": null,
      "status": "active"
    },
    {
      "version": "Entity Framework Core 7.0.x",
      "introduced": null,
      "deprecated": null,
      "removed": null,
      "behavior_change": null,
      "status": "active"
    },
    {
      "version": "Entity Framework Core 8.0.x",
      "introduced": null,
      "deprecated": null,
      "removed": null,
      "behavior_change": null,
      "status": "active"
    }
  ],
  "os_specific": {},
  "dead_ends": [
    {
      "action": "",
      "why_fails": "Increasing retry count without addressing root cause just delays failure.",
      "fail_rate": 0.9,
      "condition": "",
      "sources": []
    },
    {
      "action": "",
      "why_fails": "Disabling retry entirely makes app brittle to transient faults.",
      "fail_rate": 0.95,
      "condition": "",
      "sources": []
    },
    {
      "action": "",
      "why_fails": "Switching to a different execution strategy doesn't fix underlying database issues.",
      "fail_rate": 0.8,
      "condition": "",
      "sources": []
    }
  ],
  "workarounds": [
    {
      "action": "Analyze SQL Server error logs for deadlocks or timeouts; optimize queries or indexes to reduce contention.",
      "success_rate": 0.75,
      "how": "Analyze SQL Server error logs for deadlocks or timeouts; optimize queries or indexes to reduce contention.",
      "condition": "",
      "sources": []
    },
    {
      "action": "Reduce retry interval and increase max retry count with exponential backoff in DbContext options.",
      "success_rate": 0.85,
      "how": "Reduce retry interval and increase max retry count with exponential backoff in DbContext options.",
      "condition": "",
      "sources": []
    },
    {
      "action": "Implement custom execution strategy to log and handle specific transient exceptions like deadlock (1205).",
      "success_rate": 0.7,
      "how": "Implement custom execution strategy to log and handle specific transient exceptions like deadlock (1205).",
      "condition": "",
      "sources": []
    }
  ],
  "workarounds_zh": [
    "Analyze SQL Server error logs for deadlocks or timeouts; optimize queries or indexes to reduce contention.",
    "Reduce retry interval and increase max retry count with exponential backoff in DbContext options.",
    "Implement custom execution strategy to log and handle specific transient exceptions like deadlock (1205)."
  ],
  "transition_graph": {
    "leads_to": [],
    "preceded_by": [],
    "frequently_confused_with": []
  },
  "official_doc_url": "https://learn.microsoft.com/en-us/ef/core/miscellaneous/connection-resiliency",
  "official_doc_section": null,
  "error_code": null,
  "verification_tier": "ai_generated",
  "confidence": 0.82,
  "fix_success_rate": 0.85,
  "resolvable": "partial",
  "first_seen": "2023-03-15",
  "last_confirmed": "2024-06-01",
  "last_updated": "2024-06-01",
  "evidence_count": 1,
  "tags": [],
  "locale": "en",
  "aliases": []
}