This is an automated email from the ASF dual-hosted git repository.
gyfora pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/flink-kubernetes-operator.git
from 7d90ce87 [FLINK-35896][autoscaler] Handle exception events in
RescaleApiScalingRealizer (#856)
new 0f390144 [FLINK-35265] Implement FlinkStateSnapshot custom resource
new e711ac05 [FLINK-35265] Remove type field from CheckpointSpec
new 148f835d [FLINK-35265] Gracefully handle errors when fetching
checkpoint path
new 98196653 [FLINK-35265] Add namespace field to JobReference
The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
docs/content/docs/custom-resource/reference.md | 112 +++-
.../shortcodes/generated/dynamic_section.html | 12 +
.../kubernetes_operator_config_configuration.html | 12 +
e2e-tests/data/flinkdep-cr.yaml | 1 +
e2e-tests/data/sessionjob-cr.yaml | 1 +
.../flink/autoscaler/utils/DateTimeUtils.java | 11 +
flink-kubernetes-operator-api/pom.xml | 1 +
.../kubernetes/operator/api/CrdConstants.java | 3 +
...linkSessionJob.java => FlinkStateSnapshot.java} | 22 +-
.../api/listener/FlinkResourceListener.java | 58 +-
.../spec/{Resource.java => CheckpointSpec.java} | 20 +-
...sSpec.java => FlinkStateSnapshotReference.java} | 35 +-
...ionJobSpec.java => FlinkStateSnapshotSpec.java} | 32 +-
.../api/spec/{JobState.java => JobKind.java} | 20 +-
.../kubernetes/operator/api/spec/JobReference.java | 76 +++
.../kubernetes/operator/api/spec/JobSpec.java | 15 +-
.../spec/{IngressSpec.java => SavepointSpec.java} | 32 +-
.../operator/api/status/CheckpointInfo.java | 1 +
.../api/status/FlinkStateSnapshotStatus.java | 81 +++
.../kubernetes/operator/api/status/JobStatus.java | 7 +-
.../operator/api/status/SavepointFormatType.java | 3 +
.../operator/api/status/SavepointInfo.java | 6 +-
.../operator/api/status/SnapshotInfo.java | 1 +
.../operator/api/utils/BaseTestUtils.java | 66 +++
.../flink/kubernetes/operator/FlinkOperator.java | 34 +-
.../operator/config/FlinkConfigManager.java | 25 +-
.../config/FlinkOperatorConfiguration.java | 7 +-
.../config/KubernetesOperatorConfigOptions.java | 20 +
.../controller/FlinkStateSnapshotContext.java | 108 ++++
.../controller/FlinkStateSnapshotController.java | 200 +++++++
.../kubernetes/operator/listener/AuditUtils.java | 27 +-
...Metrics.java => FlinkStateSnapshotMetrics.java} | 38 +-
.../metrics/KubernetesOperatorMetricGroup.java | 5 +-
.../kubernetes/operator/metrics/MetricManager.java | 21 +-
.../operator/metrics/OperatorJosdkMetrics.java | 12 +-
.../operator/mutator/DefaultFlinkMutator.java | 6 +
.../operator/mutator/FlinkResourceMutator.java | 8 +
.../operator/observer/CheckpointFetchResult.java | 9 +-
...FetchResult.java => CheckpointStatsResult.java} | 18 +-
.../operator/observer/SnapshotObserver.java | 35 +-
.../observer/snapshot/StateSnapshotObserver.java | 171 ++++++
.../operator/reconciler/ReconciliationUtils.java | 20 +-
.../AbstractFlinkResourceReconciler.java | 39 +-
.../deployment/AbstractJobReconciler.java | 185 +++++-
.../deployment/ApplicationReconciler.java | 14 +-
.../sessionjob/SessionJobReconciler.java | 6 +-
.../snapshot/StateSnapshotReconciler.java | 226 +++++++
.../operator/service/AbstractFlinkService.java | 113 ++--
.../service/FlinkResourceContextFactory.java | 8 +
.../kubernetes/operator/service/FlinkService.java | 23 +-
.../operator/service/NativeFlinkService.java | 5 +-
.../operator/service/StandaloneFlinkService.java | 6 +-
.../kubernetes/operator/utils/EventRecorder.java | 72 ++-
.../operator/utils/EventSourceUtils.java | 105 ++++
.../utils/FlinkResourceExceptionUtils.java | 53 +-
.../operator/utils/FlinkStateSnapshotUtils.java | 393 +++++++++++++
.../operator/utils/KubernetesClientUtils.java | 17 +
.../kubernetes/operator/utils/SnapshotUtils.java | 62 +-
.../kubernetes/operator/utils/StatusRecorder.java | 72 ++-
.../operator/validation/DefaultValidator.java | 60 +-
.../validation/FlinkResourceValidator.java | 11 +
.../kubernetes/operator/OperatorTestBase.java | 11 +-
.../flink/kubernetes/operator/TestUtils.java | 31 +
.../kubernetes/operator/TestingFlinkService.java | 94 ++-
.../operator/autoscaler/AutoscalerFactoryTest.java | 7 +-
.../KubernetesAutoScalerEventHandlerTest.java | 67 ++-
.../controller/FailedDeploymentRestartTest.java | 37 +-
.../controller/FlinkDeploymentControllerTest.java | 140 ++---
.../controller/FlinkSessionJobControllerTest.java | 42 +-
.../FlinkStateSnapshotControllerTest.java | 655 +++++++++++++++++++++
.../TestingFlinkDeploymentController.java | 14 +-
.../TestingFlinkSessionJobController.java | 12 +-
.../listener/FlinkResourceListenerTest.java | 52 +-
.../operator/listener/TestingListener.java | 33 +-
.../kubernetes/operator/mutator/TestMutator.java | 6 +
.../operator/observer/SnapshotObserverTest.java | 12 +-
.../deployment/ApplicationObserverTest.java | 90 +--
.../sessionjob/FlinkSessionJobObserverTest.java | 42 +-
.../deployment/ApplicationReconcilerTest.java | 215 +++++--
.../ApplicationReconcilerUpgradeModeTest.java | 123 ++--
.../sessionjob/SessionJobReconcilerTest.java | 141 +++--
.../operator/service/AbstractFlinkServiceTest.java | 85 +--
.../operator/service/NativeFlinkServiceTest.java | 17 +-
.../operator/service/SecureFlinkServiceTest.java | 11 +-
...ector.java => FlinkResourceEventCollector.java} | 8 +-
....java => FlinkStateSnapshotEventCollector.java} | 13 +-
.../utils/FlinkStateSnapshotUtilsTest.java | 420 +++++++++++++
.../operator/validation/DefaultValidatorTest.java | 90 ++-
.../operator/validation/TestValidator.java | 8 +
.../operator/admission/FlinkOperatorWebhook.java | 7 +-
.../operator/admission/FlinkValidator.java | 43 ++
.../admission/informer/InformerManager.java | 51 +-
.../operator/admission/mutator/FlinkMutator.java | 16 +
.../operator/admission/AdmissionHandlerTest.java | 11 +-
.../admission/informer/InformerManagerTest.java | 2 +-
.../flink-kubernetes-operator/conf/flink-conf.yaml | 3 +
.../crds/flinkdeployments.flink.apache.org-v1.yml | 18 +
.../crds/flinksessionjobs.flink.apache.org-v1.yml | 18 +
.../flinkstatesnapshots.flink.apache.org-v1.yml | 97 +++
helm/flink-kubernetes-operator/templates/rbac.yaml | 3 +
.../templates/webhook.yaml | 1 +
pom.xml | 1 +
102 files changed, 4729 insertions(+), 880 deletions(-)
copy
flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/{FlinkSessionJob.java
=> FlinkStateSnapshot.java} (71%)
copy
flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/spec/{Resource.java
=> CheckpointSpec.java} (74%)
copy
flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/spec/{IngressSpec.java
=> FlinkStateSnapshotReference.java} (58%)
copy
flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/spec/{FlinkSessionJobSpec.java
=> FlinkStateSnapshotSpec.java} (59%)
copy
flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/spec/{JobState.java
=> JobKind.java} (71%)
create mode 100644
flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/spec/JobReference.java
copy
flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/spec/{IngressSpec.java
=> SavepointSpec.java} (63%)
create mode 100644
flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/status/FlinkStateSnapshotStatus.java
create mode 100644
flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkStateSnapshotContext.java
create mode 100644
flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkStateSnapshotController.java
copy
flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/metrics/{FlinkSessionJobMetrics.java
=> FlinkStateSnapshotMetrics.java} (61%)
copy
flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/observer/{SavepointFetchResult.java
=> CheckpointStatsResult.java} (65%)
create mode 100644
flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/observer/snapshot/StateSnapshotObserver.java
create mode 100644
flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/reconciler/snapshot/StateSnapshotReconciler.java
create mode 100644
flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/FlinkStateSnapshotUtils.java
create mode 100644
flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/controller/FlinkStateSnapshotControllerTest.java
copy
flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/utils/{EventCollector.java
=> FlinkResourceEventCollector.java} (80%)
rename
flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/utils/{EventCollector.java
=> FlinkStateSnapshotEventCollector.java} (71%)
create mode 100644
flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/utils/FlinkStateSnapshotUtilsTest.java
create mode 100644
helm/flink-kubernetes-operator/crds/flinkstatesnapshots.flink.apache.org-v1.yml