Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,11 @@ All notable changes to this project will be documented in this file.
- Add `ZOOCFGDIR` env var to `/stackable/rwconfig` to improve shell script usage like `zkCleanup.sh` ([#988]).
- Support objectOverrides using `.spec.objectOverrides`.
See [objectOverrides concepts page](https://docs.stackable.tech/home/nightly/concepts/overrides/#object-overrides) for details ([#987]).
- Enable the [restart-controller](https://docs.stackable.tech/home/nightly/commons-operator/restarter/), so that the Pods are automatically restarted on config changes ([#999]).

[#987]: https://github.com/stackabletech/zookeeper-operator/pull/987
[#988]: https://github.com/stackabletech/zookeeper-operator/pull/988
[#999]: https://github.com/stackabletech/zookeeper-operator/pull/999

## [25.11.0] - 2025-11-07

Expand Down
12 changes: 8 additions & 4 deletions rust/operator-binary/src/zk_controller.rs
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ use stackable_operator::{
core::{DeserializeGuard, error_boundary},
runtime::controller,
},
kvp::{LabelError, Labels},
kvp::{Label, LabelError, Labels},
logging::controller::ReconcilerError,
product_config_utils::{transform_all_roles_to_config, validate_all_roles_and_groups_config},
product_logging::{
Expand Down Expand Up @@ -486,6 +486,9 @@ pub async fn reconcile_zk(
rolegroup: rolegroup.clone(),
})?;

// Note: The StatefulSet needs to be applied after all ConfigMaps and Secrets it mounts
// to prevent unnecessary Pod restarts.
// See https://github.com/stackabletech/commons-operator/issues/111 for details.
ss_cond_builder.add(
cluster_resources
.add(client, rg_statefulset)
Expand Down Expand Up @@ -1019,10 +1022,11 @@ fn build_server_rolegroup_statefulset(
&rolegroup_ref.role,
&rolegroup_ref.role_group,
))
// The initial restart muddles up the integration tests. This can be re-enabled as soon
// as https://github.com/stackabletech/commons-operator/issues/111 is implemented.
// .with_label("restarter.stackable.tech/enabled", "true")
.context(ObjectMetaSnafu)?
.with_label(
Label::try_from(("restarter.stackable.tech/enabled", "true"))
.expect("static label is always valid"),
)
.build();

let statefulset_match_labels =
Expand Down
1 change: 1 addition & 0 deletions tests/templates/kuttl/smoke/10-assert.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ apiVersion: apps/v1
kind: StatefulSet
metadata:
name: test-zk-server-primary
generation: 1 # There should be no unneeded Pod restarts
spec:
template:
spec:
Expand Down