@@ -47,10 +47,10 @@ func dcrdMain() error {
47
47
}
48
48
}()
49
49
50
- // Get a channel that will be closed when a shutdown signal has been
50
+ // Get a context that will be canceled when a shutdown signal has been
51
51
// triggered either from an OS signal such as SIGINT (Ctrl+C) or from
52
52
// another subsystem such as the RPC server.
53
- interrupt := interruptListener ()
53
+ ctx := shutdownListener ()
54
54
defer dcrdLog .Info ("Shutdown complete" )
55
55
56
56
// Show version and home dir at startup.
@@ -114,8 +114,8 @@ func dcrdMain() error {
114
114
go drainOutgoingPipeMessages ()
115
115
}
116
116
117
- // Return now if an interrupt signal was triggered.
118
- if interruptRequested ( interrupt ) {
117
+ // Return now if a shutdown signal was triggered.
118
+ if shutdownRequested ( ctx ) {
119
119
return nil
120
120
}
121
121
@@ -133,8 +133,8 @@ func dcrdMain() error {
133
133
db .Close ()
134
134
}()
135
135
136
- // Return now if an interrupt signal was triggered.
137
- if interruptRequested ( interrupt ) {
136
+ // Return now if a shutdown signal was triggered.
137
+ if shutdownRequested ( ctx ) {
138
138
return nil
139
139
}
140
140
@@ -143,31 +143,31 @@ func dcrdMain() error {
143
143
// NOTE: The order is important here because dropping the tx index also
144
144
// drops the address index since it relies on it.
145
145
if cfg .DropAddrIndex {
146
- if err := indexers .DropAddrIndex (db , interrupt ); err != nil {
146
+ if err := indexers .DropAddrIndex (db , ctx . Done () ); err != nil {
147
147
dcrdLog .Errorf ("%v" , err )
148
148
return err
149
149
}
150
150
151
151
return nil
152
152
}
153
153
if cfg .DropTxIndex {
154
- if err := indexers .DropTxIndex (db , interrupt ); err != nil {
154
+ if err := indexers .DropTxIndex (db , ctx . Done () ); err != nil {
155
155
dcrdLog .Errorf ("%v" , err )
156
156
return err
157
157
}
158
158
159
159
return nil
160
160
}
161
161
if cfg .DropExistsAddrIndex {
162
- if err := indexers .DropExistsAddrIndex (db , interrupt ); err != nil {
162
+ if err := indexers .DropExistsAddrIndex (db , ctx . Done () ); err != nil {
163
163
dcrdLog .Errorf ("%v" , err )
164
164
return err
165
165
}
166
166
167
167
return nil
168
168
}
169
169
if cfg .DropCFIndex {
170
- if err := indexers .DropCfIndex (db , interrupt ); err != nil {
170
+ if err := indexers .DropCfIndex (db , ctx . Done () ); err != nil {
171
171
dcrdLog .Errorf ("%v" , err )
172
172
return err
173
173
}
@@ -178,7 +178,7 @@ func dcrdMain() error {
178
178
// Create server and start it.
179
179
lifetimeNotifier .notifyStartupEvent (lifetimeEventP2PServer )
180
180
server , err := newServer (cfg .Listeners , db , activeNetParams .Params ,
181
- cfg .DataDir , interrupt )
181
+ cfg .DataDir , ctx . Done () )
182
182
if err != nil {
183
183
// TODO(oga) this logging could do with some beautifying.
184
184
dcrdLog .Errorf ("Unable to start server on %v: %v" ,
@@ -195,7 +195,7 @@ func dcrdMain() error {
195
195
196
196
server .Start ()
197
197
198
- if interruptRequested ( interrupt ) {
198
+ if shutdownRequested ( ctx ) {
199
199
return nil
200
200
}
201
201
@@ -207,7 +207,7 @@ func dcrdMain() error {
207
207
// Wait until the interrupt signal is received from an OS signal or
208
208
// shutdown is requested through one of the subsystems such as the RPC
209
209
// server.
210
- <- interrupt
210
+ <- ctx . Done ()
211
211
return nil
212
212
}
213
213
0 commit comments