File: s4u-comm-failure.tesh

package info (click to toggle)
simgrid 4.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 38,980 kB
  • sloc: cpp: 123,583; ansic: 66,779; python: 8,358; java: 6,406; fortran: 6,079; f90: 5,123; xml: 4,587; sh: 2,337; perl: 1,436; makefile: 105; lisp: 49; javascript: 7; sed: 6
file content (17 lines) | stat: -rw-r--r-- 1,210 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/usr/bin/env tesh

$ ${bindir:=.}/s4u-comm-failure "--log=root.fmt:[%10.6r]%e(%i:%a@%h)%e%m%n"
> [  0.000000] (2:Receiver@Host2) Receiver posting a receive...
> [  0.000000] (3:Receiver@Host3) Receiver posting a receive...
> [  0.000000] (1:Sender@Host1) Initiating asynchronous send to mailbox2
> [  0.000000] (1:Sender@Host1) Initiating asynchronous send to mailbox3
> [  0.000000] (1:Sender@Host1) Calling wait_any..
> [ 10.000000] (4:LinkKiller@Host1) Turning off link 'linkto2'
> [ 10.000000] (2:Receiver@Host2) Receiver has experience a network failure exception
> [ 10.000000] (1:Sender@Host1) Sender has experienced a network failure exception, so it knows that something went wrong
> [ 10.000000] (1:Sender@Host1) Now it needs to figure out which of the two comms failed by looking at their state:
> [ 10.000000] (1:Sender@Host1)   Comm to mailbox2 has state: FAILED
> [ 10.000000] (1:Sender@Host1)   Comm to mailbox3 has state: STARTED
> [ 10.000000] (1:Sender@Host1) Waiting on a FAILED comm raises an exception: 'Cannot wait for a failed communication'
> [ 10.000000] (1:Sender@Host1) Wait for remaining comm, just to be nice
> [ 17.319588] (3:Receiver@Host3) Receiver has received successfully!