Invalid recursion method: t=dsns
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Percona Toolkit moved to https://jira.percona.com/projects/PT |
Fix Released
|
Critical
|
Frank Cizmich |
Bug Description
Whie testing 2.2.16:
~/percona-
Usage: pt-online-
Errors in command-line arguments:
* Invalid --recursion-method: Invalid recursion method: t=dsns
pt-online-
writes. Specify the database and table in the DSN. Do not use this tool before
reading its documentation and checking your backups carefully. For more
details, please use the --help option, or try 'perldoc
bin/pt-
However PTDEBUG clearly shows:
# Arguments: _[--execute]_ _[--user=msandbox]_ _[--password=
(...)
# OptionParser:556 5375 Got option recursion-method = dsn=D=percona,
tags: | added: i63124 |
Changed in percona-toolkit: | |
status: | Confirmed → In Progress |
importance: | Undecided → Critical |
assignee: | nobody → Frank Cizmich (frank-cizmich) |
milestone: | none → 2.2.17 |
Changed in percona-toolkit: | |
status: | Fix Committed → Fix Released |
Customer noted (adapted to the example above):
"I did a brief look at the source, the problem lies in:
foreach my $method ( @$methods ) { st$|hosts$ |none$| cluster| dsn=)/i;
die "Invalid recursion method: " . ($method || 'undef') . "\n"
unless $method && $method =~ m/^(?:processli
}
the method somehow is "dsn=D=percona", "t=dsns", and the second one does not pass the test. There is one dsn method which is "dsn=D= percona, t=dsns" , somehow the comma is interpreted as the separation of two DSN methods."