-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added sequence join wait command #1084
Conversation
@check-spelling-bot ReportUnrecognized words, please review:
Previously acknowledged words that are now absentdifferend FIXME followd lgcov lxr setname setoptTo accept these unrecognized words as correct (and remove the previously acknowledged and now absent words), run the following commands... in a clone of the git@github.com:saba-ja/fprime.git repository
|
Verify the behavior of join_wait when a cmd fails.In this test two sequence engines are running in parallel and we have executed join_wait cmd for each seq engine. |
@LeStarch, this is ready for review. |
Looks good! |
Change Description
Background:
F Prime CmdSequncer allows nested sequence engine calls. (e.g.
seqEng_Primary
can execute a sequence file that containsseqEng_Secondary
which executes a different sequence files)This PR allows user to run multiple sequence engines in parallel and wait for them to complete before continue executing the rest of the requests from the same sequence engines.
Rationale
Use case example:
Assume we have the following sequence file,
seq_file_1.seq
, that contains two different sequence engine,seqEng_Secondary_A
andseqEng_Secondary_B
, that executeseq_file_2.bin
andseq_file_3.bin
:seq_file_1.seq
If the user run the above sequence file with the following command:
seqEng_Secondary_A
andseqEng_Secondary_B
will run simultaneously, and the process will wait for them to complete before executing the nextseqEng_Secondary_A
request.Without the join_wait command the last request will be dropped with a warning_hi
EXECUTION_ERR
if the first request is still in progress.Testing/Review Recommendations
Created UT and manually checked the behavior of running multiple seq engines with and without join_wait command:
Running multiple seq engines without join_wait:
https://youtu.be/DBR2DKnVZbU
Running multiple seq engines with join_wait:
https://youtu.be/eaCFJH6IN-s
Future Work
NA