Description
It will be good to document which errors the default strategy consider as transient.
In particular, I expected that Timeouts will be retried.
It is a reasonable expectation, e.g. In https://docs.microsoft.com/en-us/azure/azure-sql/database/troubleshoot-common-connectivity-issues?view=azuresql has
public bool IsTransient(Exception ex) //entLib 2013
if (ex is TimeoutException) { return true;
However it wasn’t correct - see dotnet/efcore#27826.
Having explicit reference to list of transient errors will avoid the confusion.
The reference to transient errors list will be good also in https://docs.microsoft.com/en-au/ef/core/miscellaneous/connection-resiliency
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
- ID: fcac28c8-acc4-81b6-01f6-6ffad57c64a1
- Version Independent ID: 9fcb9d42-63cf-af0a-14b0-ac470130b089
- Content: SqlServerDbContextOptionsBuilder.EnableRetryOnFailure Method (Microsoft.EntityFrameworkCore.Infrastructure)
- Content Source: dotnet/xml/Microsoft.EntityFrameworkCore.Infrastructure/SqlServerDbContextOptionsBuilder.xml
- Product: ef-core-api
- GitHub Login: @dotnet-bot
- Microsoft Alias: avickers