nasa / nasa/sample_app

Apps should not pend forever on software bus

Open
#55 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
C
Stars
67
Forks
60
PR merge metrics
No merged PRs in 30d

Description

The SAMPLE_APP, which is supposed to exemplify the current best practices, shouldn't be pending forever on a software bus message as it does here:

https://github.com/nasa/sample_app/blob/b95629216ae8cda3b86332f81bb515743fedcede/fsw/src/sample_app.c#L85-L87

The problem with pending forever is that the app also needs to perform an orderly exit if a restart/reload/delete command is sent to ES, which is checked by CFE_ES_RunLoop(). If an app is pending forever for software bus messages but none are sent, then the shutdown request will remain pending indefinitely.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in fsw/src/sample_app.c at lines 85-87, then inspect how CFE_ES_RunLoop() interacts with the software bus wait. Confirm how the app can stop waiting long enough to handle restart, reload, or delete commands. Done means the SAMPLE_APP no longer remains pending indefinitely when no bus messages arrive and can exit orderly.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.