You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/documentation/features.md
+9-9Lines changed: 9 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -13,8 +13,8 @@ other configuration options are provided to fine tune or turn off these features
13
13
14
14
## Controller Execution in a Nutshell
15
15
16
-
Controller execution is always a triggered by an event. Events typically come from the custom resource
17
-
(i.e. custom resource is created, update or deleted) that the controller is watching, but also from different sources
16
+
Controller execution is always triggered by an event. Events typically come from the custom resource
17
+
(i.e. custom resource is created, updated or deleted) that the controller is watching, but also from different sources
18
18
(see event sources). When an event is received reconciliation is executed, unless there is already a reconciliation
19
19
happening for a particular custom resource. In other words it is guaranteed by the framework that no concurrent
20
20
reconciliation happens for a custom resource.
@@ -23,7 +23,7 @@ After a reconciliation (
23
23
i.e. [ResourceController](https://github.com/java-operator-sdk/java-operator-sdk/blob/master/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/ResourceController.java)
24
24
called), a post-processing phase follows, where typically framework checks if:
25
25
26
-
-there was exception thrown during execution, if yes schedules a retry.
26
+
-an exception was thrown during execution, if yes schedules a retry.
27
27
- there are new events received during the controller execution, if yes schedule the execution again.
28
28
- there is an instruction to re-schedule the execution for the future, if yes schedule a timer event with the specified
makes sure that a reconciliation happens when a custom resource is instructed to be deleted. Typical case when it's
38
+
make sure that a reconciliation happens when a custom resource is instructed to be deleted. Typical case when it's
39
39
useful, when an operator is down (pod not running). Without a finalizer the reconciliation - thus the cleanup
40
40
i.e. [`ResourceController.deleteResource(...)`](https://github.com/java-operator-sdk/java-operator-sdk/blob/master/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/ResourceController.java)
41
41
42
42
- would not happen if a custom resource is deleted.
43
43
44
44
Finalizers are automatically added by the framework as the first step, thus when a custom resource is created, but
45
-
before the first reconciliation, custom resource is updated via a Kubernetes API call. As a results of this update, the
46
-
finalizer will be present. The subsequent event will be received, what will trigger the first reconciliation.
45
+
before the first reconciliation, the custom resource is updated via a Kubernetes API call. As a result of this update, the
46
+
finalizer will be present. The subsequent event will be received, which will trigger the first reconciliation.
47
47
48
48
The finalizer that is automatically added will be also removed after the `deleteResource` is executed on the controller.
49
49
However, the removal behavior can be further customized, and can be instructed to "not remove yet" - this is useful just
50
-
in some specific corner cases, when there would be long waiting period for some dependent resource cleanup.
50
+
in some specific corner cases, when there would be a long waiting period for some dependent resource cleanup.
51
51
52
-
The name of the finalizers can be specified, in case it is not a name will be generated.
52
+
The name of the finalizers can be specified, in case it is not, a name will be generated.
53
53
54
54
This behavior can be turned off, so when configured no finalizer will be added or removed.
55
55
See [`@Controller`](https://github.com/java-operator-sdk/java-operator-sdk/blob/master/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/Controller.java)
56
56
annotation for more details.
57
57
58
58
### When not to Use Finalizers?
59
59
60
-
Typically, automated finalizer handling should is turned off, when **all** the cleanup of the dependent resources is
60
+
Typically, automated finalizer handling should be turned off, when **all** the cleanup of the dependent resources is
0 commit comments