@@ -12,35 +12,38 @@ type UniversalOptions struct {
12
12
// of cluster/sentinel nodes.
13
13
Addrs []string
14
14
15
- // The sentinel master name.
16
- // Only failover clients.
17
- MasterName string
18
-
19
15
// Database to be selected after connecting to the server.
20
16
// Only single-node and failover clients.
21
17
DB int
22
18
23
- // Only cluster clients.
24
-
25
- // Enables read only queries on slave nodes.
26
- ReadOnly bool
27
-
28
- MaxRedirects int
29
- RouteByLatency bool
30
-
31
- // Common options
19
+ // Common options.
32
20
33
21
OnConnect func (* Conn ) error
34
- MaxRetries int
35
22
Password string
23
+ MaxRetries int
24
+ MinRetryBackoff time.Duration
25
+ MaxRetryBackoff time.Duration
36
26
DialTimeout time.Duration
37
27
ReadTimeout time.Duration
38
28
WriteTimeout time.Duration
39
29
PoolSize int
30
+ MinIdleConns int
31
+ MaxConnAge time.Duration
40
32
PoolTimeout time.Duration
41
33
IdleTimeout time.Duration
42
34
IdleCheckFrequency time.Duration
43
35
TLSConfig * tls.Config
36
+
37
+ // Only cluster clients.
38
+
39
+ MaxRedirects int
40
+ ReadOnly bool
41
+ RouteByLatency bool
42
+ RouteRandomly bool
43
+
44
+ // The sentinel master name.
45
+ // Only failover clients.
46
+ MasterName string
44
47
}
45
48
46
49
func (o * UniversalOptions ) cluster () * ClusterOptions {
@@ -49,22 +52,31 @@ func (o *UniversalOptions) cluster() *ClusterOptions {
49
52
}
50
53
51
54
return & ClusterOptions {
52
- Addrs : o .Addrs ,
55
+ Addrs : o .Addrs ,
56
+ OnConnect : o .OnConnect ,
57
+
58
+ Password : o .Password ,
59
+
53
60
MaxRedirects : o .MaxRedirects ,
54
- RouteByLatency : o .RouteByLatency ,
55
61
ReadOnly : o .ReadOnly ,
62
+ RouteByLatency : o .RouteByLatency ,
63
+ RouteRandomly : o .RouteRandomly ,
64
+
65
+ MaxRetries : o .MaxRetries ,
66
+ MinRetryBackoff : o .MinRetryBackoff ,
67
+ MaxRetryBackoff : o .MaxRetryBackoff ,
56
68
57
- OnConnect : o .OnConnect ,
58
- MaxRetries : o .MaxRetries ,
59
- Password : o .Password ,
60
69
DialTimeout : o .DialTimeout ,
61
70
ReadTimeout : o .ReadTimeout ,
62
71
WriteTimeout : o .WriteTimeout ,
63
72
PoolSize : o .PoolSize ,
73
+ MinIdleConns : o .MinIdleConns ,
74
+ MaxConnAge : o .MaxConnAge ,
64
75
PoolTimeout : o .PoolTimeout ,
65
76
IdleTimeout : o .IdleTimeout ,
66
77
IdleCheckFrequency : o .IdleCheckFrequency ,
67
- TLSConfig : o .TLSConfig ,
78
+
79
+ TLSConfig : o .TLSConfig ,
68
80
}
69
81
}
70
82
@@ -76,19 +88,27 @@ func (o *UniversalOptions) failover() *FailoverOptions {
76
88
return & FailoverOptions {
77
89
SentinelAddrs : o .Addrs ,
78
90
MasterName : o .MasterName ,
79
- DB : o .DB ,
91
+ OnConnect : o .OnConnect ,
92
+
93
+ DB : o .DB ,
94
+ Password : o .Password ,
95
+
96
+ MaxRetries : o .MaxRetries ,
97
+ MinRetryBackoff : o .MinRetryBackoff ,
98
+ MaxRetryBackoff : o .MaxRetryBackoff ,
99
+
100
+ DialTimeout : o .DialTimeout ,
101
+ ReadTimeout : o .ReadTimeout ,
102
+ WriteTimeout : o .WriteTimeout ,
80
103
81
- OnConnect : o .OnConnect ,
82
- MaxRetries : o .MaxRetries ,
83
- Password : o .Password ,
84
- DialTimeout : o .DialTimeout ,
85
- ReadTimeout : o .ReadTimeout ,
86
- WriteTimeout : o .WriteTimeout ,
87
104
PoolSize : o .PoolSize ,
105
+ MinIdleConns : o .MinIdleConns ,
106
+ MaxConnAge : o .MaxConnAge ,
88
107
PoolTimeout : o .PoolTimeout ,
89
108
IdleTimeout : o .IdleTimeout ,
90
109
IdleCheckFrequency : o .IdleCheckFrequency ,
91
- TLSConfig : o .TLSConfig ,
110
+
111
+ TLSConfig : o .TLSConfig ,
92
112
}
93
113
}
94
114
@@ -99,20 +119,28 @@ func (o *UniversalOptions) simple() *Options {
99
119
}
100
120
101
121
return & Options {
102
- Addr : addr ,
103
- DB : o .DB ,
122
+ Addr : addr ,
123
+ OnConnect : o .OnConnect ,
124
+
125
+ DB : o .DB ,
126
+ Password : o .Password ,
127
+
128
+ MaxRetries : o .MaxRetries ,
129
+ MinRetryBackoff : o .MinRetryBackoff ,
130
+ MaxRetryBackoff : o .MaxRetryBackoff ,
131
+
132
+ DialTimeout : o .DialTimeout ,
133
+ ReadTimeout : o .ReadTimeout ,
134
+ WriteTimeout : o .WriteTimeout ,
104
135
105
- OnConnect : o .OnConnect ,
106
- MaxRetries : o .MaxRetries ,
107
- Password : o .Password ,
108
- DialTimeout : o .DialTimeout ,
109
- ReadTimeout : o .ReadTimeout ,
110
- WriteTimeout : o .WriteTimeout ,
111
136
PoolSize : o .PoolSize ,
137
+ MinIdleConns : o .MinIdleConns ,
138
+ MaxConnAge : o .MaxConnAge ,
112
139
PoolTimeout : o .PoolTimeout ,
113
140
IdleTimeout : o .IdleTimeout ,
114
141
IdleCheckFrequency : o .IdleCheckFrequency ,
115
- TLSConfig : o .TLSConfig ,
142
+
143
+ TLSConfig : o .TLSConfig ,
116
144
}
117
145
}
118
146
0 commit comments