mirror of
https://github.com/minio/minio.git
synced 2024-12-24 22:25:54 -05:00
fix: a possible crash in event target Close() (#17948)
these are possible crashes when the configured target is still in init() state and never finished - however a delete config was initiated.
This commit is contained in:
parent
b48bbe08b2
commit
0d1fbef751
@ -219,7 +219,9 @@ func (target *MQTTTarget) Save(eventData event.Event) error {
|
||||
|
||||
// Close - does nothing and available for interface compatibility.
|
||||
func (target *MQTTTarget) Close() error {
|
||||
if target.client != nil {
|
||||
target.client.Disconnect(100)
|
||||
}
|
||||
close(target.quitCh)
|
||||
return nil
|
||||
}
|
||||
|
@ -312,9 +312,13 @@ func (target *MySQLTarget) Close() error {
|
||||
_ = target.insertStmt.Close()
|
||||
}
|
||||
|
||||
if target.db != nil {
|
||||
return target.db.Close()
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// Executes the table creation statements.
|
||||
func (target *MySQLTarget) executeStmts() error {
|
||||
_, err := target.db.Exec(fmt.Sprintf(mysqlTableExists, target.args.Table))
|
||||
|
@ -308,7 +308,11 @@ func (target *PostgreSQLTarget) Close() error {
|
||||
_ = target.insertStmt.Close()
|
||||
}
|
||||
|
||||
return target.db.Close()
|
||||
if target.db != nil {
|
||||
target.db.Close()
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// Executes the table creation statements.
|
||||
|
@ -273,8 +273,11 @@ func (target *RedisTarget) SendFromStore(eventKey string) error {
|
||||
// Close - releases the resources used by the pool.
|
||||
func (target *RedisTarget) Close() error {
|
||||
close(target.quitCh)
|
||||
if target.pool != nil {
|
||||
return target.pool.Close()
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (target *RedisTarget) init() error {
|
||||
return target.initOnce.Do(target.initRedis)
|
||||
|
Loading…
Reference in New Issue
Block a user