Invoke the program with xxx_test. It prompts with '>'. You may enter the commands in the following section.
A typical usage for a coordinator at the prompt:
create group_a
A typical usage for a non coordinator at the prompt:
join group_a
As with any Horus application, a directory server (dirsvr) must be started before starting any xxx_test process.
Currently, the following characters are available for allocation to commands: iuvwz
Notice if all the windows are on the same machine, you might see the warning message after you invoke xxx_test: "bind broadcase address: Address already in use." You can safely ignore the message.
creating 'group_a'
>
group_a: VIEW (#problems = 0; size = 0, time = 0.000000)
my_rank = 0, origin = 0, nmembers = 1
MCAST STABILITY:
1
PT2PT STABILITY:
0
>
Notice the coordinator in window 1 gets join_request from the endpoint in window 2 and starts the flush protocol. From now on, the endpoint in wondow 2 has rank 1 in group_a.
group_a: JOIN_REQUEST (#problems = 0; size = 0, time = 0.000000)
my_rank = 0, origin = 0, nmembers = 1
MCAST STABILITY:
1
PT2PT STABILITY:
0
>
group_a: FLUSH_OK (#problems = 0; size = 0, time = 0.000000)
my_rank = 0, origin = 0, nmembers = 1
MCAST STABILITY:
1
PT2PT STABILITY:
0
>
group_a: VIEW (#problems = 0; size = 0, time = 0.000000)
my_rank = 0, origin = 0, nmembers = 2
I'm contact, some ep joining, done in 0.066537 sec
MCAST STABILITY:
1 0
0 0
PT2PT STABILITY:
0 0
>
group_a: STABLE (#problems = 0; size = 0, time = 0.000000)
my_rank = 0, origin = 0, nmembers = 2
MCAST STABILITY:
1 0
1 0
PT2PT STABILITY:
0 0
>
joining 'group_a'
>
group_a: VIEW (#problems = 0; size = 0, time = 0.000000)
my_rank = 1, origin = 0, nmembers = 2
I'm joining, done in 0.190353 sec
MCAST STABILITY:
1 0
1 0
PT2PT STABILITY:
0 0
>
group_a: JOIN_REQUEST (#problems = 0; size = 0, time = 0.000000)
my_rank = 0, origin = 0, nmembers = 2
MCAST STABILITY:
1 0
1 0
PT2PT STABILITY:
0 0
>
group_a: FLUSH_OK (#problems = 0; size = 0, time = 0.000000)
my_rank = 0, origin = 0, nmembers = 2
MCAST STABILITY:
1 0
1 0
PT2PT STABILITY:
0 0
>
group_a: VIEW (#problems = 0; size = 0, time = 0.000000)
my_rank = 0, origin = 0, nmembers = 3
I'm contact, some ep joining, done in 0.128782 sec
MCAST STABILITY:
1 0 0
0 0 0
0 0 0
PT2PT STABILITY:
0 0 0
>
group_a: STABLE (#problems = 0; size = 0, time = 0.000000)
my_rank = 0, origin = 0, nmembers = 3
MCAST STABILITY:
1 0 0
0 0 0
1 0 0
PT2PT STABILITY:
0 0 0
>
group_a: STABLE (#problems = 0; size = 0, time = 0.000000)
my_rank = 0, origin = 0, nmembers = 3
MCAST STABILITY:
1 0 0
1 0 0
1 0 0
PT2PT STABILITY:
0 0 0
>
group_a: FLUSH (#problems = 0; size = 0, time = 0.000000)
my_rank = 1, origin = 0, nmembers = 2
MCAST STABILITY:
1 0
1 0
PT2PT STABILITY:
0 0
>
group_a: VIEW (#problems = 0; size = 0, time = 0.000000)
my_rank = 1, origin = 0, nmembers = 3
MCAST STABILITY:
1 0 0
1 0 0
0 0 0
PT2PT STABILITY:
0 0 0
>
group_a: STABLE (#problems = 0; size = 0, time = 0.000000)
my_rank = 1, origin = 1, nmembers = 3
MCAST STABILITY:
1 0 0
1 0 0
1 0 0
PT2PT STABILITY:
0 0 0
>
joining 'group_a'
>
group_a: VIEW (#problems = 0; size = 0, time = 0.000000)
my_rank = 2, origin = 0, nmembers = 3
I'm joining, done in 0.185403 sec
MCAST STABILITY:
1 0 0
0 0 0
1 0 0
PT2PT STABILITY:
0 0 0
>
group_a: STABLE (#problems = 0; size = 0, time = 0.000000)
my_rank = 2, origin = 2, nmembers = 3
MCAST STABILITY:
1 0 0
1 0 0
1 0 0
PT2PT STABILITY:
0 0 0
>
group_a: CAST (#problems = 0; size = 0, time = 0.000000)
my_rank = 0, origin = 1, nmembers = 3
MCAST STABILITY:
1 1 0
1 1 0
1 0 0
PT2PT STABILITY:
0 0 0
>
group_a: STABLE (#problems = 0; size = 0, time = 0.000000)
my_rank = 0, origin = 0, nmembers = 3
MCAST STABILITY:
1 1 0
1 1 0
1 1 0
PT2PT STABILITY:
0 0 0
>
cast to 'group_a'
>
group_a: STABLE (#problems = 0; size = 0, time = 0.000000)
my_rank = 1, origin = 1, nmembers = 3
MCAST STABILITY:
1 1 0
1 1 0
1 0 0
PT2PT STABILITY:
0 0 0
>
group_a: STABLE (#problems = 0; size = 0, time = 0.000000)
my_rank = 1, origin = 1, nmembers = 3
MCAST STABILITY:
1 1 0
1 1 0
1 1 0
PT2PT STABILITY:
0 0 0
>
group_a: CAST (#problems = 0; size = 0, time = 0.000000)
my_rank = 2, origin = 1, nmembers = 3
MCAST STABILITY:
1 0 0
1 1 0
1 1 0
PT2PT STABILITY:
0 0 0
>
group_a: STABLE (#problems = 0; size = 0, time = 0.000000)
my_rank = 2, origin = 2, nmembers = 3
MCAST STABILITY:
1 1 0
1 1 0
1 1 0
PT2PT STABILITY:
0 0 0
>