From 0e0bed3428e211809b4b0efd98da2164b4fae8d8 Mon Sep 17 00:00:00 2001
From: sunkaixuan <610262374@qq.com>
Date: Fri, 9 Sep 2022 21:26:34 +0800
Subject: [PATCH] Update QuestDb BUG
---
.../Realization/QuestDB/QuestDBProvider.cs | 30 +++++++++++++++++
.../Realization/QuestDB/QuestDBProvider.cs | 33 ++++++++++++++++++-
2 files changed, 62 insertions(+), 1 deletion(-)
diff --git a/Src/Asp.Net/SqlSugar/Realization/QuestDB/QuestDBProvider.cs b/Src/Asp.Net/SqlSugar/Realization/QuestDB/QuestDBProvider.cs
index 4a2c0659e..28c373859 100644
--- a/Src/Asp.Net/SqlSugar/Realization/QuestDB/QuestDBProvider.cs
+++ b/Src/Asp.Net/SqlSugar/Realization/QuestDB/QuestDBProvider.cs
@@ -71,6 +71,36 @@ namespace SqlSugar
CheckConnection();
return sqlCommand;
}
+ ///
+ /// Check connection
+ ///
+ public override void CheckConnection()
+ {
+ if (this.Connection.State != ConnectionState.Open)
+ {
+ try
+ {
+ int i = 0;
+ while (i < 10)
+ {
+ try
+ {
+ //QuestDb loss problem
+ this.Connection.Open();
+ break;
+ }
+ catch
+ {
+ i++;
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ Check.Exception(true, ErrorMessage.ConnnectionOpen, ex.Message);
+ }
+ }
+ }
public override void SetCommandToAdapter(IDataAdapter dataAdapter, DbCommand command)
{
((NpgsqlDataAdapter)dataAdapter).SelectCommand = (NpgsqlCommand)command;
diff --git a/Src/Asp.NetCore2/SqlSugar/Realization/QuestDB/QuestDBProvider.cs b/Src/Asp.NetCore2/SqlSugar/Realization/QuestDB/QuestDBProvider.cs
index 4a2c0659e..ed91c1601 100644
--- a/Src/Asp.NetCore2/SqlSugar/Realization/QuestDB/QuestDBProvider.cs
+++ b/Src/Asp.NetCore2/SqlSugar/Realization/QuestDB/QuestDBProvider.cs
@@ -36,7 +36,7 @@ namespace SqlSugar
base._DbConnection = value;
}
}
-
+
public override void BeginTran(string transactionName)
{
base.BeginTran();
@@ -71,6 +71,37 @@ namespace SqlSugar
CheckConnection();
return sqlCommand;
}
+ ///
+ /// Check connection
+ ///
+ public override void CheckConnection()
+ {
+ if (this.Connection.State != ConnectionState.Open)
+ {
+ try
+ {
+ int i = 0;
+ while (i < 10)
+ {
+ try
+ {
+ //QuestDb loss problem
+ this.Connection.Open();
+ break;
+ }
+ catch
+ {
+ i++;
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ Check.Exception(true, ErrorMessage.ConnnectionOpen, ex.Message);
+ }
+ }
+ }
+
public override void SetCommandToAdapter(IDataAdapter dataAdapter, DbCommand command)
{
((NpgsqlDataAdapter)dataAdapter).SelectCommand = (NpgsqlCommand)command;