You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When a TP federate completes its run, it will wait to receive all the updates it expects from a federate before it attempts to synchronize on the "finished" point.
This is done because sync messages in portico are OOB and skip past any unprocessed incoming messages, potentially cutting a federate off before it's finished with the last of the messages it has queued (which means we don't end up counting them).
There is code in there to make the federate only wait a certain amount of time, in case dropped packets meant that the messages were never going to come at all. However, the overall effect is that it waits for a while and then skips past, and the other federates (which may not be finished sending) get all their messages out and processed (the federate is ticking while it is waiting to sync), or close to it.
The "count up" values printed by the wait method are actually pretty useful for seeing the waiting federates received count tick up live (and thus, reinforce that there is incoming traffic).
So, let's keep that printing going, but only as long as the value is ticking up. If it stays steady for 3-5 checks, the messages probably aren't coming, so give up then. Sounds like a good compromise!
Acceptance Criteria
TP waitForFinish method continues to wait while received message count for a federate increases. Stops if it doesn't move for 3-5 straight checks (depending on tick/sleep time).
The text was updated successfully, but these errors were encountered:
timpokorny
changed the title
Make TP test waitFor method keep waiting while incoming message count continues to rise
Make TP test waitForFinish method keep waiting while incoming message count continues to rise
Jan 25, 2015
Summary
When a TP federate completes its run, it will wait to receive all the updates it expects from a federate before it attempts to synchronize on the "finished" point.
This is done because sync messages in portico are OOB and skip past any unprocessed incoming messages, potentially cutting a federate off before it's finished with the last of the messages it has queued (which means we don't end up counting them).
There is code in there to make the federate only wait a certain amount of time, in case dropped packets meant that the messages were never going to come at all. However, the overall effect is that it waits for a while and then skips past, and the other federates (which may not be finished sending) get all their messages out and processed (the federate is ticking while it is waiting to sync), or close to it.
The "count up" values printed by the wait method are actually pretty useful for seeing the waiting federates received count tick up live (and thus, reinforce that there is incoming traffic).
So, let's keep that printing going, but only as long as the value is ticking up. If it stays steady for 3-5 checks, the messages probably aren't coming, so give up then. Sounds like a good compromise!
Acceptance Criteria
waitForFinish
method continues to wait while received message count for a federate increases. Stops if it doesn't move for 3-5 straight checks (depending on tick/sleep time).The text was updated successfully, but these errors were encountered: