Fix deadlock in galeramon
The parameter extraction caused a recursive lock of the server spinlock. To work around this, an unlocked version of server_get_parameter is needed. Ideally, a lock-free setup would be used but due to this being a bug fix, it will have to be done later on.
This commit is contained in:
@ -358,6 +358,7 @@ extern void server_clear_status_nolock(SERVER *server, uint64_t bit);
|
||||
extern void server_transfer_status(SERVER *dest_server, const SERVER *source_server);
|
||||
extern void server_add_mon_user(SERVER *server, const char *user, const char *passwd);
|
||||
extern size_t server_get_parameter(const SERVER *server, const char *name, char* out, size_t size);
|
||||
extern size_t server_get_parameter_nolock(const SERVER *server, const char *name, char* out, size_t size);
|
||||
extern void server_update_credentials(SERVER *server, const char *user, const char *passwd);
|
||||
extern DCB* server_get_persistent(SERVER *server, const char *user, const char* ip, const char *protocol, int id);
|
||||
extern void server_update_address(SERVER *server, const char *address);
|
||||
|
Reference in New Issue
Block a user