Skip to content

workflows: fix tests when coverage build, mp: workaround for assertion#11614

Merged
edsiper merged 2 commits into
fluent:masterfrom
mabrarov:feature/test_coverage
Mar 24, 2026
Merged

workflows: fix tests when coverage build, mp: workaround for assertion#11614
edsiper merged 2 commits into
fluent:masterfrom
mabrarov:feature/test_coverage

Conversation

@mabrarov
Copy link
Copy Markdown
Contributor

@mabrarov mabrarov commented Mar 23, 2026

Changes

  1. Increased coroutine stack size for CI coverage builds to fix failing tests (refer to https://github.com/fluent/fluent-bit/actions/runs/23456675367/job/68247579444#logs).
  2. Workaround for Fixed assertion in mpack_reader_init ludocode/mpack#119 (refer to build: CMake project fixes for MS Visual C++ compiler #11397 (comment)) to fix CI macOS builds.

Testing

Before we can approve your change; please submit the following in a comment:

  • [N/A] Example configuration file for the change.
  • [N/A] Debug log output from testing the change.
  • [N/A] Attached Valgrind output that shows no leaks or memory corruption was found.
  • [N/A] Run local packaging test showing all targets (including any new ones) build.
  • [N/A] Set ok-package-test label to test for all targets (requires maintainer to do).

Documentation

  • [N/A] Documentation required for this feature

Backporting

  • [N/A] Backport to latest stable release.

Related PRs

  1. coro: Extend coro stack size for 38KiB padding of yyjson (2nd attempt) #11608
  2. Fixed assertion in mpack_reader_init ludocode/mpack#119

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.

Summary by CodeRabbit

  • Bug Fixes

    • Enhanced message pack counting logic with improved NULL pointer validation to prevent unsafe operations when input data is unavailable.
  • Chores

    • Updated CI/CD workflow to enhance coverage detection and conditionally apply additional build configuration flags during unit testing.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 23, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 1bc71fc3-7a70-44f3-ae44-dd9f5f645092

📥 Commits

Reviewing files that changed from the base of the PR and between d4a4cbe and ff235f7.

📒 Files selected for processing (1)
  • src/flb_mp.c
🚧 Files skipped from review as they are similar to previous changes (1)
  • src/flb_mp.c

📝 Walkthrough

Walkthrough

Two changes enhance build reliability and code safety: GitHub Actions workflow logic now detects coverage builds and appends a compiler flag to adjust stack size, while the msgpack function initializes variables and adds a NULL check for safer data handling.

Changes

Cohort / File(s) Summary
Build System
.github/workflows/unit-tests.yaml
Modified Ubuntu unit test job to detect COVERAGE mode in FLB_OPT and append -DFLB_CORO_STACK_SIZE=4194304 flag with proper spacing handling.
Msgpack Utility
src/flb_mp.c
Updated flb_mp_count_remaining() to initialize remaining variable and guard msgpack reader initialization/iteration with a data != NULL check, preventing unsafe reader operations on null pointers.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Suggested reviewers

  • edsiper
  • patrick-stephens
  • niedbalski
  • celalettin1286

Poem

🐰 A workflow now catches coverage's call,
With stack sizes tuned to fit all,
While msgpack counts with caution stand,
Null-checked safe across the land,
These guards and flags make code more grand!

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the two main changes: a workflow fix for coverage builds and an mp workaround for assertion issues.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@mabrarov mabrarov marked this pull request as ready for review March 23, 2026 22:51
@mabrarov mabrarov marked this pull request as draft March 23, 2026 22:52
@mabrarov mabrarov force-pushed the feature/test_coverage branch from dcf36c5 to 4288657 Compare March 23, 2026 22:54
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 428865758b

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread .github/workflows/unit-tests.yaml Outdated
Comment thread .github/workflows/unit-tests.yaml Outdated
Signed-off-by: Marat Abrarov <abrarov@gmail.com>
@mabrarov mabrarov changed the title workflows: fix tests with coverage build workflows: fix tests with coverage build, mp: workaround for assertion Mar 24, 2026
@mabrarov mabrarov changed the title workflows: fix tests with coverage build, mp: workaround for assertion workflows: fix tests when coverage build, mp: workaround for assertion Mar 24, 2026
Signed-off-by: Marat Abrarov <abrarov@gmail.com>
@cosmo0920 cosmo0920 added this to the Fluent Bit v5.0 milestone Mar 24, 2026
@edsiper edsiper merged commit 644ced9 into fluent:master Mar 24, 2026
49 of 54 checks passed
@mabrarov mabrarov deleted the feature/test_coverage branch March 24, 2026 11:55
patrick-stephens added a commit to telemetryforge/agent that referenced this pull request May 15, 2026
Signed-off-by: Patrick Stephens <pat@telemetryforge.io>
patrick-stephens added a commit to telemetryforge/agent that referenced this pull request May 15, 2026
* [upstream] in_forward: tests: Add a regression test case for

Upstream-Ref: fluent/fluent-bit@de3dc06
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Try to reconnect on cancellations

Upstream-Ref: fluent/fluent-bit@b5e53c0
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Add retry backoff mechanism

Upstream-Ref: fluent/fluent-bit@3b91773
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Address coderabbitai comments

Upstream-Ref: fluent/fluent-bit@e3735f7
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Fix type glitches

Upstream-Ref: fluent/fluent-bit@4510a89
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Handle capped values

Upstream-Ref: fluent/fluent-bit@0a95d62
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Plug NULL pointer deref lines

Upstream-Ref: fluent/fluent-bit@1d6d32c
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Process remote handle to retrive

Upstream-Ref: fluent/fluent-bit@84e73c1
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Plug a negative overflow possibility

Upstream-Ref: fluent/fluent-bit@20a63b8
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Address more coderabbitai comments

Upstream-Ref: fluent/fluent-bit@088fdfe
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Apply backoff settings effectively

Upstream-Ref: fluent/fluent-bit@5fff944
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_forward: tests: Add fail-close around test cases

Upstream-Ref: fluent/fluent-bit@67ae3b0
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_es: create space for header before use

Upstream-Ref: fluent/fluent-bit@912b7d7
Cherry-picked from Fluent Bit v4.2.4

* [upstream] help: add space for outputs and processors when

Upstream-Ref: fluent/fluent-bit@36db973
Cherry-picked from Fluent Bit v4.2.4

* [upstream] opentelemetry: unify trace JSON parser

Upstream-Ref: fluent/fluent-bit@03208db
Cherry-picked from Fluent Bit v4.2.4

* [upstream] build: register new flb_opentelemetry_traces.c

Upstream-Ref: fluent/fluent-bit@67685c0
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_opentelemetry: use new otel json trace interface

Upstream-Ref: fluent/fluent-bit@602ed5b
Cherry-picked from Fluent Bit v4.2.4

* [upstream] opentelemetry: traces: propagate error status

Upstream-Ref: fluent/fluent-bit@4fbd6a0
Cherry-picked from Fluent Bit v4.2.4

* [upstream] opentelemetry: logs: strict check when decoding IDs

Upstream-Ref: fluent/fluent-bit@c576b1e
Cherry-picked from Fluent Bit v4.2.4

* [upstream] opentelemetry: traces: strict check when decoding IDs

Upstream-Ref: fluent/fluent-bit@f2244cd
Cherry-picked from Fluent Bit v4.2.4

* [upstream] config_format: add new function to add property

Upstream-Ref: fluent/fluent-bit@03f3803
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router_config: new interface to parse new input

Upstream-Ref: fluent/fluent-bit@cbd9b13
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router_condition: add new conditional template

Upstream-Ref: fluent/fluent-bit@a2cd096
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router: check for new input routes

Upstream-Ref: fluent/fluent-bit@7dc9a91
Cherry-picked from Fluent Bit v4.2.4

* [upstream] config: add list for input routes

Upstream-Ref: fluent/fluent-bit@6b33e3d
Cherry-picked from Fluent Bit v4.2.4

* [upstream] build: register new router interface files

Upstream-Ref: fluent/fluent-bit@48e7733
Cherry-picked from Fluent Bit v4.2.4

* [upstream] config_format: yaml: fix processors recognition

Upstream-Ref: fluent/fluent-bit@24f8677
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router_config: allow not having routes (optional)

Upstream-Ref: fluent/fluent-bit@6c63f07
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router_config: fix signal compatibility check logic

Upstream-Ref: fluent/fluent-bit@1c7c4e1
Cherry-picked from Fluent Bit v4.2.4

* [upstream] mp: extend cobj API to expose group metadata and

Upstream-Ref: fluent/fluent-bit@78b14aa
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: new mp_chunk_cobj

Upstream-Ref: fluent/fluent-bit@d87ec0d
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_node_exporter_metrics: add netstat linux collector

Upstream-Ref: fluent/fluent-bit@243d431
Cherry-picked from Fluent Bit v4.2.4

* [upstream] fstore: safe checks for active chunks on deletion

Upstream-Ref: fluent/fluent-bit@e7320a6
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: fstore: add regression test for

Upstream-Ref: fluent/fluent-bit@65722e8
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router: implement new router paths and conditions

Upstream-Ref: fluent/fluent-bit@d87d0f9
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router_config: add support for rules

Upstream-Ref: fluent/fluent-bit@e75e256
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router_condition: add conditional logic for logs

Upstream-Ref: fluent/fluent-bit@559b850
Cherry-picked from Fluent Bit v4.2.4

* [upstream] task: add handling for direct route

Upstream-Ref: fluent/fluent-bit@9ac9bf9
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router: use cfl_list for router path

Upstream-Ref: fluent/fluent-bit@7b6e788
Cherry-picked from Fluent Bit v4.2.4

* [upstream] input: fix data type for routes_direct

Upstream-Ref: fluent/fluent-bit@68b7efb
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router_config: fix data type for linked list

Upstream-Ref: fluent/fluent-bit@fa8e8b3
Cherry-picked from Fluent Bit v4.2.4

* [upstream] task: fix data type for linked list

Upstream-Ref: fluent/fluent-bit@9aa07ac
Cherry-picked from Fluent Bit v4.2.4

* [upstream] input: include cfl header

Upstream-Ref: fluent/fluent-bit@380c159
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router: use cfl_list intead of mk_list

Upstream-Ref: fluent/fluent-bit@e3eeb0b
Cherry-picked from Fluent Bit v4.2.4

* [upstream] input: fix llist initialization

Upstream-Ref: fluent/fluent-bit@995dd12
Cherry-picked from Fluent Bit v4.2.4

* [upstream] sosreport: fix list iterator api

Upstream-Ref: fluent/fluent-bit@6bab255
Cherry-picked from Fluent Bit v4.2.4

* [upstream] input_chunk: expose flb_input_chunk_get_real_size()

Upstream-Ref: fluent/fluent-bit@98009ae
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: input_chunk: remove unused code

Upstream-Ref: fluent/fluent-bit@32ebcda
Cherry-picked from Fluent Bit v4.2.4

* [upstream] routes_mask: correct memcmp byte count in

Upstream-Ref: fluent/fluent-bit@83662c4
Cherry-picked from Fluent Bit v4.2.4

* [upstream] log_event_decoder: add context extraction helpers

Upstream-Ref: fluent/fluent-bit@f176701
Cherry-picked from Fluent Bit v4.2.4

* [upstream] task: pass context to router condition evaluation

Upstream-Ref: fluent/fluent-bit@a7d0510
Cherry-picked from Fluent Bit v4.2.4

* [upstream] processor_content_modifier: skip GROUP_START markers

Upstream-Ref: fluent/fluent-bit@03d3c2e
Cherry-picked from Fluent Bit v4.2.4

* [upstream] lib: add context support API for routing

Upstream-Ref: fluent/fluent-bit@6b8fbdd
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: runtime: in_opentelemetry_routing: add context

Upstream-Ref: fluent/fluent-bit@2d07323
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: conditional_routing: add context

Upstream-Ref: fluent/fluent-bit@34c08fe
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: runtime: in_opentelemetry_routing: enhance

Upstream-Ref: fluent/fluent-bit@6a80c78
Cherry-picked from Fluent Bit v4.2.4

* [upstream] lib: use flb_compat.h instead of unistd.h (Windows

Upstream-Ref: fluent/fluent-bit@1256bf8
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: conditionals: NULL record should

Upstream-Ref: fluent/fluent-bit@311d930
Cherry-picked from Fluent Bit v4.2.4

* [upstream] log_event_decoder: add tests for group marker

Upstream-Ref: fluent/fluent-bit@7b87bbb
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: log_event_decoder: add comprehensive

Upstream-Ref: fluent/fluent-bit@0e6513f
Cherry-picked from Fluent Bit v4.2.4

* [upstream] log_event_decoder: improve robustness for invalid

Upstream-Ref: fluent/fluent-bit@668358c
Cherry-picked from Fluent Bit v4.2.4

* [upstream] lib: chunkio: upgrade to v1.5.4

Upstream-Ref: fluent/fluent-bit@f98fede
Cherry-picked from Fluent Bit v4.2.4

* [upstream] input_chunk: extend chunk layer to support routing

Upstream-Ref: fluent/fluent-bit@c56dc3d
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: add new input_chunk_routes.c

Upstream-Ref: fluent/fluent-bit@139bd2b
Cherry-picked from Fluent Bit v4.2.4

* [upstream] input_chunk: add direct route labels and plugin name

Upstream-Ref: fluent/fluent-bit@c701590
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: add direct route persistence tests

Upstream-Ref: fluent/fluent-bit@babbf92
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: input_chunk_route: add missing cmt

Upstream-Ref: fluent/fluent-bit@5a15b12
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: input_chunk_route: simplify cleanup

Upstream-Ref: fluent/fluent-bit@fb24892
Cherry-picked from Fluent Bit v4.2.4

* [upstream] plugins: kafka: fix cmake cross compile error

Upstream-Ref: fluent/fluent-bit@7eab11a
Cherry-picked from Fluent Bit v4.2.4

* [upstream] build: Implement strict pointer types option

Upstream-Ref: fluent/fluent-bit@cc15e1b
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tls: openssl: Implement certificates" thumbprint

Upstream-Ref: fluent/fluent-bit@baa0153
Cherry-picked from Fluent Bit v4.2.4

* [upstream] output: Handle to load certificates with their

Upstream-Ref: fluent/fluent-bit@3d3db60
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_syslog: Handle octent_counting

Upstream-Ref: fluent/fluent-bit@a2917b8
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_syslog: Add test cases for octet counting

Upstream-Ref: fluent/fluent-bit@5bf9544
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_syslog: Include a header explicitly

Upstream-Ref: fluent/fluent-bit@4789437
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_syslog: tests: Split declaration and applying

Upstream-Ref: fluent/fluent-bit@16e2dd8
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_syslog: tests: Use format instead of frame

Upstream-Ref: fluent/fluent-bit@9f8c816
Cherry-picked from Fluent Bit v4.2.4

* [upstream] scheduler: engine: Plug macOS abort on dry-run

Upstream-Ref: fluent/fluent-bit@b67db02
Cherry-picked from Fluent Bit v4.2.4

* [upstream] output_thread: Validate a magic for cleaning up

Upstream-Ref: fluent/fluent-bit@ef58c53
Cherry-picked from Fluent Bit v4.2.4

* [upstream] scheduler: Use a correct type on a member

Upstream-Ref: fluent/fluent-bit@be2f2be
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router: add router context structure and move routing

Upstream-Ref: fluent/fluent-bit@7ce0d16
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router: implement router context creation and

Upstream-Ref: fluent/fluent-bit@0fc19d1
Cherry-picked from Fluent Bit v4.2.4

* [upstream] routes_mask: migrate API to use router context

Upstream-Ref: fluent/fluent-bit@b361654
Cherry-picked from Fluent Bit v4.2.4

* [upstream] config: integrate router context creation and

Upstream-Ref: fluent/fluent-bit@0adf3e4
Cherry-picked from Fluent Bit v4.2.4

* [upstream] engine: publish routing metrics on log batch flush

Upstream-Ref: fluent/fluent-bit@350a944
Cherry-picked from Fluent Bit v4.2.4

* [upstream] input_chunk: update routing mask operations to use

Upstream-Ref: fluent/fluent-bit@b891248
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_storage_backlog: update routing mask operations to

Upstream-Ref: fluent/fluent-bit@d05826f
Cherry-picked from Fluent Bit v4.2.4

* [upstream] task: update routing mask checks to use router

Upstream-Ref: fluent/fluent-bit@2d3ce50
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: routing: update routing tests to use

Upstream-Ref: fluent/fluent-bit@b0cdb17
Cherry-picked from Fluent Bit v4.2.4

* [upstream] input_chunk: small cleanup

Upstream-Ref: fluent/fluent-bit@f73850f
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router: remove unnecessary function

Upstream-Ref: fluent/fluent-bit@6c487f0
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: input_chunk_routes: fix compiler

Upstream-Ref: fluent/fluent-bit@a62268e
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: fuzzers: aws_credentials_fuzzer: fix

Upstream-Ref: fluent/fluent-bit@3eb6c5b
Cherry-picked from Fluent Bit v4.2.4

* [upstream] config: release kernel context on router creation

Upstream-Ref: fluent/fluent-bit@de81352
Cherry-picked from Fluent Bit v4.2.4

* [upstream] bin: destroy cf opts on failure

Upstream-Ref: fluent/fluent-bit@9fbf2e1
Cherry-picked from Fluent Bit v4.2.4

* [upstream] config: release http resources on exit

Upstream-Ref: fluent/fluent-bit@02c9e9f
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_s3: Add a NULL check for plugging SEGV on dry_run

Upstream-Ref: fluent/fluent-bit@05c8c3a
Cherry-picked from Fluent Bit v4.2.4

* [upstream] build: Add workdir option for the default

Upstream-Ref: fluent/fluent-bit@7970be4
Cherry-picked from Fluent Bit v4.2.4

* [upstream] thread_storage: Use pthread_once to ensure

Upstream-Ref: fluent/fluent-bit@a4c158d
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_opensearch: release aws signature a retry or

Upstream-Ref: fluent/fluent-bit@c26a2d1
Cherry-picked from Fluent Bit v4.2.4

* [upstream] router: for direct routes improve the handling of

Upstream-Ref: fluent/fluent-bit@00baa18
Cherry-picked from Fluent Bit v4.2.4

* [upstream] motd: add 4.2 banner

Upstream-Ref: fluent/fluent-bit@b63bcf4
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_http: Plug a NULL dereference

Upstream-Ref: fluent/fluent-bit@a8d39bb
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_http: added PUT support (#10882)

Upstream-Ref: fluent/fluent-bit@b6fcaab
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_tail: Implement long ling truncation

Upstream-Ref: fluent/fluent-bit@7612a09
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: runtime: in_tail: Add test cases for long line

Upstream-Ref: fluent/fluent-bit@e9f63e6
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_systemd: add explicit restarts for the journal

Upstream-Ref: fluent/fluent-bit@9ed44f0
Cherry-picked from Fluent Bit v4.2.4

* [upstream] config: Add dead letter queue related config

Upstream-Ref: fluent/fluent-bit@3d6f0bc
Cherry-picked from Fluent Bit v4.2.4

* [upstream] config: storage: Implement dlq for filesystem chunks

Upstream-Ref: fluent/fluent-bit@6b74d58
Cherry-picked from Fluent Bit v4.2.4

* [upstream] engine: Add a capability to handle dead letter queue

Upstream-Ref: fluent/fluent-bit@81ee67c
Cherry-picked from Fluent Bit v4.2.4

* [upstream] storage: Use correct visibility of struct

Upstream-Ref: fluent/fluent-bit@5ac5b9e
Cherry-picked from Fluent Bit v4.2.4

* [upstream] storage: tests: internal: Add DLQ internal tests

Upstream-Ref: fluent/fluent-bit@90d5ad0
Cherry-picked from Fluent Bit v4.2.4

* [upstream] storage: tests: internal: Make to be able to compile

Upstream-Ref: fluent/fluent-bit@d8878be
Cherry-picked from Fluent Bit v4.2.4

* [upstream] storage: tests: internal: Fix a compilation error on

Upstream-Ref: fluent/fluent-bit@e183f81
Cherry-picked from Fluent Bit v4.2.4

* [upstream] storage: Restore the original state of chunks

Upstream-Ref: fluent/fluent-bit@1519472
Cherry-picked from Fluent Bit v4.2.4

* [upstream] storage: Restore status of chunks for error paths

Upstream-Ref: fluent/fluent-bit@eb72734
Cherry-picked from Fluent Bit v4.2.4

* [upstream] storage: internal: tests: Confirm the initial state

Upstream-Ref: fluent/fluent-bit@615ef59
Cherry-picked from Fluent Bit v4.2.4

* [upstream] engine: Tweak conditions for enabling DLQ

Upstream-Ref: fluent/fluent-bit@29f41f6
Cherry-picked from Fluent Bit v4.2.4

* [upstream] filter_kubernetes: use service account issuer to

Upstream-Ref: fluent/fluent-bit@f831f7f
Cherry-picked from Fluent Bit v4.2.4

* [upstream] filter_kubernetes: aws: declare variable on top of

Upstream-Ref: fluent/fluent-bit@d814153
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_forward: fix connection release on pause memory

Upstream-Ref: fluent/fluent-bit@0717103
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_opentelemetry: added five missing configuration

Upstream-Ref: fluent/fluent-bit@0e56bc2
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_s3: implement retry_limit parameter

Upstream-Ref: fluent/fluent-bit@f4108db
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_blob: added missing configuration descriptions.

Upstream-Ref: fluent/fluent-bit@ae14454
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tls: openssl: Implement flexible certstore loading on

Upstream-Ref: fluent/fluent-bit@ef3f075
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tls: openssl: Handle location prefix more strictly

Upstream-Ref: fluent/fluent-bit@923dec2
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_kubernetes_events: add support for configuring

Upstream-Ref: fluent/fluent-bit@10ebd3a
Cherry-picked from Fluent Bit v4.2.4

* [upstream] dockerfile: Docker image to support large page sizes

Upstream-Ref: fluent/fluent-bit@137771b
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_elasticsearch: fixing missing config parameter

Upstream-Ref: fluent/fluent-bit@3c4f8f4
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_forward: improve configuration parameter

Upstream-Ref: fluent/fluent-bit@c88c545
Cherry-picked from Fluent Bit v4.2.4

* [upstream] build: prevent the toolchain from emitting an

Upstream-Ref: fluent/fluent-bit@f2dd991
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_forward: fix segfault and double-free in trace

Upstream-Ref: fluent/fluent-bit@8cc6da6
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_node_exporter_metrics: Increase buffer size to

Upstream-Ref: fluent/fluent-bit@7ded9ae
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_http: added missing config parameter descriptions.

Upstream-Ref: fluent/fluent-bit@12b191b
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_flowcounter: Fix incorrect bytes calculation

Upstream-Ref: fluent/fluent-bit@3a501b2
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_ebpf: add missing config option descriptions

Upstream-Ref: fluent/fluent-bit@ee1d69d
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_gpu_metrics: updated config parameters

Upstream-Ref: fluent/fluent-bit@275ef3b
Cherry-picked from Fluent Bit v4.2.4

* [upstream] build: Tweak linker flags for zstd

Upstream-Ref: fluent/fluent-bit@6d6372b
Cherry-picked from Fluent Bit v4.2.4

* [upstream] build: Use bundled namespace instead of the simple

Upstream-Ref: fluent/fluent-bit@5a96ef5
Cherry-picked from Fluent Bit v4.2.4

* [upstream] build: Address fallbacking issue of finding libzstd

Upstream-Ref: fluent/fluent-bit@eb9f9bd
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Plug glitches of time offset for

Upstream-Ref: fluent/fluent-bit@282081f
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Remove needless locale related lines

Upstream-Ref: fluent/fluent-bit@909b1a9
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_cloudwatch_logs: increase MAX_EVENT_LEN to 1MB

Upstream-Ref: fluent/fluent-bit@c994082
Cherry-picked from Fluent Bit v4.2.4

* [upstream] aws: Implement simple_aggregation operation

Upstream-Ref: fluent/fluent-bit@3da0766
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: aws_aggregation

Upstream-Ref: fluent/fluent-bit@f6c1c69
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_kinesis_firehose: Add simple_aggregation

Upstream-Ref: fluent/fluent-bit@eb39164
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: Add firehose test cases for simple_aggregation

Upstream-Ref: fluent/fluent-bit@94c4b50
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_kinesis_streams: Add simple_aggregation operation

Upstream-Ref: fluent/fluent-bit@976938a
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: Add kinesis test cases for simple_aggregation

Upstream-Ref: fluent/fluent-bit@0572b9c
Cherry-picked from Fluent Bit v4.2.4

* [upstream] http_client: add ipv6 bracket if missing from host

Upstream-Ref: fluent/fluent-bit@1d38468
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: expand http_client tests for host headers

Upstream-Ref: fluent/fluent-bit@1348732
Cherry-picked from Fluent Bit v4.2.4

* [upstream] network: Add ws2tcpip.h to avoid missing func defs

Upstream-Ref: fluent/fluent-bit@f760d58
Cherry-picked from Fluent Bit v4.2.4

* [upstream] utils: fix support for ipv6 addresses

Upstream-Ref: fluent/fluent-bit@a959af8
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: add IPv4 and IPv6 tests for utils

Upstream-Ref: fluent/fluent-bit@1676473
Cherry-picked from Fluent Bit v4.2.4

* [upstream] lib: sqlite: upgrade to v3.51.1

Upstream-Ref: fluent/fluent-bit@e9d8b5d
Cherry-picked from Fluent Bit v4.2.4

* [upstream] lib: c-ares: upgrade to v1.34.6

Upstream-Ref: fluent/fluent-bit@7caffd1
Cherry-picked from Fluent Bit v4.2.4

* [upstream] lib: monkey: upgrade to v1.8.6

Upstream-Ref: fluent/fluent-bit@3683ce3
Cherry-picked from Fluent Bit v4.2.4

* [upstream] lib: cmetrics: upgrade to v1.0.6

Upstream-Ref: fluent/fluent-bit@96a31e3
Cherry-picked from Fluent Bit v4.2.4

* [upstream] lib: luajit: upgrade to 7152e154 (20251223)

Upstream-Ref: fluent/fluent-bit@ddfef36
Cherry-picked from Fluent Bit v4.2.4

* [upstream] filter_kubernetes: fix parser annotation leak

Upstream-Ref: fluent/fluent-bit@34f9ea9
Cherry-picked from Fluent Bit v4.2.4

* [upstream] bin: Handle CONT signal properly under leaks command

Upstream-Ref: fluent/fluent-bit@bf74f1d
Cherry-picked from Fluent Bit v4.2.4

* [upstream] bin: Add NULL checks

Upstream-Ref: fluent/fluent-bit@ab34c0e
Cherry-picked from Fluent Bit v4.2.4

* [upstream] maintenance: update branches info

Upstream-Ref: fluent/fluent-bit@b0c026c
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_opentelemetry: on HTTP/2, read and process gRPC

Upstream-Ref: fluent/fluent-bit@dcea262
Cherry-picked from Fluent Bit v4.2.4

* [upstream] config_format: cf_yaml: lign the behavior of dirname

Upstream-Ref: fluent/fluent-bit@54a36fb
Cherry-picked from Fluent Bit v4.2.4

* [upstream] filter: validate value property (not null)

Upstream-Ref: fluent/fluent-bit@a2f64b9
Cherry-picked from Fluent Bit v4.2.4

* [upstream] processor: properly handle numeric values in config

Upstream-Ref: fluent/fluent-bit@527ca9f
Cherry-picked from Fluent Bit v4.2.4

* [upstream] filter_log_to_metrics: fix handling of init

Upstream-Ref: fluent/fluent-bit@a1e82ab
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_stackdriver: clean up oauth2 cache lifecycle

Upstream-Ref: fluent/fluent-bit@5a30d3e
Cherry-picked from Fluent Bit v4.2.4

* [upstream] filter_kubernetes: Adjust cleanup ordering to avoid

Upstream-Ref: fluent/fluent-bit@a3c457f
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Add text format for event rendering

Upstream-Ref: fluent/fluent-bit@2be7535
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Plug memory errors on exceptions

Upstream-Ref: fluent/fluent-bit@9939213
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_winevtlog: Use different variables for collecting

Upstream-Ref: fluent/fluent-bit@3bdac8c
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_tail: Add skipped_lines counter

Upstream-Ref: fluent/fluent-bit@7155725
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_tail: Handle only first occurrence for skipped

Upstream-Ref: fluent/fluent-bit@09e3780
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_splunk: Extract x-forwarded-for as a remote_addr

Upstream-Ref: fluent/fluent-bit@8b5e517
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: in_splunk: Add a remote_addr extraction case

Upstream-Ref: fluent/fluent-bit@0192ac7
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: internal: aws: switch AWS Endpoints for

Upstream-Ref: fluent/fluent-bit@4a3b205
Cherry-picked from Fluent Bit v4.2.4

* [upstream] aws: addtional changes mentioned by coderabbit

Upstream-Ref: fluent/fluent-bit@0915933
Cherry-picked from Fluent Bit v4.2.4

* [upstream] plugin_proxy: enable event_type specification for

Upstream-Ref: fluent/fluent-bit@a36b225
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_splunk: Plug memory issues

Upstream-Ref: fluent/fluent-bit@653f174
Cherry-picked from Fluent Bit v4.2.4

* [upstream] filter_kubernetes: Prevent backtrack for extracting

Upstream-Ref: fluent/fluent-bit@551ab40
Cherry-picked from Fluent Bit v4.2.4

* [upstream] multiline: ml: Propagate metadata even if on

Upstream-Ref: fluent/fluent-bit@6fd9e11
Cherry-picked from Fluent Bit v4.2.4

* [upstream] multiline: ml: Plug memory errors

Upstream-Ref: fluent/fluent-bit@eea548a
Cherry-picked from Fluent Bit v4.2.4

* [upstream] multiline: ml_stream: Clean up stream's metadata

Upstream-Ref: fluent/fluent-bit@0694882
Cherry-picked from Fluent Bit v4.2.4

* [upstream] multiline: ml: Make funtions for metadata operations

Upstream-Ref: fluent/fluent-bit@3770881
Cherry-picked from Fluent Bit v4.2.4

* [upstream] filter_log_to_metrics: Use pre-allocated slots of

Upstream-Ref: fluent/fluent-bit@00fa39d
Cherry-picked from Fluent Bit v4.2.4

* [upstream] processor_content_modifier: free autogenerated OTEL

Upstream-Ref: fluent/fluent-bit@2fdd547
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: runtime: processor_content_modifier: OTEL

Upstream-Ref: fluent/fluent-bit@a9948ee
Cherry-picked from Fluent Bit v4.2.4

* [upstream] http_server: enforce buffer_max_size for HTTP/2

Upstream-Ref: fluent/fluent-bit@af48eee
Cherry-picked from Fluent Bit v4.2.4

* [upstream] in_elasticsearch: fix missing var initialization

Upstream-Ref: fluent/fluent-bit@0c7d9e2
Cherry-picked from Fluent Bit v4.2.4

* [upstream] http_server: http2: fix return value on NULL server

Upstream-Ref: fluent/fluent-bit@095666f
Cherry-picked from Fluent Bit v4.2.4

* [upstream] avro: out_kafka: fix a bug in avro schema_id

Upstream-Ref: fluent/fluent-bit@74f0bdd
Cherry-picked from Fluent Bit v4.2.4

* [upstream] avro: Fix specification errors

Upstream-Ref: fluent/fluent-bit@dff045e
Cherry-picked from Fluent Bit v4.2.4

* [upstream] out_kafka: Fix glitched width of overhead

Upstream-Ref: fluent/fluent-bit@a69c89d
Cherry-picked from Fluent Bit v4.2.4

* [upstream] build: Set without test building forcibly for jansson

Upstream-Ref: fluent/fluent-bit@3444cf0
Cherry-picked from Fluent Bit v4.2.4

* [upstream] lib: monkey: upgrade to v1.8.8

Upstream-Ref: fluent/fluent-bit@c0cbc1e
Cherry-picked from Fluent Bit v4.2.4

* [upstream] output: persist route-effective metrics on flush

Upstream-Ref: fluent/fluent-bit@4e0c10b
Cherry-picked from Fluent Bit v4.2.4

* [upstream] engine: use route-effective counts for output metrics

Upstream-Ref: fluent/fluent-bit@dde4a28
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: runtime: add output processor drop counter

Upstream-Ref: fluent/fluent-bit@cd513fa
Cherry-picked from Fluent Bit v4.2.4

* [upstream] tests: runtime: fix output processor counter

Upstream-Ref: fluent/fluent-bit@d1f039e
Cherry-picked from Fluent Bit v4.2.4

* chore: update upstream version to v4.2.4

Synced patches from Fluent Bit v4.1.0 to v4.2.4

* chore: update copyright to include 2026 end date

Signed-off-by: Patrick Stephens <pat@telemetryforge.io>

* chore: update copyright to include 2026 end date

Signed-off-by: Patrick Stephens <pat@telemetryforge.io>

* feat: manual review and update of missing changes

Signed-off-by: Patrick Stephens <pat@telemetryforge.io>

* fix: add ignored files

Signed-off-by: Patrick Stephens <pat@telemetryforge.io>

* fix: add missing file

Signed-off-by: Patrick Stephens <pat@telemetryforge.io>

* fix: add missing files

Signed-off-by: Patrick Stephens <pat@telemetryforge.io>

* feat: manual review and update of missing changes

Signed-off-by: Patrick Stephens <pat@telemetryforge.io>

* feat: manual review and update of missing changes

Signed-off-by: Patrick Stephens <pat@telemetryforge.io>

* revert: flb_cf_yaml.c take upstream

Signed-off-by: Patrick Stephens <pat@telemetryforge.io>

* fix: include changes from fluent/fluent-bit#11614

Signed-off-by: Patrick Stephens <pat@telemetryforge.io>

* fix: update port used in parallel for otel routing

Signed-off-by: Patrick Stephens <pat@telemetryforge.io>

---------

Signed-off-by: Patrick Stephens <pat@telemetryforge.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants