Merge lp:~laurynas-biveinis/percona-server/bug1264952 into lp:percona-server/5.6

Proposed by Laurynas Biveinis
Status: Merged
Approved by: Laurynas Biveinis
Approved revision: no longer in the source branch.
Merged at revision: 529
Proposed branch: lp:~laurynas-biveinis/percona-server/bug1264952
Merge into: lp:percona-server/5.6
Diff against target: 177 lines (+22/-21)
7 files modified
Percona-Server/mysql-test/suite/perfschema/r/sizing_default.result (+4/-4)
Percona-Server/mysql-test/suite/perfschema/r/sizing_growth.result (+2/-2)
Percona-Server/mysql-test/suite/perfschema/r/sizing_high.result (+4/-4)
Percona-Server/mysql-test/suite/perfschema/r/sizing_low.result (+4/-4)
Percona-Server/mysql-test/suite/perfschema/r/sizing_med.result (+4/-4)
Percona-Server/mysql-test/suite/perfschema/t/sizing_growth.test (+3/-2)
Percona-Server/storage/perfschema/pfs_autosize.cc (+1/-1)
To merge this branch: bzr merge lp:~laurynas-biveinis/percona-server/bug1264952
Reviewer Review Type Date Requested Status
Vlad Lesin (community) g2 Approve
Review via email: mp+200187@code.launchpad.net

Description of the change

Fix bug 1264952 (Adjust perfschema autosizing for Percona Server
mutexes).

Testcase sizing_growth checks the performance schema autosizing
heuristics by performing some actions on the server and counting the
resulting PFS records. One of such tests, count of mutexes per
connection, behaves differently on Percona Server, because a
connection hits one extra mutex. This failed the sizing_growth
checks, which were then recorded as expected result on the initial PS
5.6 port.

Fix by expecting four mutexes per connection in sizing_growth,
tweaking heuristics constant mutex_per_connection in pfs_autosize.cc
to match, and re-recording sizing_default, sizing_high, sizing_low,
and sizing_med testcases.

http://jenkins.percona.com/job/percona-server-5.6-param/464/

