26
26
#define MYSQLND_STATS_UNLOCK (stats )
27
27
#endif
28
28
29
- #ifndef MYSQLND_CORE_STATISTICS_TRIGGERS_DISABLED
30
- #define MYSQLND_STAT_CALL_TRIGGER (s_array , statistic , val ) \
31
- if ((s_array)->triggers[(statistic)] && (s_array)->in_trigger == FALSE) { \
32
- (s_array)->in_trigger = TRUE; \
33
- MYSQLND_STATS_UNLOCK((s_array)); \
34
- \
35
- (s_array)->triggers[(statistic)]((s_array), (statistic), (val)); \
36
- \
37
- MYSQLND_STATS_LOCK((s_array)); \
38
- (s_array)->in_trigger = FALSE; \
39
- }
40
- #else
41
- #define MYSQLND_STAT_CALL_TRIGGER (s_array , statistic , val )
42
- #endif /* MYSQLND_CORE_STATISTICS_TRIGGERS_DISABLED */
43
-
44
- #define MYSQLND_UPDATE_VALUE_AND_CALL_TRIGGER (stats , statistic , value ) \
29
+ #define MYSQLND_STATS_UPDATE_VALUE (stats , statistic , value ) \
45
30
{ \
46
31
MYSQLND_STATS_LOCK(stats); \
47
32
(stats)->values[(statistic)] += (value); \
48
- MYSQLND_STAT_CALL_TRIGGER((stats), (statistic), (value)); \
49
33
MYSQLND_STATS_UNLOCK(_p_s); \
50
34
}
51
35
54
38
enum_mysqlnd_collected_stats _s = (statistic);\
55
39
MYSQLND_STATS * _p_s = (MYSQLND_STATS *) (stats); \
56
40
if ((enabler) && _p_s && _s != _p_s->count) { \
57
- MYSQLND_UPDATE_VALUE_AND_CALL_TRIGGER (_p_s, _s, -1); \
41
+ MYSQLND_STATS_UPDATE_VALUE (_p_s, _s, -1); \
58
42
}\
59
43
}
60
44
63
47
enum_mysqlnd_collected_stats _s = (statistic);\
64
48
MYSQLND_STATS * _p_s = (MYSQLND_STATS *) (stats); \
65
49
if ((enabler) && _p_s && _s != _p_s->count) { \
66
- MYSQLND_UPDATE_VALUE_AND_CALL_TRIGGER (_p_s, _s, 1); \
50
+ MYSQLND_STATS_UPDATE_VALUE (_p_s, _s, 1); \
67
51
}\
68
52
}
69
53
73
57
MYSQLND_STATS * _p_s = (MYSQLND_STATS *) (stats); \
74
58
if ((enabler) && _p_s && _s != _p_s->count) { \
75
59
uint64_t v = (uint64_t) (value); \
76
- MYSQLND_UPDATE_VALUE_AND_CALL_TRIGGER (_p_s, _s, v); \
60
+ MYSQLND_STATS_UPDATE_VALUE (_p_s, _s, v); \
77
61
}\
78
62
}
79
63
85
69
uint64_t v2 = (uint64_t) (value2); \
86
70
enum_mysqlnd_collected_stats _s1 = (statistic1);\
87
71
enum_mysqlnd_collected_stats _s2 = (statistic2);\
88
- if (_s1 != _p_s->count) MYSQLND_UPDATE_VALUE_AND_CALL_TRIGGER (_p_s, _s1, v1); \
89
- if (_s2 != _p_s->count) MYSQLND_UPDATE_VALUE_AND_CALL_TRIGGER (_p_s, _s2, v2); \
72
+ if (_s1 != _p_s->count) MYSQLND_STATS_UPDATE_VALUE (_p_s, _s1, v1); \
73
+ if (_s2 != _p_s->count) MYSQLND_STATS_UPDATE_VALUE (_p_s, _s2, v2); \
90
74
}\
91
75
}
92
76
100
84
enum_mysqlnd_collected_stats _s1 = (statistic1);\
101
85
enum_mysqlnd_collected_stats _s2 = (statistic2);\
102
86
enum_mysqlnd_collected_stats _s3 = (statistic3);\
103
- if (_s1 != _p_s->count) MYSQLND_UPDATE_VALUE_AND_CALL_TRIGGER (_p_s, _s1, v1); \
104
- if (_s2 != _p_s->count) MYSQLND_UPDATE_VALUE_AND_CALL_TRIGGER (_p_s, _s2, v2); \
105
- if (_s3 != _p_s->count) MYSQLND_UPDATE_VALUE_AND_CALL_TRIGGER (_p_s, _s3, v3); \
87
+ if (_s1 != _p_s->count) MYSQLND_STATS_UPDATE_VALUE (_p_s, _s1, v1); \
88
+ if (_s2 != _p_s->count) MYSQLND_STATS_UPDATE_VALUE (_p_s, _s2, v2); \
89
+ if (_s3 != _p_s->count) MYSQLND_STATS_UPDATE_VALUE (_p_s, _s3, v3); \
106
90
}\
107
91
}
108
92
@@ -113,7 +97,4 @@ PHPAPI void mysqlnd_stats_end(MYSQLND_STATS * stats, const bool persistent);
113
97
114
98
PHPAPI void mysqlnd_fill_stats_hash (const MYSQLND_STATS * const stats , const MYSQLND_STRING * names , zval * return_value ZEND_FILE_LINE_DC );
115
99
116
- PHPAPI mysqlnd_stat_trigger mysqlnd_stats_set_trigger (MYSQLND_STATS * const stats , enum_mysqlnd_collected_stats stat , mysqlnd_stat_trigger trigger );
117
- PHPAPI mysqlnd_stat_trigger mysqlnd_stats_reset_triggers (MYSQLND_STATS * const stats );
118
-
119
100
#endif /* MYSQLND_STATISTICS_H */
0 commit comments