Repository: cassandra Updated Branches: refs/heads/cassandra-2.1 bf43534dc -> c643bbc8d refs/heads/trunk f41bac7bd -> 827ad2438
ninja fix whitespace parsing in cassandra-stress patch by benedict; reviewed by jake for CASSANDRA-8648 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c643bbc8 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c643bbc8 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c643bbc8 Branch: refs/heads/cassandra-2.1 Commit: c643bbc8d11626d2609d622c9d0893c3ea43d9de Parents: bf43534 Author: Benedict Elliott Smith <[email protected]> Authored: Wed Feb 11 16:11:38 2015 +0000 Committer: Benedict Elliott Smith <[email protected]> Committed: Wed Feb 11 16:11:38 2015 +0000 ---------------------------------------------------------------------- .../cassandra/stress/settings/StressSettings.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/c643bbc8/tools/stress/src/org/apache/cassandra/stress/settings/StressSettings.java ---------------------------------------------------------------------- diff --git a/tools/stress/src/org/apache/cassandra/stress/settings/StressSettings.java b/tools/stress/src/org/apache/cassandra/stress/settings/StressSettings.java index 6d2f7ea..de0f6f6 100644 --- a/tools/stress/src/org/apache/cassandra/stress/settings/StressSettings.java +++ b/tools/stress/src/org/apache/cassandra/stress/settings/StressSettings.java @@ -211,6 +211,7 @@ public class StressSettings implements Serializable { try { + args = repairParams(args); final Map<String, String[]> clArgs = parseMap(args); if (clArgs.containsKey("legacy")) return Legacy.build(Arrays.copyOfRange(args, 1, args.length)); @@ -226,6 +227,23 @@ public class StressSettings implements Serializable } } + private static String[] repairParams(String[] args) + { + StringBuilder sb = new StringBuilder(); + boolean first = true; + for (String arg : args) + { + if (!first) + sb.append(" "); + sb.append(arg); + first = false; + } + return sb.toString() + .replaceAll("\s+([,=()])", "$1") + .replaceAll("([,=(])\s+", "$1") + .split(" +"); + } + public static StressSettings get(Map<String, String[]> clArgs) { SettingsCommand command = SettingsCommand.get(clArgs);
