-
Notifications
You must be signed in to change notification settings - Fork 1.9k
engine_dispatch: remove chunks from memory if the task fails to be created #8601
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
Conversation
|
Looks like this is based off a broken commit on master, can you rebase? |
Signed-off-by: seblaz <[email protected]>
|
hi @seblaz @patrick-stephens will this fix be backported to older versions of fluentbit. |
…eated When the tasks_map is filled and the new arriving chunks try to create a new task, then an error is returned. Additionally, under that condition the new chunks don't get deleted from memory, and they occupy a space of the storage.max_chunks_up. Eventually, the new chunks end up using the entire space of the storage.max_chunks_up. This causes the old chunks that have a task assigned to be unable to be brought up into memory, and therefore they never get flushed. This pr fixes the problem by deleting the new chunks from memory in case they failed to create a task and the filesystem storage is in use. Additionally, it runs a check to not bring it up to memory in the first place if possible. Signed-off-by: seblaz <[email protected]>
leonardo-albertovich
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR should be merged ASAP.
Thanks a lot for taking the time to fix this issue Sebastian!
When a task is not created and the filesystem storage is used, then set the chunk down
Fixes #8395 #7329 #5485 #5217
Testing
Before we can approve your change; please submit the following in a comment:
If this is a change to packaging of containers or native binaries then please confirm it works for all targets.
ok-package-testlabel to test for all targets (requires maintainer to do).Documentation
Fluent Bit is licensed under Apache 2.0, by submitting this pull request I understand that this code will be released under the terms of that license.