Azure SQL Server 传输层错误 - 是否重试?

问题描述

我在使用 sql Server 时收到传输级别错误。此异常似乎是网络信号,并在下一秒针对同一查询进行了修复。

var col = FirebaseFirestore.instance.collectionGroup('subC').where('foo',isEqualTo: 'bar');
var snapshot = await col.get();
for (var doc in snapshot.docs) {
  print(doc.reference.parent.parent?.id); // Prints document1,document2
}

我有一个重试执行器来重试列入白名单的瞬态异常。此实例中引发的异常未列入白名单。 以下是错误详情

Exception in sqlRetryStrategyExecutor System.Data.sqlClient.sqlException (0x80131904): A transport-level error has occurred when receiving results from the server. (provider: TCP Provider,error: 0 - The semaphore timeout period has expired.)

来自微软链接 - https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008-r2/cc645611(v=sql.105)121 不是暂时性错误,而是插入违规。

错误代码为 121 时,如何识别此瞬态网络 blip 以重试操作?我应该依赖 Class = 20 吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...