Skip to content
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

TBL main task blocked for duration of CFE_TBL_DumpToFile call #2528

Open
jphickey opened this issue Mar 12, 2024 · 0 comments
Open

TBL main task blocked for duration of CFE_TBL_DumpToFile call #2528

jphickey opened this issue Mar 12, 2024 · 0 comments

Comments

@jphickey
Copy link
Contributor

Is your feature request related to a problem? Please describe.
The implementation of CFE_TBL_DumpToFile() writes the entire table to a file, and will block the calling thread for the duration of all the file operations (open, write, close).

Some tables can be large - so if the table is non-trivial in size this could block for a significant period of time.

This will block the main task of CFE_TBL from accepting commands during the entire operation.

Describe the solution you'd like
CFE ES and SB utilize a background task and incremental file write when dumping their respective data structures, such as the SB routing table. Similar approach can be used here (code to support this concept is in FS, no need to rewrite everything)

Additional context
Generally - blocking the main task of any app is something to be avoided. Previous bugs were written about ES and SB for this same thing, so it seems like TBL doing the same would also be a problem.

Requester Info
Joseph Hickey, Vantage Systems, Inc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant