source commons files source engines files source kubeblocks files source kubedb files CLUSTER_NAME: kbcli is detected: /usr/local/bin/kbcli Kubernetes Env: v1.30.4-vke.4 check snapshot controller check snapshot controller done vke kb-default-sc found vke default-vsc found POD_RESOURCES: No resources found found default storage class: ebs-ssd KubeBlocks version is:1.0.2 skip upgrade KubeBlocks current KubeBlocks version: 1.0.2 helm repo chaos-mesh https://charts.chaos-mesh.org exists chaos mesh already installed check component definition set component name:oracle set component version set component version:oracle set service versions:23.6.0,12.2.0 set service versions sorted:12.2.0,23.6.0 set oracle component definition set oracle component definition oracle-12c-1.0.0-alpha.0 REPORT_COUNT 0: 0 set replicas first:2,12.2.0 set replicas third:2,12.2.0 set replicas fourth:2,12.2.0 set minimum cmpv service version set minimum cmpv service version replicas:2,12.2.0 set replicas end:2,12.2.0 REPORT_COUNT:1 CLUSTER_TOPOLOGY:replication cluster definition topology: standalone replication topology replication found in cluster definition oracle set oracle component definition set oracle component definition oracle-23ai-1.0.0-alpha.0 LIMIT_CPU:3 LIMIT_MEMORY:8 storage size: 20 CLUSTER_NAME:oracle-mxdgjj No resources found in default namespace. pod_info: termination_policy:WipeOut create 2 replica WipeOut oracle cluster check component definition set component definition by component version check cmpd by labels set component definition1: oracle-12c-1.0.0-alpha.0 by component version:oracle apiVersion: apps.kubeblocks.io/v1 kind: Cluster metadata: name: oracle-mxdgjj namespace: default spec: clusterDef: oracle topology: replication terminationPolicy: WipeOut componentSpecs: - name: oracle replicas: 2 serviceVersion: 12.2.0 disableExporter: false resources: requests: cpu: 3000m memory: 8Gi limits: cpu: 3000m memory: 8Gi volumeClaimTemplates: - name: data spec: accessModes: - ReadWriteOnce resources: requests: storage: 20Gi - name: fra spec: accessModes: - ReadWriteOnce resources: requests: storage: 20Gi - name: observer replicas: 1 serviceVersion: 12.2.0 resources: requests: cpu: 500m memory: 0.5Gi limits: cpu: 500m memory: 0.5Gi `kubectl apply -f test_create_oracle-mxdgjj.yaml` cluster.apps.kubeblocks.io/oracle-mxdgjj created apply test_create_oracle-mxdgjj.yaml Success `rm -rf test_create_oracle-mxdgjj.yaml` check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Creating Feb 12,2026 15:26 UTC+0800 clusterdefinition.kubeblocks.io/name=oracle cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Creating cluster_status:Updating cluster_status:Updating cluster_status:Updating check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:26 UTC+0800 fra:20Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 15:29 UTC+0800 fra:20Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-0;secondary: oracle-mxdgjj-oracle-1 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check cluster connect done `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: check pod oracle-mxdgjj-oracle-0 container_name oracle exist password V122u2Z62JJ! check pod oracle-mxdgjj-oracle-0 container_name exporter exist password V122u2Z62JJ! check pod oracle-mxdgjj-oracle-0 container_name kbagent exist password V122u2Z62JJ! check pod oracle-mxdgjj-oracle-0 container_name config-manager exist password V122u2Z62JJ! No container logs contain secret password. describe cluster `kbcli cluster describe oracle-mxdgjj --namespace default ` Name: oracle-mxdgjj Created Time: Feb 12,2026 15:26 UTC+0800 NAMESPACE CLUSTER-DEFINITION TOPOLOGY STATUS TERMINATION-POLICY default oracle replication Running WipeOut Endpoints: COMPONENT INTERNAL EXTERNAL oracle oracle-mxdgjj-oracle.default.svc.cluster.local:1521 oracle-mxdgjj-oracle.default.svc.cluster.local:5500 Topology: COMPONENT SERVICE-VERSION INSTANCE ROLE STATUS AZ NODE CREATED-TIME observer 12.2.0 oracle-mxdgjj-observer-0 Running cn-guangzhou-b 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle 12.2.0 oracle-mxdgjj-oracle-0 primary Running cn-guangzhou-b 192.168.0.200/192.168.0.200 Feb 12,2026 15:26 UTC+0800 oracle 12.2.0 oracle-mxdgjj-oracle-1 secondary Running cn-guangzhou-b 192.168.0.199/192.168.0.199 Feb 12,2026 15:29 UTC+0800 Resources Allocation: COMPONENT INSTANCE-TEMPLATE CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE-SIZE STORAGE-CLASS oracle 3 / 3 8Gi / 8Gi data:20Gi ebs-ssd fra:20Gi ebs-ssd observer 500m / 500m 512Mi / 512Mi Images: COMPONENT COMPONENT-DEFINITION IMAGE oracle oracle-12c-1.0.0-alpha.0 apecloud-registry.cn-zhangjiakou.cr.aliyuncs.com/apecloud/oracle:12.2.0.1-ee apecloud-registry.cn-zhangjiakou.cr.aliyuncs.com/apecloud/observability-exporter:2.2.0 observer oracle-observer-12c-1.0.0-alpha.0 apecloud-registry.cn-zhangjiakou.cr.aliyuncs.com/apecloud/oracle:12.2.0.1-ee Data Protection: BACKUP-REPO AUTO-BACKUP BACKUP-SCHEDULE BACKUP-METHOD BACKUP-RETENTION RECOVERABLE-TIME Show cluster events: kbcli cluster list-events -n default oracle-mxdgjj `kbcli cluster label oracle-mxdgjj app.kubernetes.io/instance- --namespace default ` label "app.kubernetes.io/instance" not found. `kbcli cluster label oracle-mxdgjj app.kubernetes.io/instance=oracle-mxdgjj --namespace default ` `kbcli cluster label oracle-mxdgjj --list --namespace default ` NAME NAMESPACE LABELS oracle-mxdgjj default app.kubernetes.io/instance=oracle-mxdgjj clusterdefinition.kubeblocks.io/name=oracle label cluster app.kubernetes.io/instance=oracle-mxdgjj Success `kbcli cluster label case.name=kbcli.test1 -l app.kubernetes.io/instance=oracle-mxdgjj --namespace default ` `kbcli cluster label oracle-mxdgjj --list --namespace default ` NAME NAMESPACE LABELS oracle-mxdgjj default app.kubernetes.io/instance=oracle-mxdgjj case.name=kbcli.test1 clusterdefinition.kubeblocks.io/name=oracle label cluster case.name=kbcli.test1 Success `kbcli cluster label oracle-mxdgjj case.name=kbcli.test2 --overwrite --namespace default ` `kbcli cluster label oracle-mxdgjj --list --namespace default ` NAME NAMESPACE LABELS oracle-mxdgjj default app.kubernetes.io/instance=oracle-mxdgjj case.name=kbcli.test2 clusterdefinition.kubeblocks.io/name=oracle label cluster case.name=kbcli.test2 Success `kbcli cluster label oracle-mxdgjj case.name- --namespace default ` `kbcli cluster label oracle-mxdgjj --list --namespace default ` NAME NAMESPACE LABELS oracle-mxdgjj default app.kubernetes.io/instance=oracle-mxdgjj clusterdefinition.kubeblocks.io/name=oracle delete cluster label case.name Success cluster connect `echo "echo \"select INSTANCE_NUMBER,INSTANCE_NAME,HOST_NAME,STATUS,DATABASE_STATUS,INSTANCE_ROLE,DATABASE_TYPE from v\\$instance;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` Defaulted container "oracle" out of: oracle, exporter, kbagent, config-manager, oracle-init-container (init), init-kbagent (init), kbagent-worker (init), install-config-manager-tool (init) Unable to use a TTY - input is not a terminal or the right kind of file INSTANCE_NUMBER INSTANCE_NAME --------------- ---------------- HOST_NAME STATUS ---------------------------------------------------------------- ------------ DATABASE_STATUS INSTANCE_ROLE DATABASE_TYPE ----------------- ------------------ --------------- 1 ORCLCDB oracle-mxdgjj-oracle-0 OPEN ACTIVE PRIMARY_INSTANCE SINGLE connect cluster Success insert batch data by db client error: error from server (NotFound): pods "test-db-client-executionloop-oracle-mxdgjj" not found in namespace "default" `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge pods test-db-client-executionloop-oracle-mxdgjj --namespace default ` Error from server (NotFound): pods "test-db-client-executionloop-oracle-mxdgjj" not found Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. Error from server (NotFound): pods "test-db-client-executionloop-oracle-mxdgjj" not found `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: apiVersion: v1 kind: Pod metadata: name: test-db-client-executionloop-oracle-mxdgjj namespace: default spec: containers: - name: test-dbclient imagePullPolicy: IfNotPresent image: apecloud-registry.cn-zhangjiakou.cr.aliyuncs.com/apecloud/dbclient:test args: - "--host" - "oracle-mxdgjj-oracle.default.svc.cluster.local" - "--user" - "sys" - "--password" - "V122u2Z62JJ!" - "--port" - "1521" - "--dbtype" - "oracle" - "--test" - "executionloop" - "--duration" - "60" - "--interval" - "1" restartPolicy: Never `kubectl apply -f test-db-client-executionloop-oracle-mxdgjj.yaml` pod/test-db-client-executionloop-oracle-mxdgjj created apply test-db-client-executionloop-oracle-mxdgjj.yaml Success `rm -rf test-db-client-executionloop-oracle-mxdgjj.yaml` check pod status pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 1/1 Running 0 5s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 1/1 Running 0 9s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 1/1 Running 0 14s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 1/1 Running 0 19s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 1/1 Running 0 24s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 1/1 Running 0 30s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 1/1 Running 0 35s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 1/1 Running 0 40s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 1/1 Running 0 45s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 1/1 Running 0 50s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 1/1 Running 0 56s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 1/1 Running 0 61s check pod test-db-client-executionloop-oracle-mxdgjj status done pod_status:NAME READY STATUS RESTARTS AGE test-db-client-executionloop-oracle-mxdgjj 0/1 Completed 0 66s check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Running Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:26 UTC+0800 fra:20Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 15:29 UTC+0800 fra:20Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-0;secondary: oracle-mxdgjj-oracle-1 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check cluster connect done The connection was restored in 1026 milliseconds. [ 20s ] executions total: 3618 successful: 3598 failed: 20 disconnect: 12 [2026-02-12 07:40:24.103] Connection error occurred! [2026-02-12 07:40:24.103] Connection error occurred! [2026-02-12 07:40:25.130] Connection successfully recovered! The connection was restored in 1027 milliseconds. [ 21s ] executions total: 3919 successful: 3898 failed: 21 disconnect: 13 [2026-02-12 07:40:25.723] Connection error occurred! [ 22s ] executions total: 4220 successful: 4197 failed: 23 disconnect: 14 [ 23s ] executions total: 4221 successful: 4197 failed: 24 disconnect: 14 [2026-02-12 07:40:25.723] Connection error occurred! [2026-02-12 07:40:28.801] Connection successfully recovered! The connection was restored in 3078 milliseconds. [ 24s ] executions total: 4222 successful: 4198 failed: 24 disconnect: 14 [2026-02-12 07:40:29.402] Connection error occurred! [ 25s ] executions total: 4523 successful: 4497 failed: 26 disconnect: 15 [ 26s ] executions total: 4524 successful: 4497 failed: 27 disconnect: 15 [ 27s ] executions total: 4525 successful: 4497 failed: 28 disconnect: 15 [ 28s ] executions total: 4526 successful: 4497 failed: 29 disconnect: 15 [2026-02-12 07:40:29.402] Connection error occurred! [2026-02-12 07:40:34.520] Connection successfully recovered! The connection was restored in 5118 milliseconds. [ 29s ] executions total: 4527 successful: 4498 failed: 29 disconnect: 15 [2026-02-12 07:40:35.112] Connection error occurred! [2026-02-12 07:40:35.112] Connection error occurred! [2026-02-12 07:40:36.137] Connection successfully recovered! The connection was restored in 1025 milliseconds. [ 30s ] executions total: 4828 successful: 4798 failed: 30 disconnect: 16 [2026-02-12 07:40:36.755] Connection error occurred! [2026-02-12 07:40:36.755] Connection error occurred! [2026-02-12 07:40:37.781] Connection successfully recovered! The connection was restored in 1026 milliseconds. [ 31s ] executions total: 5129 successful: 5098 failed: 31 disconnect: 17 [2026-02-12 07:40:38.383] Connection error occurred! [2026-02-12 07:40:38.383] Connection error occurred! [2026-02-12 07:40:39.443] Connection successfully recovered! The connection was restored in 1060 milliseconds. [ 32s ] executions total: 5430 successful: 5398 failed: 32 disconnect: 18 [2026-02-12 07:40:40.036] Connection error occurred! [2026-02-12 07:40:40.036] Connection error occurred! [2026-02-12 07:40:41.062] Connection successfully recovered! The connection was restored in 1026 milliseconds. [ 33s ] executions total: 5729 successful: 5696 failed: 33 disconnect: 19 [2026-02-12 07:40:41.988] Connection error occurred! [2026-02-12 07:40:41.988] Connection error occurred! [2026-02-12 07:40:43.032] Connection successfully recovered! The connection was restored in 1044 milliseconds. [ 34s ] executions total: 6030 successful: 5996 failed: 34 disconnect: 20 [ 35s ] executions total: 6167 successful: 6133 failed: 34 disconnect: 20 [2026-02-12 07:40:44.348] Connection error occurred! [2026-02-12 07:40:44.348] Connection error occurred! [2026-02-12 07:40:45.400] Connection successfully recovered! The connection was restored in 1052 milliseconds. [ 36s ] executions total: 6329 successful: 6294 failed: 35 disconnect: 21 [2026-02-12 07:40:45.964] Connection error occurred! [2026-02-12 07:40:45.964] Connection error occurred! [2026-02-12 07:40:46.990] Connection successfully recovered! The connection was restored in 1026 milliseconds. [ 37s ] executions total: 6628 successful: 6592 failed: 36 disconnect: 22 [2026-02-12 07:40:47.571] Connection error occurred! [ 38s ] executions total: 6929 successful: 6891 failed: 38 disconnect: 23 [2026-02-12 07:40:47.571] Connection error occurred! [2026-02-12 07:40:49.622] Connection successfully recovered! The connection was restored in 2051 milliseconds. [ 39s ] executions total: 6930 successful: 6892 failed: 38 disconnect: 23 [2026-02-12 07:40:50.197] Connection error occurred! [ 40s ] executions total: 7231 successful: 7191 failed: 40 disconnect: 24 [2026-02-12 07:40:50.197] Connection error occurred! [2026-02-12 07:40:52.351] Connection successfully recovered! The connection was restored in 2154 milliseconds. [ 41s ] executions total: 7232 successful: 7192 failed: 40 disconnect: 24 [2026-02-12 07:40:53.082] Connection error occurred! [2026-02-12 07:40:53.082] Connection error occurred! [2026-02-12 07:40:54.133] Connection successfully recovered! The connection was restored in 1051 milliseconds. [ 42s ] executions total: 7531 successful: 7490 failed: 41 disconnect: 25 [2026-02-12 07:40:54.721] Connection error occurred! [2026-02-12 07:40:54.721] Connection error occurred! [2026-02-12 07:40:55.747] Connection successfully recovered! The connection was restored in 1026 milliseconds. [ 60s ] executions total: 7830 successful: 7788 failed: 42 disconnect: 26 Test Result: Total Executions: 7830 Successful Executions: 7788 Failed Executions: 42 Disconnection Counts: 26 Connection Information: Database Type: oracle Host: oracle-mxdgjj-oracle.default.svc.cluster.local Port: 1521 Database: Table: User: sys Org: Access Mode: mysql Test Type: executionloop Query: Duration: 60 seconds Interval: 1 seconds DB_CLIENT_BATCH_DATA_COUNT: 7788 `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge pods test-db-client-executionloop-oracle-mxdgjj --namespace default ` pod/test-db-client-executionloop-oracle-mxdgjj patched (no change) Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. pod "test-db-client-executionloop-oracle-mxdgjj" force deleted test failover networkduplicate check cluster status before cluster-failover-networkduplicate check cluster status done cluster_status:Running `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge NetworkChaos test-chaos-mesh-networkduplicate-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. Error from server (NotFound): networkchaos.chaos-mesh.org "test-chaos-mesh-networkduplicate-oracle-mxdgjj" not found Error from server (NotFound): networkchaos.chaos-mesh.org "test-chaos-mesh-networkduplicate-oracle-mxdgjj" not found apiVersion: chaos-mesh.org/v1alpha1 kind: NetworkChaos metadata: name: test-chaos-mesh-networkduplicate-oracle-mxdgjj namespace: default spec: selector: namespaces: - default labelSelectors: apps.kubeblocks.io/pod-name: oracle-mxdgjj-oracle-0 mode: all action: duplicate duplicate: duplicate: '100' correlation: '100' direction: to duration: 2m `kubectl apply -f test-chaos-mesh-networkduplicate-oracle-mxdgjj.yaml` networkchaos.chaos-mesh.org/test-chaos-mesh-networkduplicate-oracle-mxdgjj created apply test-chaos-mesh-networkduplicate-oracle-mxdgjj.yaml Success `rm -rf test-chaos-mesh-networkduplicate-oracle-mxdgjj.yaml` networkduplicate chaos test waiting 120 seconds check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Running Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:26 UTC+0800 fra:20Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 15:29 UTC+0800 fra:20Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-0;secondary: oracle-mxdgjj-oracle-1 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check cluster connect done `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge NetworkChaos test-chaos-mesh-networkduplicate-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. networkchaos.chaos-mesh.org "test-chaos-mesh-networkduplicate-oracle-mxdgjj" force deleted Error from server (NotFound): networkchaos.chaos-mesh.org "test-chaos-mesh-networkduplicate-oracle-mxdgjj" not found check failover pod name failover pod name:oracle-mxdgjj-oracle-0 failover networkduplicate Success `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success cluster restart check cluster status before ops check cluster status done cluster_status:Running `kbcli cluster restart oracle-mxdgjj --auto-approve --force=true --components oracle --namespace default ` OpsRequest oracle-mxdgjj-restart-g4qqz created successfully, you can view the progress: kbcli cluster describe-ops oracle-mxdgjj-restart-g4qqz -n default check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-restart-g4qqz default Restart oracle-mxdgjj oracle Running 0/2 Feb 12,2026 15:43 UTC+0800 check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Updating Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:47 UTC+0800 fra:20Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 15:43 UTC+0800 fra:20Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-1;secondary: oracle-mxdgjj-oracle-0 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check cluster connect done check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-restart-g4qqz default Restart oracle-mxdgjj oracle Succeed 2/2 Feb 12,2026 15:43 UTC+0800 check ops status done ops_status:oracle-mxdgjj-restart-g4qqz default Restart oracle-mxdgjj oracle Succeed 2/2 Feb 12,2026 15:43 UTC+0800 `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge opsrequests.operations oracle-mxdgjj-restart-g4qqz --namespace default ` opsrequest.operations.kubeblocks.io/oracle-mxdgjj-restart-g4qqz patched `kbcli cluster delete-ops --name oracle-mxdgjj-restart-g4qqz --force --auto-approve --namespace default ` OpsRequest oracle-mxdgjj-restart-g4qqz deleted `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success test failover dnserror check cluster status before cluster-failover-dnserror check cluster status done cluster_status:Running `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge DNSChaos test-chaos-mesh-dnserror-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. Error from server (NotFound): dnschaos.chaos-mesh.org "test-chaos-mesh-dnserror-oracle-mxdgjj" not found Error from server (NotFound): dnschaos.chaos-mesh.org "test-chaos-mesh-dnserror-oracle-mxdgjj" not found apiVersion: chaos-mesh.org/v1alpha1 kind: DNSChaos metadata: name: test-chaos-mesh-dnserror-oracle-mxdgjj namespace: default spec: selector: namespaces: - default labelSelectors: apps.kubeblocks.io/pod-name: oracle-mxdgjj-oracle-1 mode: all action: error duration: 2m `kubectl apply -f test-chaos-mesh-dnserror-oracle-mxdgjj.yaml` dnschaos.chaos-mesh.org/test-chaos-mesh-dnserror-oracle-mxdgjj created apply test-chaos-mesh-dnserror-oracle-mxdgjj.yaml Success `rm -rf test-chaos-mesh-dnserror-oracle-mxdgjj.yaml` dnserror chaos test waiting 120 seconds check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Running Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:47 UTC+0800 fra:20Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 15:43 UTC+0800 fra:20Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-1;secondary: oracle-mxdgjj-oracle-0 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check cluster connect done `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge DNSChaos test-chaos-mesh-dnserror-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. dnschaos.chaos-mesh.org "test-chaos-mesh-dnserror-oracle-mxdgjj" force deleted Error from server (NotFound): dnschaos.chaos-mesh.org "test-chaos-mesh-dnserror-oracle-mxdgjj" not found check failover pod name failover pod name:oracle-mxdgjj-oracle-1 failover dnserror Success `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success test failover dnsrandom check cluster status before cluster-failover-dnsrandom check cluster status done cluster_status:Running `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge DNSChaos test-chaos-mesh-dnsrandom-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. Error from server (NotFound): dnschaos.chaos-mesh.org "test-chaos-mesh-dnsrandom-oracle-mxdgjj" not found Error from server (NotFound): dnschaos.chaos-mesh.org "test-chaos-mesh-dnsrandom-oracle-mxdgjj" not found apiVersion: chaos-mesh.org/v1alpha1 kind: DNSChaos metadata: name: test-chaos-mesh-dnsrandom-oracle-mxdgjj namespace: default spec: selector: namespaces: - default labelSelectors: apps.kubeblocks.io/pod-name: oracle-mxdgjj-oracle-1 mode: all action: random duration: 2m `kubectl apply -f test-chaos-mesh-dnsrandom-oracle-mxdgjj.yaml` dnschaos.chaos-mesh.org/test-chaos-mesh-dnsrandom-oracle-mxdgjj created apply test-chaos-mesh-dnsrandom-oracle-mxdgjj.yaml Success `rm -rf test-chaos-mesh-dnsrandom-oracle-mxdgjj.yaml` dnsrandom chaos test waiting 120 seconds check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Running Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:47 UTC+0800 fra:20Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 15:43 UTC+0800 fra:20Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-1;secondary: oracle-mxdgjj-oracle-0 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check cluster connect done `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge DNSChaos test-chaos-mesh-dnsrandom-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. dnschaos.chaos-mesh.org "test-chaos-mesh-dnsrandom-oracle-mxdgjj" force deleted Error from server (NotFound): dnschaos.chaos-mesh.org "test-chaos-mesh-dnsrandom-oracle-mxdgjj" not found check failover pod name failover pod name:oracle-mxdgjj-oracle-1 failover dnsrandom Success `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success test failover timeoffset check cluster status before cluster-failover-timeoffset check cluster status done cluster_status:Running `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge TimeChaos test-chaos-mesh-timeoffset-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. Error from server (NotFound): timechaos.chaos-mesh.org "test-chaos-mesh-timeoffset-oracle-mxdgjj" not found Error from server (NotFound): timechaos.chaos-mesh.org "test-chaos-mesh-timeoffset-oracle-mxdgjj" not found apiVersion: chaos-mesh.org/v1alpha1 kind: TimeChaos metadata: name: test-chaos-mesh-timeoffset-oracle-mxdgjj namespace: default spec: selector: namespaces: - default labelSelectors: apps.kubeblocks.io/pod-name: oracle-mxdgjj-oracle-1 mode: all timeOffset: '-10m' clockIds: - CLOCK_REALTIME duration: 2m `kubectl apply -f test-chaos-mesh-timeoffset-oracle-mxdgjj.yaml` timechaos.chaos-mesh.org/test-chaos-mesh-timeoffset-oracle-mxdgjj created apply test-chaos-mesh-timeoffset-oracle-mxdgjj.yaml Success `rm -rf test-chaos-mesh-timeoffset-oracle-mxdgjj.yaml` timeoffset chaos test waiting 120 seconds check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Running Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:47 UTC+0800 fra:20Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 15:43 UTC+0800 fra:20Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-1;secondary: oracle-mxdgjj-oracle-0 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check cluster connect done `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge TimeChaos test-chaos-mesh-timeoffset-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. timechaos.chaos-mesh.org "test-chaos-mesh-timeoffset-oracle-mxdgjj" force deleted Error from server (NotFound): timechaos.chaos-mesh.org "test-chaos-mesh-timeoffset-oracle-mxdgjj" not found check failover pod name failover pod name:oracle-mxdgjj-oracle-1 failover timeoffset Success `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success `kubectl get pvc -l app.kubernetes.io/instance=oracle-mxdgjj,apps.kubeblocks.io/component-name=oracle,apps.kubeblocks.io/vct-name=fra --namespace default ` cluster volume-expand check cluster status before ops check cluster status done cluster_status:Running No resources found in oracle-mxdgjj namespace. `kbcli cluster volume-expand oracle-mxdgjj --auto-approve --force=true --components oracle --volume-claim-templates fra --storage 21Gi --namespace default ` OpsRequest oracle-mxdgjj-volumeexpansion-ksmdg created successfully, you can view the progress: kbcli cluster describe-ops oracle-mxdgjj-volumeexpansion-ksmdg -n default check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-volumeexpansion-ksmdg default VolumeExpansion oracle-mxdgjj oracle Running 0/2 Feb 12,2026 15:55 UTC+0800 check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Updating Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:47 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 15:43 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-1;secondary: oracle-mxdgjj-oracle-0 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check cluster connect done No resources found in oracle-mxdgjj namespace. check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-volumeexpansion-ksmdg default VolumeExpansion oracle-mxdgjj oracle Succeed 2/2 Feb 12,2026 15:55 UTC+0800 check ops status done ops_status:oracle-mxdgjj-volumeexpansion-ksmdg default VolumeExpansion oracle-mxdgjj oracle Succeed 2/2 Feb 12,2026 15:55 UTC+0800 `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge opsrequests.operations oracle-mxdgjj-volumeexpansion-ksmdg --namespace default ` opsrequest.operations.kubeblocks.io/oracle-mxdgjj-volumeexpansion-ksmdg patched `kbcli cluster delete-ops --name oracle-mxdgjj-volumeexpansion-ksmdg --force --auto-approve --namespace default ` OpsRequest oracle-mxdgjj-volumeexpansion-ksmdg deleted `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success test failover networkdelay check cluster status before cluster-failover-networkdelay check cluster status done cluster_status:Running `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge NetworkChaos test-chaos-mesh-networkdelay-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. Error from server (NotFound): networkchaos.chaos-mesh.org "test-chaos-mesh-networkdelay-oracle-mxdgjj" not found Error from server (NotFound): networkchaos.chaos-mesh.org "test-chaos-mesh-networkdelay-oracle-mxdgjj" not found apiVersion: chaos-mesh.org/v1alpha1 kind: NetworkChaos metadata: name: test-chaos-mesh-networkdelay-oracle-mxdgjj namespace: default spec: selector: namespaces: - default labelSelectors: apps.kubeblocks.io/pod-name: oracle-mxdgjj-oracle-1 mode: all action: delay delay: latency: 2000ms correlation: '100' jitter: 0ms direction: to duration: 2m `kubectl apply -f test-chaos-mesh-networkdelay-oracle-mxdgjj.yaml` networkchaos.chaos-mesh.org/test-chaos-mesh-networkdelay-oracle-mxdgjj created apply test-chaos-mesh-networkdelay-oracle-mxdgjj.yaml Success `rm -rf test-chaos-mesh-networkdelay-oracle-mxdgjj.yaml` networkdelay chaos test waiting 120 seconds check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Running Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:47 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3 / 3 8Gi / 8Gi data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 15:43 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-1;secondary: oracle-mxdgjj-oracle-0 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check cluster connect done `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge NetworkChaos test-chaos-mesh-networkdelay-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. networkchaos.chaos-mesh.org "test-chaos-mesh-networkdelay-oracle-mxdgjj" force deleted Error from server (NotFound): networkchaos.chaos-mesh.org "test-chaos-mesh-networkdelay-oracle-mxdgjj" not found check failover pod name failover pod name:oracle-mxdgjj-oracle-1 failover networkdelay Success `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success check cluster status before ops check cluster status done cluster_status:Running `kbcli cluster vscale oracle-mxdgjj --auto-approve --force=true --components oracle --cpu 3100m --memory 8.1Gi --namespace default ` OpsRequest oracle-mxdgjj-verticalscaling-84bf2 created successfully, you can view the progress: kbcli cluster describe-ops oracle-mxdgjj-verticalscaling-84bf2 -n default check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-verticalscaling-84bf2 default VerticalScaling oracle-mxdgjj oracle Running 0/2 Feb 12,2026 15:59 UTC+0800 check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Updating Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-0;secondary: oracle-mxdgjj-oracle-1 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check cluster connect done check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-verticalscaling-84bf2 default VerticalScaling oracle-mxdgjj oracle Succeed 2/2 Feb 12,2026 15:59 UTC+0800 check ops status done ops_status:oracle-mxdgjj-verticalscaling-84bf2 default VerticalScaling oracle-mxdgjj oracle Succeed 2/2 Feb 12,2026 15:59 UTC+0800 `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge opsrequests.operations oracle-mxdgjj-verticalscaling-84bf2 --namespace default ` opsrequest.operations.kubeblocks.io/oracle-mxdgjj-verticalscaling-84bf2 patched `kbcli cluster delete-ops --name oracle-mxdgjj-verticalscaling-84bf2 --force --auto-approve --namespace default ` OpsRequest oracle-mxdgjj-verticalscaling-84bf2 deleted `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success test failover fullcpu check cluster status before cluster-failover-fullcpu check cluster status done cluster_status:Running `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge StressChaos test-chaos-mesh-fullcpu-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. Error from server (NotFound): stresschaos.chaos-mesh.org "test-chaos-mesh-fullcpu-oracle-mxdgjj" not found Error from server (NotFound): stresschaos.chaos-mesh.org "test-chaos-mesh-fullcpu-oracle-mxdgjj" not found apiVersion: chaos-mesh.org/v1alpha1 kind: StressChaos metadata: name: test-chaos-mesh-fullcpu-oracle-mxdgjj namespace: default spec: selector: namespaces: - default labelSelectors: apps.kubeblocks.io/pod-name: oracle-mxdgjj-oracle-0 mode: all stressors: cpu: workers: 100 load: 100 duration: 2m `kubectl apply -f test-chaos-mesh-fullcpu-oracle-mxdgjj.yaml` stresschaos.chaos-mesh.org/test-chaos-mesh-fullcpu-oracle-mxdgjj created apply test-chaos-mesh-fullcpu-oracle-mxdgjj.yaml Success `rm -rf test-chaos-mesh-fullcpu-oracle-mxdgjj.yaml` fullcpu chaos test waiting 120 seconds check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Running Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-0;secondary: oracle-mxdgjj-oracle-1 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check cluster connect done `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge StressChaos test-chaos-mesh-fullcpu-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. stresschaos.chaos-mesh.org "test-chaos-mesh-fullcpu-oracle-mxdgjj" force deleted Error from server (NotFound): stresschaos.chaos-mesh.org "test-chaos-mesh-fullcpu-oracle-mxdgjj" not found check failover pod name failover pod name:oracle-mxdgjj-oracle-0 failover fullcpu Success `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success cluster configure component_tmp: oracle apiVersion: operations.kubeblocks.io/v1alpha1 kind: OpsRequest metadata: generateName: oracle-mxdgjj-reconfiguring- namespace: default spec: type: Reconfiguring clusterName: oracle-mxdgjj force: true reconfigures: - componentName: oracle parameters: - key: open_cursors value: '400' check cluster status before ops check cluster status done cluster_status:Running `kubectl create -f test_ops_cluster_oracle-mxdgjj.yaml` opsrequest.operations.kubeblocks.io/oracle-mxdgjj-reconfiguring-txbrk created create test_ops_cluster_oracle-mxdgjj.yaml Success `rm -rf test_ops_cluster_oracle-mxdgjj.yaml` check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-reconfiguring-txbrk default Reconfiguring oracle-mxdgjj oracle,oracle Running -/- Feb 12,2026 16:07 UTC+0800 check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Running Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-0;secondary: oracle-mxdgjj-oracle-1 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check cluster connect done check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-reconfiguring-txbrk default Reconfiguring oracle-mxdgjj oracle,oracle Succeed -/- Feb 12,2026 16:07 UTC+0800 check ops status done ops_status:oracle-mxdgjj-reconfiguring-txbrk default Reconfiguring oracle-mxdgjj oracle,oracle Succeed -/- Feb 12,2026 16:07 UTC+0800 `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge opsrequests.operations oracle-mxdgjj-reconfiguring-txbrk --namespace default ` opsrequest.operations.kubeblocks.io/oracle-mxdgjj-reconfiguring-txbrk patched `kbcli cluster delete-ops --name oracle-mxdgjj-reconfiguring-txbrk --force --auto-approve --namespace default ` OpsRequest oracle-mxdgjj-reconfiguring-txbrk deleted component_config:oracle check config variables Defaulted container "oracle" out of: oracle, exporter, kbagent, config-manager, oracle-init-container (init), init-kbagent (init), kbagent-worker (init), install-config-manager-tool (init) Unable to use a TTY - input is not a terminal or the right kind of file current value_actual: 400 configure:[open_cursors] result actual:[400] equal expected:[400] `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success test switchover cluster promote check cluster status before ops check cluster status done cluster_status:Running `kbcli cluster promote oracle-mxdgjj --auto-approve --force=true --instance oracle-mxdgjj-oracle-0 --candidate oracle-mxdgjj-oracle-1 --namespace default ` OpsRequest oracle-mxdgjj-switchover-h52rb created successfully, you can view the progress: kbcli cluster describe-ops oracle-mxdgjj-switchover-h52rb -n default check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-switchover-h52rb default Switchover oracle-mxdgjj oracle-mxdgjj-oracle Running -/- Feb 12,2026 16:08 UTC+0800 check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Running Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:20Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:20Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-0;secondary: oracle-mxdgjj-oracle-1 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check cluster connect done check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-switchover-h52rb default Switchover oracle-mxdgjj oracle-mxdgjj-oracle Running -/- Feb 12,2026 16:08 UTC+0800 ops_status:oracle-mxdgjj-switchover-h52rb default Switchover oracle-mxdgjj oracle-mxdgjj-oracle Running -/- Feb 12,2026 16:08 UTC+0800 ops_status:oracle-mxdgjj-switchover-h52rb default Switchover oracle-mxdgjj oracle-mxdgjj-oracle Running -/- Feb 12,2026 16:08 UTC+0800 ops_status:oracle-mxdgjj-switchover-h52rb default Switchover oracle-mxdgjj oracle-mxdgjj-oracle Running -/- Feb 12,2026 16:08 UTC+0800 ops_status:oracle-mxdgjj-switchover-h52rb default Switchover oracle-mxdgjj oracle-mxdgjj-oracle Running -/- Feb 12,2026 16:08 UTC+0800 ops_status:oracle-mxdgjj-switchover-h52rb default Switchover oracle-mxdgjj oracle-mxdgjj-oracle Running -/- Feb 12,2026 16:08 UTC+0800 ops_status:oracle-mxdgjj-switchover-h52rb default Switchover oracle-mxdgjj oracle-mxdgjj-oracle Running -/- Feb 12,2026 16:08 UTC+0800 check ops status done ops_status:oracle-mxdgjj-switchover-h52rb default Switchover oracle-mxdgjj oracle-mxdgjj-oracle Succeed 1/1 Feb 12,2026 16:08 UTC+0800 `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge opsrequests.operations oracle-mxdgjj-switchover-h52rb --namespace default ` opsrequest.operations.kubeblocks.io/oracle-mxdgjj-switchover-h52rb patched `kbcli cluster delete-ops --name oracle-mxdgjj-switchover-h52rb --force --auto-approve --namespace default ` OpsRequest oracle-mxdgjj-switchover-h52rb deleted `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success switchover pod:oracle-mxdgjj-oracle-0 checking switchover... switchover pod:oracle-mxdgjj-oracle-0 checking switchover... switchover pod:oracle-mxdgjj-oracle-0 checking switchover... switchover pod:oracle-mxdgjj-oracle-0 checking switchover... switchover pod:oracle-mxdgjj-oracle-0 checking switchover... switchover pod:oracle-mxdgjj-oracle-0 checking switchover... switchover pod:oracle-mxdgjj-oracle-0 checking switchover... switchover pod:oracle-mxdgjj-oracle-0 checking switchover... switchover pod:oracle-mxdgjj-oracle-1 switchover success `kubectl get pvc -l app.kubernetes.io/instance=oracle-mxdgjj,apps.kubeblocks.io/component-name=oracle,apps.kubeblocks.io/vct-name=data --namespace default ` cluster volume-expand check cluster status before ops check cluster status done cluster_status:Running No resources found in oracle-mxdgjj namespace. `kbcli cluster volume-expand oracle-mxdgjj --auto-approve --force=true --components oracle --volume-claim-templates data --storage 25Gi --namespace default ` OpsRequest oracle-mxdgjj-volumeexpansion-mldm5 created successfully, you can view the progress: kbcli cluster describe-ops oracle-mxdgjj-volumeexpansion-mldm5 -n default check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-volumeexpansion-mldm5 default VolumeExpansion oracle-mxdgjj oracle Running 0/2 Feb 12,2026 16:09 UTC+0800 check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Updating Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-1;secondary: oracle-mxdgjj-oracle-0 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check cluster connect done No resources found in oracle-mxdgjj namespace. check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-volumeexpansion-mldm5 default VolumeExpansion oracle-mxdgjj oracle Succeed 2/2 Feb 12,2026 16:09 UTC+0800 check ops status done ops_status:oracle-mxdgjj-volumeexpansion-mldm5 default VolumeExpansion oracle-mxdgjj oracle Succeed 2/2 Feb 12,2026 16:09 UTC+0800 `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge opsrequests.operations oracle-mxdgjj-volumeexpansion-mldm5 --namespace default ` opsrequest.operations.kubeblocks.io/oracle-mxdgjj-volumeexpansion-mldm5 patched `kbcli cluster delete-ops --name oracle-mxdgjj-volumeexpansion-mldm5 --force --auto-approve --namespace default ` OpsRequest oracle-mxdgjj-volumeexpansion-mldm5 deleted `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success test failover podfailure check cluster status before cluster-failover-podfailure check cluster status done cluster_status:Running `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge PodChaos test-chaos-mesh-podfailure-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. Error from server (NotFound): podchaos.chaos-mesh.org "test-chaos-mesh-podfailure-oracle-mxdgjj" not found Error from server (NotFound): podchaos.chaos-mesh.org "test-chaos-mesh-podfailure-oracle-mxdgjj" not found apiVersion: chaos-mesh.org/v1alpha1 kind: PodChaos metadata: name: test-chaos-mesh-podfailure-oracle-mxdgjj namespace: default spec: selector: namespaces: - default labelSelectors: apps.kubeblocks.io/pod-name: oracle-mxdgjj-oracle-1 mode: all action: pod-failure duration: 2m `kubectl apply -f test-chaos-mesh-podfailure-oracle-mxdgjj.yaml` podchaos.chaos-mesh.org/test-chaos-mesh-podfailure-oracle-mxdgjj created apply test-chaos-mesh-podfailure-oracle-mxdgjj.yaml Success `rm -rf test-chaos-mesh-podfailure-oracle-mxdgjj.yaml` podfailure chaos test waiting 120 seconds check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Abnormal Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle cluster_status:Abnormal cluster_status:Abnormal cluster_status:Abnormal cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-0;secondary: oracle-mxdgjj-oracle-1 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check cluster connect done `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge PodChaos test-chaos-mesh-podfailure-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. podchaos.chaos-mesh.org "test-chaos-mesh-podfailure-oracle-mxdgjj" force deleted Error from server (NotFound): podchaos.chaos-mesh.org "test-chaos-mesh-podfailure-oracle-mxdgjj" not found check failover pod name failover pod name:oracle-mxdgjj-oracle-0 failover podfailure Success `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success test failover connectionstress check cluster status before cluster-failover-connectionstress check cluster status done cluster_status:Running error: error from server (NotFound): pods "test-db-client-connectionstress-oracle-mxdgjj" not found in namespace "default" `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge pods test-db-client-connectionstress-oracle-mxdgjj --namespace default ` Error from server (NotFound): pods "test-db-client-connectionstress-oracle-mxdgjj" not found Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. Error from server (NotFound): pods "test-db-client-connectionstress-oracle-mxdgjj" not found `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: apiVersion: v1 kind: Pod metadata: name: test-db-client-connectionstress-oracle-mxdgjj namespace: default spec: containers: - name: test-dbclient imagePullPolicy: IfNotPresent image: apecloud-registry.cn-zhangjiakou.cr.aliyuncs.com/apecloud/dbclient:test args: - "--host" - "oracle-mxdgjj-oracle.default.svc.cluster.local" - "--user" - "sys" - "--password" - "V122u2Z62JJ!" - "--port" - "1521" - "--database" - "" - "--dbtype" - "oracle" - "--test" - "connectionstress" - "--connections" - "640" - "--duration" - "60" restartPolicy: Never `kubectl apply -f test-db-client-connectionstress-oracle-mxdgjj.yaml` pod/test-db-client-connectionstress-oracle-mxdgjj created apply test-db-client-connectionstress-oracle-mxdgjj.yaml Success `rm -rf test-db-client-connectionstress-oracle-mxdgjj.yaml` check pod status pod_status:NAME READY STATUS RESTARTS AGE test-db-client-connectionstress-oracle-mxdgjj 1/1 Running 0 5s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-connectionstress-oracle-mxdgjj 1/1 Running 0 9s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-connectionstress-oracle-mxdgjj 1/1 Running 0 15s pod_status:NAME READY STATUS RESTARTS AGE test-db-client-connectionstress-oracle-mxdgjj 1/1 Running 0 20s check pod test-db-client-connectionstress-oracle-mxdgjj status done pod_status:NAME READY STATUS RESTARTS AGE test-db-client-connectionstress-oracle-mxdgjj 0/1 Completed 0 25s check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Running Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 15:38 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-0;secondary: oracle-mxdgjj-oracle-1 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check cluster connect done at oracle.net.ns.NSProtocolNIO.doSocketRead(NSProtocolNIO.java:557) at oracle.net.ns.NIOPacket.readNIOPacket(NIOPacket.java:403) at oracle.net.ns.NSProtocolNIO.negotiateConnection(NSProtocolNIO.java:127) at oracle.net.ns.NSProtocol.connect(NSProtocol.java:340) at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1596) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:588) ... 11 more Failed to connect to Oracle database: java.sql.SQLRecoverableException: IO Error: Got minus one from a read call Trying with database Oracle. java.io.IOException: Failed to connect to Oracle database: at com.apecloud.dbtester.tester.OracleTester.connect(OracleTester.java:73) at com.apecloud.dbtester.tester.OracleTester.connectionStress(OracleTester.java:121) at com.apecloud.dbtester.commons.TestExecutor.executeTest(TestExecutor.java:37) at OneClient.executeTest(OneClient.java:108) at OneClient.main(OneClient.java:40) Caused by: java.sql.SQLRecoverableException: IO Error: Got minus one from a read call at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:854) at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:793) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:57) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:747) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:562) at java.sql/java.sql.DriverManager.getConnection(Unknown Source) at java.sql/java.sql.DriverManager.getConnection(Unknown Source) at com.apecloud.dbtester.tester.OracleTester.connect(OracleTester.java:71) ... 4 more Caused by: oracle.net.ns.NetException: Got minus one from a read call at oracle.net.ns.NSProtocolNIO.doSocketRead(NSProtocolNIO.java:557) at oracle.net.ns.NIOPacket.readNIOPacket(NIOPacket.java:403) at oracle.net.ns.NSProtocolNIO.negotiateConnection(NSProtocolNIO.java:127) at oracle.net.ns.NSProtocol.connect(NSProtocol.java:340) at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1596) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:588) ... 11 more Failed to connect to Oracle database: java.sql.SQLRecoverableException: IO Error: Got minus one from a read call Trying with database Oracle. java.io.IOException: Failed to connect to Oracle database: at com.apecloud.dbtester.tester.OracleTester.connect(OracleTester.java:73) at com.apecloud.dbtester.tester.OracleTester.connectionStress(OracleTester.java:121) at com.apecloud.dbtester.commons.TestExecutor.executeTest(TestExecutor.java:37) at OneClient.executeTest(OneClient.java:108) at OneClient.main(OneClient.java:40) Caused by: java.sql.SQLRecoverableException: IO Error: Got minus one from a read call at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:854) at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:793) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:57) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:747) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:562) at java.sql/java.sql.DriverManager.getConnection(Unknown Source) at java.sql/java.sql.DriverManager.getConnection(Unknown Source) at com.apecloud.dbtester.tester.OracleTester.connect(OracleTester.java:71) ... 4 more Caused by: oracle.net.ns.NetException: Got minus one from a read call at oracle.net.ns.NSProtocolNIO.doSocketRead(NSProtocolNIO.java:557) at oracle.net.ns.NIOPacket.readNIOPacket(NIOPacket.java:403) at oracle.net.ns.NSProtocolNIO.negotiateConnection(NSProtocolNIO.java:127) at oracle.net.ns.NSProtocol.connect(NSProtocol.java:340) at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1596) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:588) ... 11 more Failed to connect to Oracle database: java.sql.SQLRecoverableException: IO Error: Got minus one from a read call Trying with database Oracle. java.io.IOException: Failed to connect to Oracle database: at com.apecloud.dbtester.tester.OracleTester.connect(OracleTester.java:73) at com.apecloud.dbtester.tester.OracleTester.connectionStress(OracleTester.java:121) at com.apecloud.dbtester.commons.TestExecutor.executeTest(TestExecutor.java:37) at OneClient.executeTest(OneClient.java:108) at OneClient.main(OneClient.java:40) Caused by: java.sql.SQLRecoverableException: IO Error: Got minus one from a read call at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:854) at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:793) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:57) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:747) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:562) at java.sql/java.sql.DriverManager.getConnection(Unknown Source) at java.sql/java.sql.DriverManager.getConnection(Unknown Source) at com.apecloud.dbtester.tester.OracleTester.connect(OracleTester.java:71) ... 4 more Caused by: oracle.net.ns.NetException: Got minus one from a read call at oracle.net.ns.NSProtocolNIO.doSocketRead(NSProtocolNIO.java:557) at oracle.net.ns.NIOPacket.readNIOPacket(NIOPacket.java:403) at oracle.net.ns.NSProtocolNIO.negotiateConnection(NSProtocolNIO.java:127) at oracle.net.ns.NSProtocol.connect(NSProtocol.java:340) at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1596) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:588) ... 11 more Test Result: null Connection Information: Database Type: oracle Host: oracle-mxdgjj-oracle.default.svc.cluster.local Port: 1521 Database: Table: User: sys Org: Access Mode: mysql Test Type: connectionstress Connection Count: 640 Duration: 60 seconds `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge pods test-db-client-connectionstress-oracle-mxdgjj --namespace default ` pod/test-db-client-connectionstress-oracle-mxdgjj patched (no change) Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. pod "test-db-client-connectionstress-oracle-mxdgjj" force deleted check failover pod name failover pod name:oracle-mxdgjj-oracle-0 failover connectionstress Success `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success check component observer exists `kubectl get components -l app.kubernetes.io/instance=oracle-mxdgjj,apps.kubeblocks.io/component-name=observer --namespace default | (grep "observer" || true )` cluster restart check cluster status before ops check cluster status done cluster_status:Running `kbcli cluster restart oracle-mxdgjj --auto-approve --force=true --components observer --namespace default ` OpsRequest oracle-mxdgjj-restart-8xqpc created successfully, you can view the progress: kbcli cluster describe-ops oracle-mxdgjj-restart-8xqpc -n default check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-restart-8xqpc default Restart oracle-mxdgjj observer Pending -/- Feb 12,2026 16:15 UTC+0800 check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Updating Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 16:15 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-0;secondary: oracle-mxdgjj-oracle-1 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check cluster connect done check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-restart-8xqpc default Restart oracle-mxdgjj observer Succeed 1/1 Feb 12,2026 16:15 UTC+0800 check ops status done ops_status:oracle-mxdgjj-restart-8xqpc default Restart oracle-mxdgjj observer Succeed 1/1 Feb 12,2026 16:15 UTC+0800 `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge opsrequests.operations oracle-mxdgjj-restart-8xqpc --namespace default ` opsrequest.operations.kubeblocks.io/oracle-mxdgjj-restart-8xqpc patched `kbcli cluster delete-ops --name oracle-mxdgjj-restart-8xqpc --force --auto-approve --namespace default ` OpsRequest oracle-mxdgjj-restart-8xqpc deleted `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success check component observer exists `kubectl get components -l app.kubernetes.io/instance=oracle-mxdgjj,apps.kubeblocks.io/component-name=observer --namespace default | (grep "observer" || true )` cluster observer scale-out cluster observer scale-out replicas: 3 check cluster status before ops check cluster status done cluster_status:Running No resources found in oracle-mxdgjj namespace. `kbcli cluster scale-out oracle-mxdgjj --auto-approve --force=true --components observer --replicas 1 --namespace default ` OpsRequest oracle-mxdgjj-horizontalscaling-48xxb created successfully, you can view the progress: kbcli cluster describe-ops oracle-mxdgjj-horizontalscaling-48xxb -n default check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-horizontalscaling-48xxb default HorizontalScaling oracle-mxdgjj observer Running 0/1 Feb 12,2026 16:16 UTC+0800 check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Updating Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 16:15 UTC+0800 oracle-mxdgjj-observer-1 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.13/192.168.0.13 Feb 12,2026 16:16 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-0;secondary: oracle-mxdgjj-oracle-1 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check cluster connect done No resources found in oracle-mxdgjj namespace. check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-horizontalscaling-48xxb default HorizontalScaling oracle-mxdgjj observer Succeed 1/1 Feb 12,2026 16:16 UTC+0800 check ops status done ops_status:oracle-mxdgjj-horizontalscaling-48xxb default HorizontalScaling oracle-mxdgjj observer Succeed 1/1 Feb 12,2026 16:16 UTC+0800 `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge opsrequests.operations oracle-mxdgjj-horizontalscaling-48xxb --namespace default ` opsrequest.operations.kubeblocks.io/oracle-mxdgjj-horizontalscaling-48xxb patched `kbcli cluster delete-ops --name oracle-mxdgjj-horizontalscaling-48xxb --force --auto-approve --namespace default ` OpsRequest oracle-mxdgjj-horizontalscaling-48xxb deleted `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success check component observer exists `kubectl get components -l app.kubernetes.io/instance=oracle-mxdgjj,apps.kubeblocks.io/component-name=observer --namespace default | (grep "observer" || true )` cluster observer scale-in cluster observer scale-in replicas: 2 check cluster status before ops check cluster status done cluster_status:Running No resources found in oracle-mxdgjj namespace. `kbcli cluster scale-in oracle-mxdgjj --auto-approve --force=true --components observer --replicas 1 --namespace default ` OpsRequest oracle-mxdgjj-horizontalscaling-g5jnm created successfully, you can view the progress: kbcli cluster describe-ops oracle-mxdgjj-horizontalscaling-g5jnm -n default check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-horizontalscaling-g5jnm default HorizontalScaling oracle-mxdgjj observer Running 0/1 Feb 12,2026 16:17 UTC+0800 check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Running Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 16:15 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-0;secondary: oracle-mxdgjj-oracle-1 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check cluster connect done No resources found in oracle-mxdgjj namespace. check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-horizontalscaling-g5jnm default HorizontalScaling oracle-mxdgjj observer Succeed 1/1 Feb 12,2026 16:17 UTC+0800 check ops status done ops_status:oracle-mxdgjj-horizontalscaling-g5jnm default HorizontalScaling oracle-mxdgjj observer Succeed 1/1 Feb 12,2026 16:17 UTC+0800 `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge opsrequests.operations oracle-mxdgjj-horizontalscaling-g5jnm --namespace default ` opsrequest.operations.kubeblocks.io/oracle-mxdgjj-horizontalscaling-g5jnm patched `kbcli cluster delete-ops --name oracle-mxdgjj-horizontalscaling-g5jnm --force --auto-approve --namespace default ` OpsRequest oracle-mxdgjj-horizontalscaling-g5jnm deleted `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-0 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success test failover networkloss check cluster status before cluster-failover-networkloss check cluster status done cluster_status:Running `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge NetworkChaos test-chaos-mesh-networkloss-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. Error from server (NotFound): networkchaos.chaos-mesh.org "test-chaos-mesh-networkloss-oracle-mxdgjj" not found Error from server (NotFound): networkchaos.chaos-mesh.org "test-chaos-mesh-networkloss-oracle-mxdgjj" not found apiVersion: chaos-mesh.org/v1alpha1 kind: NetworkChaos metadata: name: test-chaos-mesh-networkloss-oracle-mxdgjj namespace: default spec: selector: namespaces: - default labelSelectors: apps.kubeblocks.io/pod-name: oracle-mxdgjj-oracle-0 mode: all action: loss loss: loss: '100' correlation: '100' direction: to duration: 2m `kubectl apply -f test-chaos-mesh-networkloss-oracle-mxdgjj.yaml` networkchaos.chaos-mesh.org/test-chaos-mesh-networkloss-oracle-mxdgjj created apply test-chaos-mesh-networkloss-oracle-mxdgjj.yaml Success `rm -rf test-chaos-mesh-networkloss-oracle-mxdgjj.yaml` networkloss chaos test waiting 120 seconds check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Updating Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 500m / 500m 512Mi / 512Mi 192.168.0.200/192.168.0.200 Feb 12,2026 16:15 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-1;secondary: oracle-mxdgjj-oracle-0 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check cluster connect done `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge NetworkChaos test-chaos-mesh-networkloss-oracle-mxdgjj --namespace default ` Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. networkchaos.chaos-mesh.org "test-chaos-mesh-networkloss-oracle-mxdgjj" force deleted Error from server (NotFound): networkchaos.chaos-mesh.org "test-chaos-mesh-networkloss-oracle-mxdgjj" not found check failover pod name failover pod name:oracle-mxdgjj-oracle-1 failover networkloss Failure `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success check component observer exists `kubectl get components -l app.kubernetes.io/instance=oracle-mxdgjj,apps.kubeblocks.io/component-name=observer --namespace default | (grep "observer" || true )` check cluster status before ops check cluster status done cluster_status:Running `kbcli cluster vscale oracle-mxdgjj --auto-approve --force=true --components observer --cpu 600m --memory 0.6Gi --namespace default ` OpsRequest oracle-mxdgjj-verticalscaling-lrxkj created successfully, you can view the progress: kbcli cluster describe-ops oracle-mxdgjj-verticalscaling-lrxkj -n default check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-verticalscaling-lrxkj default VerticalScaling oracle-mxdgjj observer Running 0/1 Feb 12,2026 16:22 UTC+0800 check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Updating Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating cluster_status:Updating check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 600m / 600m 644245094400m / 644245094400m 192.168.0.200/192.168.0.200 Feb 12,2026 16:22 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-1;secondary: oracle-mxdgjj-oracle-0 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check cluster connect done check ops status `kbcli cluster list-ops oracle-mxdgjj --status all --namespace default ` NAME NAMESPACE TYPE CLUSTER COMPONENT STATUS PROGRESS CREATED-TIME oracle-mxdgjj-verticalscaling-lrxkj default VerticalScaling oracle-mxdgjj observer Succeed 1/1 Feb 12,2026 16:22 UTC+0800 check ops status done ops_status:oracle-mxdgjj-verticalscaling-lrxkj default VerticalScaling oracle-mxdgjj observer Succeed 1/1 Feb 12,2026 16:22 UTC+0800 `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge opsrequests.operations oracle-mxdgjj-verticalscaling-lrxkj --namespace default ` opsrequest.operations.kubeblocks.io/oracle-mxdgjj-verticalscaling-lrxkj patched `kbcli cluster delete-ops --name oracle-mxdgjj-verticalscaling-lrxkj --force --auto-approve --namespace default ` OpsRequest oracle-mxdgjj-verticalscaling-lrxkj deleted `kubectl get secrets -l app.kubernetes.io/instance=oracle-mxdgjj` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.username}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.password}"` `kubectl get secrets oracle-mxdgjj-oracle-account-sys -o jsonpath="{.data.port}"` DB_USERNAME:sys;DB_PASSWORD:V122u2Z62JJ!;DB_PORT:1521;DB_DATABASE: No resources found in default namespace. check db_client batch data count `echo "echo \"select count(*) from sys.executions_loop_table;\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check db_client batch [7788] equal [7788] data Success cluster update terminationPolicy WipeOut `kbcli cluster update oracle-mxdgjj --termination-policy=WipeOut --namespace default ` cluster.apps.kubeblocks.io/oracle-mxdgjj updated (no change) check cluster status `kbcli cluster list oracle-mxdgjj --show-labels --namespace default ` NAME NAMESPACE CLUSTER-DEFINITION TERMINATION-POLICY STATUS CREATED-TIME LABELS oracle-mxdgjj default oracle WipeOut Running Feb 12,2026 15:26 UTC+0800 app.kubernetes.io/instance=oracle-mxdgjj,clusterdefinition.kubeblocks.io/name=oracle check cluster status done cluster_status:Running check pod status `kbcli cluster list-instances oracle-mxdgjj --namespace default ` NAME NAMESPACE CLUSTER COMPONENT STATUS ROLE ACCESSMODE AZ CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE NODE CREATED-TIME oracle-mxdgjj-observer-0 default oracle-mxdgjj observer Running cn-guangzhou-b 600m / 600m 644245094400m / 644245094400m 192.168.0.200/192.168.0.200 Feb 12,2026 16:22 UTC+0800 oracle-mxdgjj-oracle-0 default oracle-mxdgjj oracle Running secondary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.200/192.168.0.200 Feb 12,2026 15:59 UTC+0800 fra:21Gi oracle-mxdgjj-oracle-1 default oracle-mxdgjj oracle Running primary cn-guangzhou-b 3100m / 3100m 8697308774400m / 8697308774400m data:25Gi 192.168.0.199/192.168.0.199 Feb 12,2026 16:03 UTC+0800 fra:21Gi check pod status done check cluster role check cluster role done primary: oracle-mxdgjj-oracle-1;secondary: oracle-mxdgjj-oracle-0 check cluster connect `echo "echo \"\" | sqlplus -S / as sysdba " | kubectl exec -it oracle-mxdgjj-oracle-1 --namespace default -- bash ` check cluster connect done cluster oracle-rman backup `kubectl get backuprepo backuprepo-kbcli-test -o jsonpath="{.spec.credential.name}"` `kubectl get backuprepo backuprepo-kbcli-test -o jsonpath="{.spec.credential.namespace}"` `kubectl get secrets kb-backuprepo-cg5kj -n kb-system -o jsonpath="{.data.accessKeyId}"` `kubectl get secrets kb-backuprepo-cg5kj -n kb-system -o jsonpath="{.data.secretAccessKey}"` KUBEBLOCKS NAMESPACE:kb-system get kubeblocks namespace done `kubectl get secrets -l app.kubernetes.io/instance=kbcli-test-minio --namespace kb-system -o jsonpath="{.items[0].data.root-user}"` `kubectl get secrets -l app.kubernetes.io/instance=kbcli-test-minio --namespace kb-system -o jsonpath="{.items[0].data.root-password}"` minio_user:kbclitest,minio_password:kbclitest,minio_endpoint:kbcli-test-minio.kb-system.svc.cluster.local:9000 list minio bucket kbcli-test `echo 'mc alias set minioserver http://kbcli-test-minio.kb-system.svc.cluster.local:9000 kbclitest kbclitest;mc ls minioserver' | kubectl exec -it kbcli-test-minio-79497b7755-qk8gw --namespace kb-system -- bash` Unable to use a TTY - input is not a terminal or the right kind of file list minio bucket done default backuprepo:backuprepo-kbcli-test exists `kbcli cluster backup oracle-mxdgjj --method oracle-rman --namespace default ` Backup backup-default-oracle-mxdgjj-20260212162319 created successfully, you can view the progress: kbcli cluster list-backups --names=backup-default-oracle-mxdgjj-20260212162319 -n default check backup status `kbcli cluster list-backups oracle-mxdgjj --namespace default ` NAME NAMESPACE SOURCE-CLUSTER METHOD STATUS TOTAL-SIZE DURATION DELETION-POLICY CREATE-TIME COMPLETION-TIME EXPIRATION backup-default-oracle-mxdgjj-20260212162319 default oracle-mxdgjj oracle-rman Running Delete Feb 12,2026 16:23 UTC+0800 backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running backup_status:oracle-mxdgjj-oracle-rman-Running check backup status done backup_status:backup-default-oracle-mxdgjj-20260212162319 default oracle-mxdgjj oracle-rman Completed 633218431 2m30s Delete Feb 12,2026 16:23 UTC+0800 Feb 12,2026 16:25 UTC+0800 `kbcli cluster describe-backup --names backup-default-oracle-mxdgjj-20260212162319 --namespace default ` Name: backup-default-oracle-mxdgjj-20260212162319 Cluster: oracle-mxdgjj Namespace: default Spec: Method: oracle-rman Policy Name: oracle-mxdgjj-oracle-backup-policy Actions: dp-backup-0: ActionType: Job WorkloadName: dp-backup-0-backup-default-oracle-mxdgjj-20260212162319-f7784bb TargetPodName: oracle-mxdgjj-oracle-1 Phase: Completed Start Time: Feb 12,2026 16:23 UTC+0800 Completion Time: Feb 12,2026 16:25 UTC+0800 Status: Phase: Completed Total Size: 633218431 ActionSet Name: oracle-rman Repository: backuprepo-kbcli-test Duration: 2m30s Start Time: Feb 12,2026 16:23 UTC+0800 Completion Time: Feb 12,2026 16:25 UTC+0800 Path: /default/oracle-mxdgjj-e4a8dc90-1bc7-4e17-9223-e32e6b6aee10/oracle/backup-default-oracle-mxdgjj-20260212162319 Warning Events: `kbcli cluster describe-backup --names backup-default-oracle-mxdgjj-20260212162319 --namespace default ` Name: backup-default-oracle-mxdgjj-20260212162319 Cluster: oracle-mxdgjj Namespace: default Spec: Method: oracle-rman Policy Name: oracle-mxdgjj-oracle-backup-policy Actions: dp-backup-0: ActionType: Job WorkloadName: dp-backup-0-backup-default-oracle-mxdgjj-20260212162319-f7784bb TargetPodName: oracle-mxdgjj-oracle-1 Phase: Completed Start Time: Feb 12,2026 16:23 UTC+0800 Completion Time: Feb 12,2026 16:25 UTC+0800 Status: Phase: Completed Total Size: 633218431 ActionSet Name: oracle-rman Repository: backuprepo-kbcli-test Duration: 2m30s Start Time: Feb 12,2026 16:23 UTC+0800 Completion Time: Feb 12,2026 16:25 UTC+0800 Path: /default/oracle-mxdgjj-e4a8dc90-1bc7-4e17-9223-e32e6b6aee10/oracle/backup-default-oracle-mxdgjj-20260212162319 Warning Events: No resources found in default namespace. delete cluster pod done No resources found in default namespace. check cluster resource non-exist OK: pvc No resources found in default namespace. delete cluster done No resources found in default namespace. No resources found in default namespace. No resources found in default namespace. cluster delete backup `kubectl patch -p '{"metadata":{"finalizers":[]}}' --type=merge backups backup-default-oracle-mxdgjj-20260212162319 --namespace default ` backup.dataprotection.kubeblocks.io/backup-default-oracle-mxdgjj-20260212162319 patched `kbcli cluster delete-backup oracle-mxdgjj --name backup-default-oracle-mxdgjj-20260212162319 --force --auto-approve --namespace default ` Backup backup-default-oracle-mxdgjj-20260212162319 deleted No opsrequests found in default namespace. cluster list-logs `kbcli cluster list-logs oracle-mxdgjj --namespace default ` No log files found. cluster logs `kbcli cluster logs oracle-mxdgjj --tail 30 --namespace default ` Defaulted container "oracle" out of: oracle, exporter, kbagent, config-manager, oracle-init-container (init), init-kbagent (init), kbagent-worker (init), install-config-manager-tool (init) 2026-02-12T08:24:23.864414+00:00 ALTER SYSTEM ARCHIVE LOG 2026-02-12T08:24:23.869665+00:00 Thread 1 advanced to log sequence 5 (LGWR switch) Current log# 2 seq# 5 mem# 0: /opt/oracle/oradata/ORCLCDB_1/redo02.log 2026-02-12T08:24:23.873921+00:00 Archived Log entry 52 added for T-1.S-4 ID 0xb2944bf3 LAD:1 2026-02-12T08:24:23.980094+00:00 TT03: Standby redo logfile selected for thread 1 sequence 5 for destination LOG_ARCHIVE_DEST_2 2026-02-12T08:24:24.978384+00:00 Starting control autobackup Control autobackup written to DISK device handle '/opt/oracle/flash_recovery_area/ORCLCDB_1/autobackup/2026_02_12/o1_mf_s_1225009464_nrv3ks1c_.bkp' 2026-02-12T08:24:28.313725+00:00 Starting control autobackup Control autobackup written to DISK device handle '/opt/oracle/flash_recovery_area/ORCLCDB_1/autobackup/2026_02_12/o1_mf_s_1225009468_nrv3kwc0_.bkp' 2026-02-12T08:24:30.542106+00:00 Starting control autobackup Control autobackup written to DISK device handle '/opt/oracle/flash_recovery_area/ORCLCDB_1/autobackup/2026_02_12/o1_mf_s_1225009470_nrv3kyl6_.bkp' cluster logs specify instance and container `kbcli cluster logs oracle-mxdgjj --tail 30 --instance oracle-mxdgjj-oracle-1 -c exporter --namespace default ` sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. sleep 60 seconds to check oracledb_exporter process status again. delete cluster oracle-mxdgjj `kbcli cluster delete oracle-mxdgjj --auto-approve --namespace default ` pod_info:oracle-mxdgjj-observer-0 1/1 Running 0 36m oracle-mxdgjj-oracle-0 4/4 Running 1 (38m ago) 59m oracle-mxdgjj-oracle-1 4/4 Running 4 (47m ago) 55m Cluster oracle-mxdgjj deleted pod_info:oracle-mxdgjj-oracle-0 4/4 Terminating 1 (39m ago) 59m oracle-mxdgjj-oracle-1 4/4 Terminating 4 (48m ago) 56m No resources found in default namespace. delete cluster pod done No resources found in default namespace. check cluster resource non-exist OK: pvc No resources found in default namespace. delete cluster done No resources found in default namespace. No resources found in default namespace. No resources found in default namespace. Oracle Test Suite All Done! Test Engine: oracle Test Type: 36 --------------------------------------Oracle (Topology = replication Replicas 2) Test Result-------------------------------------- [PASSED]|[Create]|[Topology=replication;ComponentDefinition=oracle-12c-1.0.0-alpha.0;ComponentVersion=oracle;ServiceVersion=12.2.0;]|[Description=Create a cluster with the specified topology replication with the specified component definition oracle-12c-1.0.0-alpha.0 and component version oracle and service version 12.2.0] [PASSED]|[Connect]|[ComponentName=oracle]|[Description=Connect to the cluster] [PASSED]|[NoFailover]|[HA=Network Duplicate;Durations=2m;ComponentName=oracle]|[Description=Simulates network duplicate fault thereby testing the application's resilience to potential slowness/unavailability of some replicas due to duplicate network.] [PASSED]|[Restart]|[ComponentName=oracle]|[Description=Restart the cluster specify component oracle] [PASSED]|[NoFailover]|[HA=DNS Error;Durations=2m;ComponentName=oracle]|[Description=Simulates conditions where pods experience DNS service errors for a period of time either due to expected/undesired processes thereby testing the application's resilience to potential slowness/unavailability of some replicas due to DNS service errors.] [PASSED]|[NoFailover]|[HA=DNS Random;Durations=2m;ComponentName=oracle]|[Description=Simulates conditions where pods experience random IP addresses being returned by the DNS service for a period of time either due to expected/undesired processes thereby testing the application's resilience to potential slowness/unavailability of some replicas due to the DNS service returning random IP addresses.] [PASSED]|[NoFailover]|[HA=Time Offset;Durations=2m;ComponentName=oracle]|[Description=Simulates a time offset scenario thereby testing the application's resilience to potential slowness/unavailability of some replicas due to time offset.] [PASSED]|[VolumeExpansion]|[ComponentName=oracle]|[Description=VolumeExpansion the cluster specify component oracle] [PASSED]|[NoFailover]|[HA=Network Delay;Durations=2m;ComponentName=oracle]|[Description=Simulates network delay fault thereby testing the application's resilience to potential slowness/unavailability of some replicas due to delay network.] [PASSED]|[VerticalScaling]|[ComponentName=oracle]|[Description=VerticalScaling the cluster specify component oracle] [PASSED]|[NoFailover]|[HA=Full CPU;Durations=2m;ComponentName=oracle]|[Description=Simulates conditions where pods experience CPU full either due to expected/undesired processes thereby testing the application's resilience to potential slowness/unavailability of some replicas due to high CPU load.] [PASSED]|[Reconfiguring]|[ComponentName=oracle;open_cursors=400]|[Description=Reconfiguring the cluster specify component oracle set open_cursors=400] [PASSED]|[SwitchOver]|[ComponentName=oracle]|[Description=SwitchOver the cluster specify component oracle] [PASSED]|[VolumeExpansion]|[ComponentName=oracle]|[Description=VolumeExpansion the cluster specify component oracle] [PASSED]|[Failover]|[HA=Pod Failure;Durations=2m;ComponentName=oracle]|[Description=Simulates conditions where pods experience failure for a period of time either due to expected/undesired processes thereby testing the application's resilience to potential slowness/unavailability of some replicas due to failure.] [PASSED]|[NoFailover]|[HA=Connection Stress;ComponentName=oracle]|[Description=Simulates conditions where pods experience connection stress either due to expected/undesired processes thereby testing the application's resilience to potential slowness/unavailability of some replicas due to high Connection load.] [PASSED]|[Restart]|[ComponentName=observer]|[Description=Restart the cluster specify component observer] [PASSED]|[HorizontalScaling Out]|[ComponentName=observer]|[Description=HorizontalScaling Out the cluster specify component observer] [PASSED]|[HorizontalScaling In]|[ComponentName=observer]|[Description=HorizontalScaling In the cluster specify component observer] [PASSED]|[Failover]|[HA=Network Loss;Durations=2m;ComponentName=oracle]|[Description=Simulates network loss fault thereby testing the application's resilience to potential slowness/unavailability of some replicas due to loss network.] [PASSED]|[VerticalScaling]|[ComponentName=observer]|[Description=VerticalScaling the cluster specify component observer] [PASSED]|[Update]|[TerminationPolicy=WipeOut]|[Description=Update the cluster TerminationPolicy WipeOut] [PASSED]|[Backup]|[BackupMethod=oracle-rman]|[Description=The cluster oracle-rman Backup] [PASSED]|[Delete Restore Cluster]|[BackupMethod=oracle-rman]|[Description=Delete the oracle-rman restore cluster] [PASSED]|[Delete]|[-]|[Description=Delete the cluster] [END]