feat: redis 支持超时
This commit is contained in:
@@ -258,17 +258,17 @@ func (o *OwnClient) newClient(instanceConfig *define.Options) *redisClient.Clien
|
||||
Password: instanceConfig.Password,
|
||||
// CredentialsProvider: nil,
|
||||
// CredentialsProviderContext: nil,
|
||||
MaxRetries: instanceConfig.MaxRetries,
|
||||
MinRetryBackoff: time.Duration(instanceConfig.MinRetryBackoff) * time.Millisecond,
|
||||
MaxRetryBackoff: time.Duration(instanceConfig.MaxRetryBackoff) * time.Millisecond,
|
||||
DialTimeout: time.Duration(instanceConfig.DialTimeout) * time.Millisecond,
|
||||
ReadTimeout: time.Duration(instanceConfig.ReadTimeout) * time.Millisecond,
|
||||
WriteTimeout: time.Duration(instanceConfig.WriteTimeout) * time.Millisecond,
|
||||
// ContextTimeoutEnabled: instanceConfig.ContextTimeoutEnabled,
|
||||
PoolFIFO: instanceConfig.PoolFIFO,
|
||||
PoolSize: instanceConfig.PoolSize,
|
||||
PoolTimeout: time.Duration(instanceConfig.PoolTimeout) * time.Millisecond,
|
||||
MinIdleConns: instanceConfig.MinIdleConn,
|
||||
MaxRetries: instanceConfig.MaxRetries,
|
||||
MinRetryBackoff: time.Duration(instanceConfig.MinRetryBackoff) * time.Millisecond,
|
||||
MaxRetryBackoff: time.Duration(instanceConfig.MaxRetryBackoff) * time.Millisecond,
|
||||
DialTimeout: time.Duration(instanceConfig.DialTimeout) * time.Millisecond,
|
||||
ReadTimeout: time.Duration(instanceConfig.ReadTimeout) * time.Millisecond,
|
||||
WriteTimeout: time.Duration(instanceConfig.WriteTimeout) * time.Millisecond,
|
||||
ContextTimeoutEnabled: instanceConfig.ContextTimeoutEnabled,
|
||||
PoolFIFO: instanceConfig.PoolFIFO,
|
||||
PoolSize: instanceConfig.PoolSize,
|
||||
PoolTimeout: time.Duration(instanceConfig.PoolTimeout) * time.Millisecond,
|
||||
MinIdleConns: instanceConfig.MinIdleConn,
|
||||
// MaxIdleConns: instanceConfig.MaxIdleConn,
|
||||
// MaxActiveConns: instanceConfig.MaxActiveConn,
|
||||
// ConnMaxIdleTime: time.Duration(instanceConfig.ConnMaxIdleTime) * time.Second,
|
||||
|
||||
@@ -32,3 +32,18 @@ func TestAddClientKeepsMasterAndSlaveSeparate(t *testing.T) {
|
||||
_ = info.MasterClient().Close()
|
||||
_ = info.SlaveClient().Close()
|
||||
}
|
||||
|
||||
func TestNewClientPassesContextTimeoutEnabled(t *testing.T) {
|
||||
client := &OwnClient{}
|
||||
redisClient := client.newClient(&define.Options{
|
||||
Addr: "127.0.0.1:6379",
|
||||
ContextTimeoutEnabled: true,
|
||||
})
|
||||
t.Cleanup(func() {
|
||||
_ = redisClient.Close()
|
||||
})
|
||||
|
||||
if !redisClient.Options().ContextTimeoutEnabled {
|
||||
t.Fatal("context timeout option was not passed to go-redis")
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user