Skip to content

Commit 1dfa524

Browse files
committed
fix: RedisDatabaseProvider can not work well when redis not available at first (#303)
1 parent 6e4530e commit 1dfa524

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

src/EasyCaching.Redis/Configurations/RedisDatabaseProvider.cs

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public class RedisDatabaseProvider : IRedisDatabaseProvider
1919
/// <summary>
2020
/// The connection multiplexer.
2121
/// </summary>
22-
private readonly Lazy<ConnectionMultiplexer> _connectionMultiplexer;
22+
private Lazy<ConnectionMultiplexer> _connectionMultiplexer;
2323

2424
public RedisDatabaseProvider(string name, RedisOptions options)
2525
{
@@ -37,7 +37,15 @@ public RedisDatabaseProvider(string name, RedisOptions options)
3737
/// </summary>
3838
public IDatabase GetDatabase()
3939
{
40-
return _connectionMultiplexer.Value.GetDatabase();
40+
try
41+
{
42+
return _connectionMultiplexer.Value.GetDatabase();
43+
}
44+
catch (Exception)
45+
{
46+
_connectionMultiplexer = new Lazy<ConnectionMultiplexer>(CreateConnectionMultiplexer);
47+
throw;
48+
}
4149
}
4250

4351
/// <summary>

0 commit comments

Comments
 (0)