danielealbano / cachegrand

cachegrand - a modern data ingestion, processing and serving platform built for today's hardware
BSD 3-Clause "New" or "Revised" License
975 stars 34 forks source link

Start epoch gc before module workers #261

Closed danielealbano closed 1 year ago

danielealbano commented 1 year ago

This PR modifies the workflow used to start cachegrand to bootstrap the epoch gc workers in program.c.

For each object type a new worker is started, to take care of a specific object type to collect up the staged object when possible.

The context of these workers is stored in program_context_t, which is defined in program.h, therefore plenty of unit are updated, as part of the PR, to include new headers:

codecov[bot] commented 1 year ago

Codecov Report

Base: 82.47% // Head: 82.36% // Decreases project coverage by -0.11% :warning:

Coverage data is based on head (2e2a079) compared to base (f340fba). Patch coverage: 54.05% of modified lines in pull request are covered.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #261 +/- ## ========================================== - Coverage 82.47% 82.36% -0.11% ========================================== Files 157 157 Lines 9758 9795 +37 ========================================== + Hits 8047 8067 +20 - Misses 1711 1728 +17 ``` | Flag | Coverage Δ | | |---|---|---| | unittests | `82.36% <54.05%> (-0.11%)` | :arrow_down: | Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Daniele+Salvatore+Albano#carryforward-flags-in-the-pull-request-comment) to find out more. | [Impacted Files](https://codecov.io/gh/danielealbano/cachegrand/pull/261?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Daniele+Salvatore+Albano) | Coverage Δ | | |---|---|---| | [...unded\_queue\_spsc/ring\_bounded\_queue\_spsc\_generic.h](https://codecov.io/gh/danielealbano/cachegrand/pull/261/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Daniele+Salvatore+Albano#diff-c3JjL2RhdGFfc3RydWN0dXJlcy9yaW5nX2JvdW5kZWRfcXVldWVfc3BzYy9yaW5nX2JvdW5kZWRfcXVldWVfc3BzY19nZW5lcmljLmg=) | `98.39% <ø> (ø)` | | | [src/module/prometheus/module\_prometheus.c](https://codecov.io/gh/danielealbano/cachegrand/pull/261/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Daniele+Salvatore+Albano#diff-c3JjL21vZHVsZS9wcm9tZXRoZXVzL21vZHVsZV9wcm9tZXRoZXVzLmM=) | `91.67% <ø> (ø)` | | | [src/worker/worker\_stats.c](https://codecov.io/gh/danielealbano/cachegrand/pull/261/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Daniele+Salvatore+Albano#diff-c3JjL3dvcmtlci93b3JrZXJfc3RhdHMuYw==) | `100.00% <ø> (ø)` | | | [src/program.c](https://codecov.io/gh/danielealbano/cachegrand/pull/261/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Daniele+Salvatore+Albano#diff-c3JjL3Byb2dyYW0uYw==) | `30.37% <54.05%> (+3.03%)` | :arrow_up: | Help us with your feedback. Take ten seconds to tell us [how you rate us](https://about.codecov.io/nps?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Daniele+Salvatore+Albano). Have a feature suggestion? [Share it here.](https://app.codecov.io/gh/feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Daniele+Salvatore+Albano)

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.