- 修复 读写分离创建 IFreeSql 时如果从库不可用导致 iis 退出的 bug;

This commit is contained in:
28810
2020-03-04 13:10:17 +08:00
parent 34ba9fbf4f
commit 780b963267
16 changed files with 32 additions and 41 deletions

View File

@ -23,6 +23,8 @@ namespace FreeSql.Odbc.Dameng
{
this.UserId = OdbcDamengConnectionPool.GetUserId(connectionString);
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
var policy = new OdbcOracleConnectionPoolPolicy
{
_pool = this,
@ -30,9 +32,6 @@ namespace FreeSql.Odbc.Dameng
};
this.Policy = policy;
policy.ConnectionString = connectionString;
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
}
public static string GetUserId(string connectionString)

View File

@ -19,6 +19,8 @@ namespace FreeSql.Odbc.Default
public OdbcConnectionPool(string name, string connectionString, Action availableHandler, Action unavailableHandler) : base(null)
{
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
var policy = new OdbcConnectionPoolPolicy
{
_pool = this,
@ -26,9 +28,6 @@ namespace FreeSql.Odbc.Default
};
this.Policy = policy;
policy.ConnectionString = connectionString;
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
}
public void Return(Object<DbConnection> obj, Exception exception, bool isRecreate = false)

View File

@ -22,6 +22,8 @@ namespace FreeSql.Odbc.GBase
public OdbcGBaseConnectionPool(string name, string connectionString, Action availableHandler, Action unavailableHandler) : base(null)
{
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
var policy = new OdbcPostgreSQLConnectionPoolPolicy
{
_pool = this,
@ -29,9 +31,6 @@ namespace FreeSql.Odbc.GBase
};
this.Policy = policy;
policy.ConnectionString = connectionString;
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
}
public void Return(Object<DbConnection> obj, Exception exception, bool isRecreate = false)

View File

@ -19,6 +19,8 @@ namespace FreeSql.Odbc.MySql
public OdbcMySqlConnectionPool(string name, string connectionString, Action availableHandler, Action unavailableHandler) : base(null)
{
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
var policy = new OdbcMySqlConnectionPoolPolicy
{
_pool = this,
@ -26,9 +28,6 @@ namespace FreeSql.Odbc.MySql
};
this.Policy = policy;
policy.ConnectionString = connectionString;
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
}
public void Return(Object<DbConnection> obj, Exception exception, bool isRecreate = false)

View File

@ -23,6 +23,8 @@ namespace FreeSql.Odbc.Oracle
{
this.UserId = OdbcOracleConnectionPool.GetUserId(connectionString);
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
var policy = new OdbcOracleConnectionPoolPolicy
{
_pool = this,
@ -30,9 +32,6 @@ namespace FreeSql.Odbc.Oracle
};
this.Policy = policy;
policy.ConnectionString = connectionString;
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
}
public static string GetUserId(string connectionString)

View File

@ -20,6 +20,8 @@ namespace FreeSql.Odbc.PostgreSQL
public OdbcPostgreSQLConnectionPool(string name, string connectionString, Action availableHandler, Action unavailableHandler) : base(null)
{
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
var policy = new OdbcPostgreSQLConnectionPoolPolicy
{
_pool = this,
@ -27,9 +29,6 @@ namespace FreeSql.Odbc.PostgreSQL
};
this.Policy = policy;
policy.ConnectionString = connectionString;
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
}
public void Return(Object<DbConnection> obj, Exception exception, bool isRecreate = false)

View File

@ -19,6 +19,8 @@ namespace FreeSql.Odbc.SqlServer
public OdbcSqlServerConnectionPool(string name, string connectionString, Action availableHandler, Action unavailableHandler) : base(null)
{
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
var policy = new OdbcSqlServerConnectionPoolPolicy
{
_pool = this,
@ -26,9 +28,6 @@ namespace FreeSql.Odbc.SqlServer
};
this.Policy = policy;
policy.ConnectionString = connectionString;
this.availableHandler = availableHandler;
this.unavailableHandler = unavailableHandler;
}
public void Return(Object<DbConnection> obj, Exception exception, bool isRecreate = false)