This is an automated email from the ASF dual-hosted git repository.

alexey pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git

commit c1ff2fdb9a0362ad0a8ac38c2feeb6f64b8fa7b9
Author: Ádám Bakai <[email protected]>
AuthorDate: Thu Nov 17 12:05:32 2022 +0100

    KUDU-3421 Specify the error causing CLI argument
    
    The new error message helps to locate the exact word that caused the
    problem by printing the first argument that is not a flag in
    applications that only use flag arguments. This can happen if the user
    forgets to put "-" to one of the arguments or incorrectly tries to use
    an argument in space separated format.
    
    Change-Id: I4d832615d4b70718ce581ab72a27bad012d6a87f
    Reviewed-on: http://gerrit.cloudera.org:8080/19253
    Tested-by: Kudu Jenkins
    Reviewed-by: Alexey Serbin <[email protected]>
---
 src/kudu/experiments/rwlock-perf.cc    | 2 ++
 src/kudu/master/master_main.cc         | 2 ++
 src/kudu/tserver/tablet_server_main.cc | 2 ++
 3 files changed, 6 insertions(+)

diff --git a/src/kudu/experiments/rwlock-perf.cc 
b/src/kudu/experiments/rwlock-perf.cc
index 7df6742f2..7d49a3cf6 100644
--- a/src/kudu/experiments/rwlock-perf.cc
+++ b/src/kudu/experiments/rwlock-perf.cc
@@ -215,6 +215,8 @@ void test_shared_lock(int num_threads, TestMethod method, 
const char *name) {
 int main(int argc, char **argv) {
   kudu::ParseCommandLineFlags(&argc, &argv, true);
   if (argc != 1) {
+    std::cerr << argv[0] << " accepts only flag arguments: " << argv[1] << " 
is not a flag argument"
+              << std::endl;
     std::cerr << "usage: " << argv[0] << std::endl;
     return 1;
   }
diff --git a/src/kudu/master/master_main.cc b/src/kudu/master/master_main.cc
index 613bdb801..c01455a0e 100644
--- a/src/kudu/master/master_main.cc
+++ b/src/kudu/master/master_main.cc
@@ -33,6 +33,8 @@ static int MasterMain(int argc, char** argv) {
   SetMasterFlagDefaults();
   ParseCommandLineFlags(&argc, &argv, true);
   if (argc != 1) {
+    std::cerr << argv[0] << " accepts only flag arguments: " << argv[1] << " 
is not a flag argument"
+              << std::endl;
     std::cerr << "usage: " << argv[0] << std::endl;
     return 2;
   }
diff --git a/src/kudu/tserver/tablet_server_main.cc 
b/src/kudu/tserver/tablet_server_main.cc
index 87de630d2..38a9d5f58 100644
--- a/src/kudu/tserver/tablet_server_main.cc
+++ b/src/kudu/tserver/tablet_server_main.cc
@@ -33,6 +33,8 @@ static int TabletServerMain(int argc, char** argv) {
   SetTabletServerFlagDefaults();
   ParseCommandLineFlags(&argc, &argv, true);
   if (argc != 1) {
+    std::cerr << argv[0] << " accepts only flag arguments: " << argv[1] << " 
is not a flag argument"
+              << std::endl;
     std::cerr << "usage: " << argv[0] << std::endl;
     return 2;
   }

Reply via email to