From 54aad69c3bb05efa4099b5e6197f4e645c9ff6c0 Mon Sep 17 00:00:00 2001 From: Malte Sander Date: Wed, 13 Nov 2024 15:39:20 +0100 Subject: [PATCH 1/6] do not default in compute_files, default via product config --- deploy/config-spec/properties.yaml | 8 ++++---- rust/crd/src/lib.rs | 10 +--------- 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/deploy/config-spec/properties.yaml b/deploy/config-spec/properties.yaml index 2dc4b619..7ac88e53 100644 --- a/deploy/config-spec/properties.yaml +++ b/deploy/config-spec/properties.yaml @@ -213,14 +213,14 @@ properties: type: "string" defaultValues: - fromVersion: "0.0.0" - value: "${hbase.tmp.dir}/hbase" + value: "/hbase" roles: - name: "master" - required: false + required: true # TODO: this could be false? - name: "regionserver" - required: false + required: true - name: "restserver" - required: false + required: true # TODO: this could be false? asOfVersion: "0.0.0" description: "The directory shared by region servers and into which HBase persists. The URL should be 'fully-qualified' to include the filesystem scheme. For example, to specify the HDFS directory '/hbase' where the HDFS instance's namenode is running at namenode.example.org on port 9000, set this value to: hdfs://namenode.example.org:9000/hbase. By default, we write to whatever ${hbase.tmp.dir} is set too -- usually /tmp -- so change this configuration or else all data will be lost on machine restart." diff --git a/rust/crd/src/lib.rs b/rust/crd/src/lib.rs index 43572e26..8c1c4685 100644 --- a/rust/crd/src/lib.rs +++ b/rust/crd/src/lib.rs @@ -473,15 +473,7 @@ impl Configuration for HbaseConfigFragment { HBASE_UNSAFE_REGIONSERVER_HOSTNAME_DISABLE_MASTER_REVERSEDNS.to_string(), Some("true".to_string()), ); - result.insert( - HBASE_ROOTDIR.to_string(), - Some( - self.hbase_rootdir - .as_deref() - .unwrap_or(HBASE_ROOT_DIR_DEFAULT) - .to_string(), - ), - ); + result.insert(HBASE_ROOTDIR.to_string(), self.hbase_rootdir.clone()); } _ => {} } From f671312bf701c718c148e395d452ef525f7b34bf Mon Sep 17 00:00:00 2001 From: Malte Sander Date: Wed, 13 Nov 2024 15:42:59 +0100 Subject: [PATCH 2/6] adapted changelog --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a6fb6ed..c9c1bdf4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ - Reduce CRD size from `1.4MB` to `96KB` by accepting arbitrary YAML input instead of the underlying schema for the following fields ([#548]): - `podOverrides` - `affinity` +- Fix bug where the configuration of the `hbaseRootdir` at the role level is ignored ([#584]). ### Fixed @@ -28,6 +29,7 @@ [#556]: https://github.com/stackabletech/hbase-operator/pull/556 [#558]: https://github.com/stackabletech/hbase-operator/pull/558 [#574]: https://github.com/stackabletech/hbase-operator/pull/574 +[#584]: https://github.com/stackabletech/hbase-operator/pull/584 ## [24.7.0] - 2024-07-24 From 68fce2af62c47ce7a69bfbd9cf7929082b53fce3 Mon Sep 17 00:00:00 2001 From: Malte Sander Date: Wed, 13 Nov 2024 15:45:30 +0100 Subject: [PATCH 3/6] regenerated charts --- deploy/helm/hbase-operator/configs/properties.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/deploy/helm/hbase-operator/configs/properties.yaml b/deploy/helm/hbase-operator/configs/properties.yaml index 2dc4b619..7ac88e53 100644 --- a/deploy/helm/hbase-operator/configs/properties.yaml +++ b/deploy/helm/hbase-operator/configs/properties.yaml @@ -213,14 +213,14 @@ properties: type: "string" defaultValues: - fromVersion: "0.0.0" - value: "${hbase.tmp.dir}/hbase" + value: "/hbase" roles: - name: "master" - required: false + required: true # TODO: this could be false? - name: "regionserver" - required: false + required: true - name: "restserver" - required: false + required: true # TODO: this could be false? asOfVersion: "0.0.0" description: "The directory shared by region servers and into which HBase persists. The URL should be 'fully-qualified' to include the filesystem scheme. For example, to specify the HDFS directory '/hbase' where the HDFS instance's namenode is running at namenode.example.org on port 9000, set this value to: hdfs://namenode.example.org:9000/hbase. By default, we write to whatever ${hbase.tmp.dir} is set too -- usually /tmp -- so change this configuration or else all data will be lost on machine restart." From 28b556c67c3a633be8f1b6d088783471a7d412fc Mon Sep 17 00:00:00 2001 From: Malte Sander Date: Fri, 15 Nov 2024 13:36:06 +0100 Subject: [PATCH 4/6] remove HBASE_ROOT_DIR_DEFAULT --- rust/crd/src/lib.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/rust/crd/src/lib.rs b/rust/crd/src/lib.rs index 8c1c4685..590d550d 100644 --- a/rust/crd/src/lib.rs +++ b/rust/crd/src/lib.rs @@ -59,7 +59,6 @@ pub const HBASE_ROOTDIR: &str = "hbase.rootdir"; pub const HBASE_UNSAFE_REGIONSERVER_HOSTNAME_DISABLE_MASTER_REVERSEDNS: &str = "hbase.unsafe.regionserver.hostname.disable.master.reversedns"; pub const HBASE_HEAPSIZE: &str = "HBASE_HEAPSIZE"; -pub const HBASE_ROOT_DIR_DEFAULT: &str = "/hbase"; pub const HBASE_UI_PORT_NAME_HTTP: &str = "ui-http"; pub const HBASE_UI_PORT_NAME_HTTPS: &str = "ui-https"; From 1095505a4371acfaa0c2b9adbabf825c3f90ee6a Mon Sep 17 00:00:00 2001 From: Malte Sander Date: Fri, 15 Nov 2024 15:21:26 +0100 Subject: [PATCH 5/6] adapt comments --- deploy/config-spec/properties.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/deploy/config-spec/properties.yaml b/deploy/config-spec/properties.yaml index 7ac88e53..c3840065 100644 --- a/deploy/config-spec/properties.yaml +++ b/deploy/config-spec/properties.yaml @@ -216,11 +216,11 @@ properties: value: "/hbase" roles: - name: "master" - required: true # TODO: this could be false? - - name: "regionserver" required: true + - name: "regionserver" + required: true # this can be false (only required for master) - kept for compatibility (avoid restarts) - name: "restserver" - required: true # TODO: this could be false? + required: true # this can be false (only required for master) - kept for compatibility (avoid restarts) asOfVersion: "0.0.0" description: "The directory shared by region servers and into which HBase persists. The URL should be 'fully-qualified' to include the filesystem scheme. For example, to specify the HDFS directory '/hbase' where the HDFS instance's namenode is running at namenode.example.org on port 9000, set this value to: hdfs://namenode.example.org:9000/hbase. By default, we write to whatever ${hbase.tmp.dir} is set too -- usually /tmp -- so change this configuration or else all data will be lost on machine restart." From 1d8634e88325637640bef3ebe3565a4b58ba00f0 Mon Sep 17 00:00:00 2001 From: Malte Sander Date: Fri, 15 Nov 2024 15:23:02 +0100 Subject: [PATCH 6/6] regernated charts --- deploy/helm/hbase-operator/configs/properties.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/deploy/helm/hbase-operator/configs/properties.yaml b/deploy/helm/hbase-operator/configs/properties.yaml index 7ac88e53..c3840065 100644 --- a/deploy/helm/hbase-operator/configs/properties.yaml +++ b/deploy/helm/hbase-operator/configs/properties.yaml @@ -216,11 +216,11 @@ properties: value: "/hbase" roles: - name: "master" - required: true # TODO: this could be false? - - name: "regionserver" required: true + - name: "regionserver" + required: true # this can be false (only required for master) - kept for compatibility (avoid restarts) - name: "restserver" - required: true # TODO: this could be false? + required: true # this can be false (only required for master) - kept for compatibility (avoid restarts) asOfVersion: "0.0.0" description: "The directory shared by region servers and into which HBase persists. The URL should be 'fully-qualified' to include the filesystem scheme. For example, to specify the HDFS directory '/hbase' where the HDFS instance's namenode is running at namenode.example.org on port 9000, set this value to: hdfs://namenode.example.org:9000/hbase. By default, we write to whatever ${hbase.tmp.dir} is set too -- usually /tmp -- so change this configuration or else all data will be lost on machine restart."