Merge lp:~percona-toolkit-dev/percona-toolkit/fix-genlog-parser-bug-1078838 into lp:percona-toolkit/2.1

Proposed by Daniel Nichter
Status: Merged
Merged at revision: 495
Proposed branch: lp:~percona-toolkit-dev/percona-toolkit/fix-genlog-parser-bug-1078838
Merge into: lp:percona-toolkit/2.1
Diff against target: 109 lines (+61/-4)
4 files modified
bin/pt-query-digest (+2/-1)
lib/GeneralLogParser.pm (+2/-1)
t/lib/GeneralLogParser.t (+53/-2)
t/lib/samples/genlogs/genlog004.txt (+4/-0)
To merge this branch: bzr merge lp:~percona-toolkit-dev/percona-toolkit/fix-genlog-parser-bug-1078838
Reviewer Review Type Date Requested Status
Daniel Nichter Approve
Review via email: mp+139119@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Daniel Nichter (daniel-nichter) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'bin/pt-query-digest'
--- bin/pt-query-digest 2012-11-29 20:10:54 +0000
+++ bin/pt-query-digest 2012-12-10 23:39:22 +0000
@@ -9692,7 +9692,8 @@
9692 $cmd = $arg;9692 $cmd = $arg;
9693 }9693 }
9694 else {9694 else {
9695 my ($user, undef, $db) = $arg =~ /(\S+)/g;9695 my ($user) = $arg =~ m/(\S+)/;
9696 my ($db) = $arg =~ m/on (\S+)/;
9696 my $host;9697 my $host;
9697 ($user, $host) = split(/@/, $user);9698 ($user, $host) = split(/@/, $user);
9698 PTDEBUG && _d('Connect', $user, '@', $host, 'on', $db);9699 PTDEBUG && _d('Connect', $user, '@', $host, 'on', $db);
96999700
=== modified file 'lib/GeneralLogParser.pm'
--- lib/GeneralLogParser.pm 2012-01-19 19:46:56 +0000
+++ lib/GeneralLogParser.pm 2012-12-10 23:39:22 +0000
@@ -129,7 +129,8 @@
129 else {129 else {
130 # The Connect command may or may not be followed by 'on'.130 # The Connect command may or may not be followed by 'on'.
131 # When it is, 'on' may or may not be followed by a database.131 # When it is, 'on' may or may not be followed by a database.
132 my ($user, undef, $db) = $arg =~ /(\S+)/g;132 my ($user) = $arg =~ m/(\S+)/;
133 my ($db) = $arg =~ m/on (\S+)/;
133 my $host;134 my $host;
134 ($user, $host) = split(/@/, $user);135 ($user, $host) = split(/@/, $user);
135 PTDEBUG && _d('Connect', $user, '@', $host, 'on', $db);136 PTDEBUG && _d('Connect', $user, '@', $host, 'on', $db);
136137
=== modified file 't/lib/GeneralLogParser.t'
--- t/lib/GeneralLogParser.t 2012-03-06 13:56:08 +0000
+++ t/lib/GeneralLogParser.t 2012-12-10 23:39:22 +0000
@@ -9,7 +9,7 @@
9use strict;9use strict;
10use warnings FATAL => 'all';10use warnings FATAL => 'all';
11use English qw(-no_match_vars);11use English qw(-no_match_vars);
12use Test::More tests => 7;12use Test::More;
1313
14use GeneralLogParser;14use GeneralLogParser;
15use PerconaTest;15use PerconaTest;
@@ -219,7 +219,58 @@
219 ]219 ]
220);220);
221221
222# Customer issue from Ernie.
223test_log_parser(
224 parser => $p,
225 file => $sample.'genlog004.txt',
226 oktorun => sub { $oktorun = $_[0]; },
227 result => [
228 {
229 Query_time => 0,
230 Thread_id => '12345',
231 arg => q/administrator command: Access denied for user 'nobody'@'localhost' (using password: NO)
232/,
233 bytes => 88,
234 cmd => 'Admin',
235 pos_in_log => 0,
236 ts => undef
237 },
238 {
239 Query_time => 0,
240 Thread_id => '12345',
241 arg => 'administrator command: Connect',
242 bytes => 30,
243 cmd => 'Admin',
244 host => 'localhost',
245 pos_in_log => 81,
246 ts => undef,
247 user => 'nobody'
248 },
249 {
250 Query_time => 0,
251 Thread_id => '31519',
252 arg => 'BEGIN',
253 bytes => 5,
254 cmd => 'Query',
255 pos_in_log => 122,
256 ts => undef
257 },
258 {
259 Query_time => 0,
260 Thread_id => '98765',
261 arg => 'administrator command: Connect',
262 bytes => 30,
263 cmd => 'Admin',
264 db => 'sar',
265 host => '1.2.3.4',
266 pos_in_log => 184,
267 ts => undef,
268 user => 'payments_r'
269 },
270 ],
271);
272
222# #############################################################################273# #############################################################################
223# Done.274# Done.
224# #############################################################################275# #############################################################################
225exit;276done_testing;
226277
=== added file 't/lib/samples/genlogs/genlog004.txt'
--- t/lib/samples/genlogs/genlog004.txt 1970-01-01 00:00:00 +0000
+++ t/lib/samples/genlogs/genlog004.txt 2012-12-10 23:39:22 +0000
@@ -0,0 +1,4 @@
1 12345 Connect Access denied for user 'nobody'@'localhost' (using password: NO)
2 12345 Connect nobody@localhost as on
3 31519 Query BEGIN
4 98765 Connect payments_r@1.2.3.4 on sar

Subscribers

People subscribed via source and target branches