Skip to content

Conversation

@philrhurst
Copy link
Owner

No description provided.

andrewlecuyer and others added 30 commits February 7, 2025 09:18
A new condition has been created to surface controller and node
resize error condition details in the PostgresCluster status.  This
also allows an exclude rule for the linter to be removed.
Co-authored-by: Benjamin Blattberg <ben.blattberg@crunchydata.com>
Co-authored-by: Drew Sessler <drew.sessler@crunchydata.com>
Co-authored-by: Tony Landreth <tony.landreth@crunchydata.com>
A generator converts YAML with comments to JSON to avoid errors at
runtime and comments in the binary.

Co-authored-by: Chris Bandy <chris.bandy@crunchydata.com>
Issue: PGO-2054
Postgres can log in two structured formats: CSV and JSON since Postgres 15.
The two formats are very similar semantically, so this parses them in a
shared OTTL transform processor.

Co-authored-by: Chris Bandy <chris.bandy@crunchydata.com>
Issue: PGO-2033
Issue: PGO-2065
Issue: PGO-2059
Collect JSON-formatted logs from pgAdmin when the feature gate is enabled.

Issue: PGO-2057
This strips comments and formatting from SQL files. It might be useful,
and we already have the necessary dependencies.
In testing, we found that a running pgbackrest container wouldn't
get the permissions adjusted with a mkdir; so we're switching to
an install for now.
The type existed to avoid schema repetition with controller-gen, but
recent versions can do that using aliases. This eliminates the need for
some conversions.
… exporters via API and add them to logs pipelines.
…pgadmin log transform. Move log message to body.
* Add configurable collector

* Add RELATED_IMAGE_ var
* Add func to pull image from spec or env
* verify image update

Issues: [PGO-2167]
This prevents log records from being emitted multiple times.
The `install` command only sets permissions on the final directory.
The `install` command only sets permissions on the final directory.
The Kubernetes "duration" format is similar to RFC 3339 and time.Duration
but also handles days and weeks.

Issue: PGO-2197
Defaults to 1 day when no retention is set.

Issue: PGO-2169
This adds validation to the recurring pattern of selecting a single
value from a Secret. Note that the "name" field is now required.

Secrets are best mounted as files, and the logic for translating these
references into volume projections is now consolidated in two exported
methods.
This also enables the PGUpgradeCPUConcurrency feature by default.
Users may set PGUpgrade.spec.jobs to disable that behavior case by case.

Issue: PGO-2022
Resolves: #4039
The validation rules of Kubernetes 1.29 (Beta in 1.25) allow for this
kind of field.

Issue: PGO-313
Adds OTel metrics for Postgres

Issue: PGO-2036
dsessler7 and others added 11 commits February 24, 2025 10:19
The "sigs.k8s.io/yaml" package alone does not produce the same results
as the Kubernetes API. This new function produces the same results and
uses type parameters to accept input as a string or byte slice.
…file regardless of whether the user has set any logging settings in the spec.
This field is optional, but the struct always includes it in YAML output.
The controller assigned mandatory and default values but did nothing
with values defined in the spec.

The patroni.DynamicConfiguration function was interpreting its
schemaless fields while also combining Postgres parameters from
elsewhere. Its tests were long and complicated.

 1. Postgres parameters are now extracted from the schemaless Patroni
    field in their own function with its own tests. Unusual types are
    handled more deliberately.

 2. The PostgresCluster controller now creates a single set of Postgres
    parameters based on all the fields of the PostgresCluster spec.

 3. The DynamicConfiguration function is simpler (44 lines, 30% smaller)
    and easier to test.
Refactor logrotate config creation.
Refactor logic around adding collector to postgres instance pod.
Use metav1.Duration in helper functions to avoid error handling.
Issue: CVE-2025-22868
Issue: CVE-2025-22869
Issue: GO-2025-3487
Issue: GO-2025-3488
* Rotate pgbackrest logs in repohost and Postgres pod
* Dir creation in collector startup

Issues: [PGO-2171]
@philrhurst philrhurst merged commit d8171d3 into philrhurst:dev Mar 3, 2025
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.

6 participants