Ticket #1074 (closed defect: fixed)

Opened 7 years ago

Last modified 7 years ago

seash timeout error messages can be confusing...

Reported by: justinc Owned by: leonwlaw
Priority: minor Milestone:
Component: seash Version: 0.1t
Severity: Medium Keywords:
Cc: justinc Blocking:
Blocked By:

Description

Often times, when communications with a vessel is slow, you get confusing errors. It would be good to display something more human readable.

For example,

hundrednodes@%all !> run allpairsping.repy 63179
Failure 'signedcommunicate failed on session_recvmessage with error 'recv() timed out!'' on  141.219.252.133:1224:v16
Added group 'rungood' with 97 targets and 'runfail' with 1 targets

could be written instead as:

Did not receive timely response from some nodes.   This operation may have failed or succeeded on these nodes.   Relevant nodes: 141.219.252.133:1224:v16

Note that I'm just suggesting some text. Feel free to improve / clarify further.

Change History

  Changed 7 years ago by leonwlaw

  • status changed from new to accepted

follow-ups: ↓ 3 ↓ 4   Changed 7 years ago by leonwlaw

My proposal would be to have a dedicated function for pretty-printing these error messages. Something like this:
Failure 'Node Manager error 'Insufficient Permissions uploading to 130.83.244.162:1224:v10

Could print out instead:
You don't have permission to upload a file to 130.83.244.162:1224:v10. Did you release this resource by accident?

Listing the error, the action the user wanted to do, and possible reasons why the error occurred/things to do that could fix the error. How does this sound?

in reply to: ↑ 2   Changed 7 years ago by leonwlaw

Maybe something like this?

# Prints out the specified error in a human readable way.
def print_error(error, node, action):
  if error == "Node Manager error 'Insufficient Permissions'":
    error_string = "You don't have permission to " + action + " " + node + ". Did you release this resource by accident?"
  elif error == 'some other error':
    error_string ....
  # Remaining errors to translate go here
  else:
    # We don't know how to translate this
    error_string = error + " while performing action:" + action + " " + node
  print error_string
  

in reply to: ↑ 2   Changed 7 years ago by justinc

Replying to leonwlaw:

My proposal would be to have a dedicated function for pretty-printing these error messages. Something like this:
Failure 'Node Manager error 'Insufficient Permissions uploading to 130.83.244.162:1224:v10

Could print out instead:
You don't have permission to upload a file to 130.83.244.162:1224:v10. Did you release this resource by accident?

If this happens on 10 nodes, do you see this 10 times or one line with 10 node names?

Listing the error, the action the user wanted to do, and possible reasons why the error occurred/things to do that could fix the error. How does this sound?

I think clearly listing the error, etc. is a good idea.

follow-up: ↓ 6   Changed 7 years ago by leonwlaw

What we could do is make it so the node names are grouped by error type. If the 10 nodes have the same error, then we will see one line with 10 node names. If different errors occur, we then write the node names with the respective errors.

e.g.:
You don't have permission to upload a file to 130.83.244.162:1224:v10 and 123.22.44.121:1224:v4. Did you release this resource by accident?
The connection(s) timed out while we were trying to upload a file to 110.83.44.162:1224:v7, 110.84.44.162:1224:v4, and 110.83.15.132:1224:v53

in reply to: ↑ 5   Changed 7 years ago by justinc

Replying to leonwlaw:

sounds good.

  Changed 7 years ago by leonwlaw

  • status changed from accepted to closed
  • resolution set to fixed
Note: See TracTickets for help on using tickets.