rkhachatryan opened a new pull request #11899: URL: https://github.com/apache/flink/pull/11899
## What is the purpose of the change Current behavior of forcing savepoints causes excess of max-concurrent-checkpoints limit. Which violates current Unaligned Checkpoints (UC) assumption of a single concurrent barrier. ## Brief change log 1. Remove periodicTriggeringSuspended. Instead, if periodic request can't be executed now is ignored. 2. Check queue before executing a new request (not after). 3. Execute queued request when pending checkpoint is completed (instead of resuming timer). 4. Don't set CheckpointRequest.force in UC mode. 5. Change requests queue to PriorityQueue to prioritize savepoints. Limit its size. 6. Move all request-related decision logic into one place (and one sync block). 7. For savepoints, if running in UC mode and limit is reached then enqueue request instead of forcing it 8. Don't throw trigger exceptions. CheckpointFailureManager ignores them ## Verifying this change This change added tests and can be verified as follows: - Added `CheckpointCoordinatorTest.testSavepointScheduledInUnalignedMode` to test new CheckpointCoordinator behavior (savepoints in UC mode) - Added `CheckpointRequestDeciderTest` to test decision logic in isolation ## Does this pull request potentially affect one of the following parts: - Dependencies (does it add or upgrade a dependency): no - The public API, i.e., is any changed class annotated with `@Public(Evolving)`: no - The serializers: no - The runtime per-record code paths (performance sensitive): no - Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: no - The S3 file system connector: no ## Documentation - Does this pull request introduce a new feature? no - If yes, how is the feature documented? not applicable ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org