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

Handle transient local messages in snapshot mode when the buffer is full #1887

Draft
wants to merge 1 commit into
base: rolling
Choose a base branch
from

Conversation

doisyg
Copy link

@doisyg doisyg commented Dec 23, 2024

Draft to discuss ways of solving #1886

Naive solution which throws away the first message that is not transient local when the buffer is full, as long as the number of messages at the beginning of the buffer accounts for less than 10% of the total number of messages in the buffer.

That will not solve completely the /tf_static use case if other transient local messages are recorded and periodically published: at some point there will be more than 10% of transient local messages in the buffer, and the first ones (i.e /tf_static) will be removed.

Interested in debating and suggestions on how to solve this properly :

  • Different buffers for each transient local topic ? But then how to control their max size ?
  • A buffer dedicated to /tf_static? But then loss of generality.
  • Something else ?

poc
Signed-off-by: Guillaume Doisy <[email protected]>
@doisyg
Copy link
Author

doisyg commented Dec 23, 2024

(PR non functional for Rolling, I was originally targeting Iron, will fix)

@MichaelOrlov
Copy link
Contributor

MichaelOrlov commented Jan 10, 2025

@doisyg The transient local messages usually appears somewhere at the beginning of the recording like /tf_static.
It seems make sense to consider adding an option for repeating some number of the transient local messages for each new recording bag rather than throwing away some percentage of the messages.
I have formulated a design proposal in another task #1159 (comment). Please take it into consideration.

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

Successfully merging this pull request may close these issues.

2 participants