Repository: trafficserver
Updated Branches:
  refs/heads/master dfcc73c5b -> 12a693e37


TS-3983: traffic_ctl should not exit is manager is not running

If traffic_manager is not running, traffic_ctl prints an error and
quits. This is not helpful if you just want to show the help text,
so we should swallow that error and just fail if and when an operation
is actually performed.


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/12a693e3
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/12a693e3
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/12a693e3

Branch: refs/heads/master
Commit: 12a693e3726343c8fea852bc76ddc30980aaa72e
Parents: dfcc73c
Author: James Peach <[email protected]>
Authored: Mon Oct 26 16:18:45 2015 -0700
Committer: James Peach <[email protected]>
Committed: Mon Nov 16 09:14:39 2015 -0800

----------------------------------------------------------------------
 cmd/traffic_ctl/traffic_ctl.cc | 10 ++++------
 mgmt/api/NetworkUtilsRemote.cc | 10 +---------
 2 files changed, 5 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/12a693e3/cmd/traffic_ctl/traffic_ctl.cc
----------------------------------------------------------------------
diff --git a/cmd/traffic_ctl/traffic_ctl.cc b/cmd/traffic_ctl/traffic_ctl.cc
index 924ab58..eb2698c 100644
--- a/cmd/traffic_ctl/traffic_ctl.cc
+++ b/cmd/traffic_ctl/traffic_ctl.cc
@@ -209,7 +209,6 @@ CtrlGenericSubcommand(const char *name, const subcommand 
*cmds, unsigned ncmds,
 int
 main(int argc, const char **argv)
 {
-  TSMgmtError status;
   CtrlCommandLine cmdline;
   int debug = false;
 
@@ -249,11 +248,10 @@ main(int argc, const char **argv)
     return CtrlSubcommandUsage(NULL, commands, countof(commands), 
argument_descriptions, countof(argument_descriptions));
   }
 
-  status = TSInit(NULL, static_cast<TSInitOptionT>(TS_MGMT_OPT_NO_EVENTS | 
TS_MGMT_OPT_NO_SOCK_TESTS));
-  if (status != TS_ERR_OKAY) {
-    CtrlMgmtError(status, "failed to attach to the API server");
-    return CTRL_EX_UNAVAILABLE;
-  }
+  // Make a best effort to connect the control socket. If it turns out we are 
just displaying help or something then it
+  // doesn't matter that we failed. If we end up performing some operation 
then that operation will fail and display the
+  // error.
+  TSInit(NULL, static_cast<TSInitOptionT>(TS_MGMT_OPT_NO_EVENTS | 
TS_MGMT_OPT_NO_SOCK_TESTS));
 
   for (unsigned i = 0; i < countof(commands); ++i) {
     if (strcmp(file_arguments[0], commands[i].name) == 0) {

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/12a693e3/mgmt/api/NetworkUtilsRemote.cc
----------------------------------------------------------------------
diff --git a/mgmt/api/NetworkUtilsRemote.cc b/mgmt/api/NetworkUtilsRemote.cc
index f70768a..9ce659e 100644
--- a/mgmt/api/NetworkUtilsRemote.cc
+++ b/mgmt/api/NetworkUtilsRemote.cc
@@ -117,7 +117,6 @@ ts_connect()
   // create a socket
   main_socket_fd = socket(AF_UNIX, SOCK_STREAM, 0);
   if (main_socket_fd < 0) {
-    // fprintf(stderr, "[connect] ERROR: can't open socket\n");
     goto ERROR; // ERROR - can't open socket
   }
   // setup Unix domain socket
@@ -131,7 +130,6 @@ ts_connect()
 #endif
   // connect call
   if (connect(main_socket_fd, (struct sockaddr *)&client_sock, sockaddr_len) < 
0) {
-    fprintf(stderr, "[connect] ERROR (main_socket_fd %d): %s\n", 
main_socket_fd, strerror(int(errno)));
     close(main_socket_fd);
     main_socket_fd = -1;
     goto ERROR; // connection is down
@@ -140,7 +138,6 @@ ts_connect()
   // create a socket
   event_socket_fd = socket(AF_UNIX, SOCK_STREAM, 0);
   if (event_socket_fd < 0) {
-    // fprintf(stderr, "[connect] ERROR: can't open event socket\n");
     close(main_socket_fd); // close the other socket too!
     main_socket_fd = -1;
     goto ERROR; // ERROR - can't open socket
@@ -156,7 +153,6 @@ ts_connect()
 #endif
   // connect call
   if (connect(event_socket_fd, (struct sockaddr *)&client_event_sock, 
sockaddr_len) < 0) {
-    // fprintf(stderr, "[connect] ERROR (event_socket_fd %d): %s\n", 
event_socket_fd, strerror(int(errno)));
     close(event_socket_fd);
     close(main_socket_fd);
     event_socket_fd = -1;
@@ -264,13 +260,11 @@ reconnect_loop(int num_attempts)
     numTries++;
     err = reconnect();
     if (err == TS_ERR_OKAY) {
-      // fprintf(stderr, "[reconnect_loop] Successful reconnction; Leave 
loop\n");
       return TS_ERR_OKAY; // successful connection
     }
     sleep(1); // to make it slower
   }
 
-  // fprintf(stderr, "[reconnect_loop] FAIL TO CONNECT after %d tries\n", 
num_attempts);
   return err; // unsuccessful connection after num_attempts
 }
 
@@ -412,9 +406,7 @@ socket_test_thread(void *)
       // reconnect will return an "ALREADY CONNECTED" error when it
       // tries to connect, and on the next loop iteration, the socket_test
       // will actually pass because main_socket_fd is valid!!
-      if (reconnect() == TS_ERR_OKAY) {
-        // fprintf(stderr, "[socket_test_thread] reconnect succeeds\n");
-      }
+      reconnect();
     }
 
     sleep(5);

Reply via email to