diff --git a/bug_reproduction_test_plans/cass-operator-intermediate-state-2.yaml b/bug_reproduction_test_plans/cass-operator-intermediate-state-2.yaml new file mode 100644 index 00000000000..6d4a4595922 --- /dev/null +++ b/bug_reproduction_test_plans/cass-operator-intermediate-state-2.yaml @@ -0,0 +1,19 @@ +workload: recreate +actions: +- actionType: restartController + controllerLabel: cass-operator + trigger: + definitions: + - triggerName: trigger1 + condition: + conditionType: onObjectUpdate + resourceKey: pod/default/cluster1-cassandra-datacenter-default-sts-0 + prevStateDiff: '{"metadata": {"labels": {"cassandra.datastax.com/node-state": + "Ready-to-Start"}}}' + curStateDiff: '{"metadata": {"labels": {"cassandra.datastax.com/node-state": + "Starting", "cassandra.datastax.com/seed-node": "true"}}}' + occurrence: 2 + observationPoint: + when: afterControllerWrite + by: github.com/datastax/cass-operator/operator/pkg/reconciliation.(*ReconcileCassandraDatacenter) + expression: trigger1 diff --git a/bug_reproduction_test_plans/nifikop-indirect-1.yaml b/bug_reproduction_test_plans/nifikop-indirect-1.yaml new file mode 100644 index 00000000000..0cdd28ca719 --- /dev/null +++ b/bug_reproduction_test_plans/nifikop-indirect-1.yaml @@ -0,0 +1,20 @@ +workload: scaledown-scaleup +actions: +- actionType: restartController + controllerLabel: nifikop-operator + trigger: + definitions: + - triggerName: trigger1 + condition: + conditionType: onObjectUpdate + resourceKey: nificluster/default/simplenifi + prevStateDiff: '{"metadata": {}, "status": {"prometheusReportingTask": {"version": + 0}}}' + curStateDiff: '{"metadata": {"finalizers": ["nificlusters.nifi.orange.com/finalizer"]}, + "status": {"prometheusReportingTask": {"version": 2}, "rootProcessGroupId": + "SIEVE-NON-NIL"}}' + occurrence: 1 + observationPoint: + when: afterControllerWrite + by: github.com/Orange-OpenSource/nifikop/controllers.(*NifiClusterReconciler) + expression: trigger1 diff --git a/bug_reproduction_test_plans/nifikop-intermediate-state-2.yaml b/bug_reproduction_test_plans/nifikop-intermediate-state-2.yaml new file mode 100644 index 00000000000..874602e3ddb --- /dev/null +++ b/bug_reproduction_test_plans/nifikop-intermediate-state-2.yaml @@ -0,0 +1,21 @@ +workload: recreate +actions: +- actionType: restartController + controllerLabel: nifikop-operator + trigger: + definitions: + - triggerName: trigger1 + condition: + conditionType: onObjectUpdate + resourceKey: nificluster/default/simplenifi + prevStateDiff: '{"metadata": {"selfLink": "/apis/nifi.orange.com/v1alpha1/namespaces/default/nificlusters/simplenifi"}, + "status": {"state": ""}}' + curStateDiff: '{"metadata": {"selfLink": "/apis/nifi.orange.com/v1alpha1/namespaces/default/nificlusters/simplenifi/status"}, + "status": {"nodesState": {"1": {"configurationState": "ConfigInSync", "gracefulActionState": + {"actionState": "", "errorMessage": ""}, "initClusterNode": true}}, "state": + "ClusterReconciling"}}' + occurrence: 2 + observationPoint: + when: afterControllerWrite + by: github.com/Orange-OpenSource/nifikop/controllers.(*NifiClusterReconciler) + expression: trigger1 diff --git a/bug_reproduction_test_plans/xtradb-operator-intermediate-state-3.yaml b/bug_reproduction_test_plans/xtradb-operator-intermediate-state-3.yaml new file mode 100644 index 00000000000..f19e280004c --- /dev/null +++ b/bug_reproduction_test_plans/xtradb-operator-intermediate-state-3.yaml @@ -0,0 +1,15 @@ +workload: recreate +actions: +- actionType: restartController + controllerLabel: xtradb-operator + trigger: + definitions: + - triggerName: trigger1 + condition: + conditionType: onObjectDelete + resourceKey: statefulset/default/xtradb-cluster-pxc + occurrence: 1 + observationPoint: + when: afterControllerWrite + by: github.com/percona/percona-xtradb-cluster-operator/pkg/controller/pxc.(*ReconcilePerconaXtraDBCluster) + expression: trigger1 diff --git a/bug_reproduction_test_plans/zookeeper-operator-indirect-2.yaml b/bug_reproduction_test_plans/zookeeper-operator-indirect-2.yaml new file mode 100644 index 00000000000..4bbd80ecfb0 --- /dev/null +++ b/bug_reproduction_test_plans/zookeeper-operator-indirect-2.yaml @@ -0,0 +1,39 @@ +workload: scaledown-scaleup +actions: +- actionType: pauseController + pauseAt: beforeControllerRead + pauseScope: zookeepercluster/default/zookeeper-cluster + avoidOngoingRead: true + trigger: + definitions: + - triggerName: trigger1 + condition: + conditionType: onObjectCreate + resourceKey: zookeepercluster/default/zookeeper-cluster + occurrence: 1 + observationPoint: + when: beforeControllerRecv + by: informer + expression: trigger1 +- actionType: resumeController + pauseAt: beforeControllerRead + pauseScope: zookeepercluster/default/zookeeper-cluster + trigger: + definitions: + - triggerName: trigger2 + condition: + conditionType: onObjectUpdate + resourceKey: zookeepercluster/default/zookeeper-cluster + occurrence: 1 + observationPoint: + when: afterControllerRecv + by: informer + - triggerName: trigger3 + condition: + conditionType: onObjectDelete + resourceKey: zookeepercluster/default/zookeeper-cluster + occurrence: 1 + observationPoint: + when: afterControllerRecv + by: informer + expression: trigger2|trigger3 diff --git a/reproduce_bugs.py b/reproduce_bugs.py index 0bc5deed71d..0076f4e0958 100644 --- a/reproduce_bugs.py +++ b/reproduce_bugs.py @@ -59,6 +59,7 @@ def after_reproducing_cassandra_operator_indirect_1(): reprod_map = { "cass-operator": { "intermediate-state-1": ["recreate", "cass-operator-intermediate-state-1.yaml"], + "intermediate-state-2": ["recreate", "cass-operator-intermediate-state-2.yaml"], "stale-state-1": ["recreate", "cass-operator-stale-state-1.yaml"], }, "cassandra-operator": { @@ -119,6 +120,8 @@ def after_reproducing_cassandra_operator_indirect_1(): }, "nifikop-operator": { "intermediate-state-1": ["change-config", "nifikop-intermediate-state-1.yaml"], + "intermediate-state-2": ["recreate", "nifikop-intermediate-state-2.yaml"], + "indirect-1": ["scaledown-scaleup", "nifikop-indirect-1.yaml"], }, "rabbitmq-operator": { "intermediate-state-1": [ @@ -141,6 +144,10 @@ def after_reproducing_cassandra_operator_indirect_1(): "run-cert-manager", "xtradb-operator-intermediate-state-2.yaml", ], + "intermediate-state-3": [ + "recreate", + "xtradb-operator-intermediate-state-3.yaml", + ], "stale-state-1": ["recreate", "xtradb-operator-stale-state-1.yaml"], "stale-state-2": [ "disable-enable-haproxy", @@ -177,6 +184,7 @@ def after_reproducing_cassandra_operator_indirect_1(): "stale-state-1": ["recreate", "zookeeper-operator-stale-state-1.yaml"], "stale-state-2": ["scaledown-scaleup", "zookeeper-operator-stale-state-2.yaml"], "indirect-1": ["recreate", "zookeeper-operator-indirect-1.yaml"], + "indirect-2": ["scaledown-scaleup", "zookeeper-operator-indirect-2.yaml"], }, }