To post a comment you must log in.
Revision history for this message
Vlad Lesin (vlad-lesin) :
review: Approve (g2)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'Percona-Server/mysql-test/suite/perfschema/r/sizing_default.result'
2--- Percona-Server/mysql-test/suite/perfschema/r/sizing_default.result 2013-12-05 17:23:10 +0000
3+++ Percona-Server/mysql-test/suite/perfschema/r/sizing_default.result 2013-12-30 13:19:55 +0000
4@@ -25,7 +25,7 @@
5 performance_schema_max_file_handles 32768
6 performance_schema_max_file_instances 7693
7 performance_schema_max_mutex_classes 200
8-performance_schema_max_mutex_instances 15906
9+performance_schema_max_mutex_instances 16208
10 performance_schema_max_rwlock_classes 40
11 performance_schema_max_rwlock_instances 9102
12 performance_schema_max_socket_classes 10
13@@ -66,8 +66,8 @@
14 performance_schema (pfs_file_class).row_count 50
15 performance_schema (pfs_file_class).memory 16000
16 performance_schema mutex_instances.row_size 128
17-performance_schema mutex_instances.row_count 15906
18-performance_schema mutex_instances.memory 2035968
19+performance_schema mutex_instances.row_count 16208
20+performance_schema mutex_instances.memory 2074624
21 performance_schema rwlock_instances.row_size 192
22 performance_schema rwlock_instances.row_count 9102
23 performance_schema rwlock_instances.memory 1747584
24@@ -196,4 +196,4 @@
25 performance_schema (user_hash).count 2
26 performance_schema (user_hash).size 100
27 performance_schema host_cache.size 336
28-performance_schema performance_schema.memory 422101784
29+performance_schema performance_schema.memory 422140440
30
31=== modified file 'Percona-Server/mysql-test/suite/perfschema/r/sizing_growth.result'
32--- Percona-Server/mysql-test/suite/perfschema/r/sizing_growth.result 2012-10-16 06:21:51 +0000
33+++ Percona-Server/mysql-test/suite/perfschema/r/sizing_growth.result 2013-12-30 13:19:55 +0000
34@@ -240,7 +240,7 @@
35 (@rwlock_per_share <= 3)
36 AND (@cond_per_share = 0)
37 AND (@file_per_share <= 3)
38-AND (@mutex_per_con = 3)
39+AND (@mutex_per_con = 4)
40 AND (@rwlock_per_con = 1)
41 AND (@cond_per_con = 2)
42 AND (@file_per_con = 0)
43@@ -252,4 +252,4 @@
44 "FAILED: heuristics need to be updated")
45 as status;
46 status
47-FAILED: heuristics need to be updated
48+OK: heuristics are up to date
49
50=== modified file 'Percona-Server/mysql-test/suite/perfschema/r/sizing_high.result'
51--- Percona-Server/mysql-test/suite/perfschema/r/sizing_high.result 2013-12-05 17:23:10 +0000
52+++ Percona-Server/mysql-test/suite/perfschema/r/sizing_high.result 2013-12-30 13:19:55 +0000
53@@ -25,7 +25,7 @@
54 performance_schema_max_file_handles 32768
55 performance_schema_max_file_instances 23385
56 performance_schema_max_mutex_classes 200
57-performance_schema_max_mutex_instances 52200
58+performance_schema_max_mutex_instances 52600
59 performance_schema_max_rwlock_classes 40
60 performance_schema_max_rwlock_instances 30800
61 performance_schema_max_socket_classes 10
62@@ -66,8 +66,8 @@
63 performance_schema (pfs_file_class).row_count 50
64 performance_schema (pfs_file_class).memory 16000
65 performance_schema mutex_instances.row_size 128
66-performance_schema mutex_instances.row_count 52200
67-performance_schema mutex_instances.memory 6681600
68+performance_schema mutex_instances.row_count 52600
69+performance_schema mutex_instances.memory 6732800
70 performance_schema rwlock_instances.row_size 192
71 performance_schema rwlock_instances.row_count 30800
72 performance_schema rwlock_instances.memory 5913600
73@@ -196,4 +196,4 @@
74 performance_schema (user_hash).count 2
75 performance_schema (user_hash).size 100
76 performance_schema host_cache.size 336
77-performance_schema performance_schema.memory 421778056
78+performance_schema performance_schema.memory 421829256
79
80=== modified file 'Percona-Server/mysql-test/suite/perfschema/r/sizing_low.result'
81--- Percona-Server/mysql-test/suite/perfschema/r/sizing_low.result 2013-12-05 17:23:10 +0000
82+++ Percona-Server/mysql-test/suite/perfschema/r/sizing_low.result 2013-12-30 13:19:55 +0000
83@@ -25,7 +25,7 @@
84 performance_schema_max_file_handles 32768
85 performance_schema_max_file_instances 1556
86 performance_schema_max_mutex_classes 200
87-performance_schema_max_mutex_instances 2945
88+performance_schema_max_mutex_instances 3000
89 performance_schema_max_rwlock_classes 40
90 performance_schema_max_rwlock_instances 1612
91 performance_schema_max_socket_classes 10
92@@ -66,8 +66,8 @@
93 performance_schema (pfs_file_class).row_count 50
94 performance_schema (pfs_file_class).memory 16000
95 performance_schema mutex_instances.row_size 128
96-performance_schema mutex_instances.row_count 2945
97-performance_schema mutex_instances.memory 376960
98+performance_schema mutex_instances.row_count 3000
99+performance_schema mutex_instances.memory 384000
100 performance_schema rwlock_instances.row_size 192
101 performance_schema rwlock_instances.row_count 1612
102 performance_schema rwlock_instances.memory 309504
103@@ -196,4 +196,4 @@
104 performance_schema (user_hash).count 2
105 performance_schema (user_hash).size 5
106 performance_schema host_cache.size 336
107-performance_schema performance_schema.memory 24744192
108+performance_schema performance_schema.memory 24751232
109
110=== modified file 'Percona-Server/mysql-test/suite/perfschema/r/sizing_med.result'
111--- Percona-Server/mysql-test/suite/perfschema/r/sizing_med.result 2013-12-05 17:23:10 +0000
112+++ Percona-Server/mysql-test/suite/perfschema/r/sizing_med.result 2013-12-30 13:19:55 +0000
113@@ -25,7 +25,7 @@
114 performance_schema_max_file_handles 32768
115 performance_schema_max_file_instances 1754
116 performance_schema_max_mutex_classes 200
117-performance_schema_max_mutex_instances 4230
118+performance_schema_max_mutex_instances 4448
119 performance_schema_max_rwlock_classes 40
120 performance_schema_max_rwlock_instances 2222
121 performance_schema_max_socket_classes 10
122@@ -66,8 +66,8 @@
123 performance_schema (pfs_file_class).row_count 50
124 performance_schema (pfs_file_class).memory 16000
125 performance_schema mutex_instances.row_size 128
126-performance_schema mutex_instances.row_count 4230
127-performance_schema mutex_instances.memory 541440
128+performance_schema mutex_instances.row_count 4448
129+performance_schema mutex_instances.memory 569344
130 performance_schema rwlock_instances.row_size 192
131 performance_schema rwlock_instances.row_count 2222
132 performance_schema rwlock_instances.memory 426624
133@@ -196,4 +196,4 @@
134 performance_schema (user_hash).count 2
135 performance_schema (user_hash).size 100
136 performance_schema host_cache.size 336
137-performance_schema performance_schema.memory 70845280
138+performance_schema performance_schema.memory 70873184
139
140=== modified file 'Percona-Server/mysql-test/suite/perfschema/t/sizing_growth.test'
141--- Percona-Server/mysql-test/suite/perfschema/t/sizing_growth.test 2013-02-01 18:04:56 +0000
142+++ Percona-Server/mysql-test/suite/perfschema/t/sizing_growth.test 2013-12-30 13:19:55 +0000
143@@ -404,10 +404,11 @@
144 select @file_per_share <= 3;
145
146 #
147-# Expecting 3:
148+# Expecting 4:
149 # - wait/synch/mutex/mysys/my_thread_var::mutex
150 # - wait/synch/mutex/mysys/THR_LOCK::mutex
151 # - wait/synch/mutex/sql/THD::LOCK_thd_data
152+# - wait/synch/mutex/sql/THD::LOCK_temporary_tables
153 #
154 select @mutex_per_con;
155
156@@ -465,7 +466,7 @@
157 (@rwlock_per_share <= 3)
158 AND (@cond_per_share = 0)
159 AND (@file_per_share <= 3)
160- AND (@mutex_per_con = 3)
161+ AND (@mutex_per_con = 4)
162 AND (@rwlock_per_con = 1)
163 AND (@cond_per_con = 2)
164 AND (@file_per_con = 0)
165
166=== modified file 'Percona-Server/storage/perfschema/pfs_autosize.cc'
167--- Percona-Server/storage/perfschema/pfs_autosize.cc 2012-11-28 12:10:07 +0000
168+++ Percona-Server/storage/perfschema/pfs_autosize.cc 2013-12-30 13:19:55 +0000
169@@ -33,7 +33,7 @@
170 static const ulong fixed_socket_instances= 10;
171 static const ulong fixed_thread_instances= 50;
172
173-static const ulong mutex_per_connection= 3;
174+static const ulong mutex_per_connection= 4;
175 static const ulong rwlock_per_connection= 1;
176 static const ulong cond_per_connection= 2;
177 static const ulong file_per_connection= 0;

Subscribers

People subscribed via source and target branches