-
Sujatha Sivakumar authored
Analysis: ======== At runtime, some GTID_SET objects are instrumented with a performance schema mutex key of 0, which is incorrect (not instrumented). The root cause is the declaration of constructors, like: Gtid_set(Sid_map *sid_map, Checkable_rwlock *sid_lock= NULL #ifdef HAVE_PSI_INTERFACE ,PSI_mutex_key free_intervals_mutex_key= 0 #endif ); The issue is giving a default value of 0 when the mutex key is not passed. This allows some caller to not pass any key, causing a bug. Fix: === Moved the PSI_mutex_key from Gtid_state class to Gtid_set class.
Sujatha Sivakumar authoredAnalysis: ======== At runtime, some GTID_SET objects are instrumented with a performance schema mutex key of 0, which is incorrect (not instrumented). The root cause is the declaration of constructors, like: Gtid_set(Sid_map *sid_map, Checkable_rwlock *sid_lock= NULL #ifdef HAVE_PSI_INTERFACE ,PSI_mutex_key free_intervals_mutex_key= 0 #endif ); The issue is giving a default value of 0 when the mutex key is not passed. This allows some caller to not pass any key, causing a bug. Fix: === Moved the PSI_mutex_key from Gtid_state class to Gtid_set class.
Loading