[ 
https://issues.apache.org/jira/browse/FLINK-39494?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yuepeng Pan resolved FLINK-39494.
---------------------------------
    Resolution: Done

> Release Testing: Verify FLIP-487: Show history of rescales in Web UI for 
> AdaptiveScheduler
> ------------------------------------------------------------------------------------------
>
>                 Key: FLINK-39494
>                 URL: https://issues.apache.org/jira/browse/FLINK-39494
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Tests
>    Affects Versions: 2.3.0
>            Reporter: Yuepeng Pan
>            Assignee: Chanhae Oh
>            Priority: Blocker
>             Fix For: 2.3.0
>
>         Attachments: image-2026-04-29-22-45-23-546.png, 
> image-2026-04-29-22-49-25-250.png, image-2026-04-29-22-51-54-495.png, 
> image-2026-04-29-22-52-08-177.png, image-2026-04-29-22-52-20-391.png, 
> image-2026-04-29-22-52-36-259.png, image-2026-04-29-22-59-13-102.png, 
> image-2026-04-29-22-59-27-876.png, image-2026-04-29-22-59-36-834.png, 
> image-2026-04-29-23-00-12-453.png, image-2026-04-29-23-00-23-748.png, 
> image-2026-04-29-23-01-35-076.png, image-2026-04-29-23-04-24-498.png, 
> image-2026-04-29-23-04-33-591.png, image-2026-04-29-23-06-40-867.png, 
> image-2026-04-29-23-06-52-568.png, image-2026-04-29-23-07-21-359.png, 
> image-2026-04-29-23-07-44-964.png, image-2026-04-29-23-08-00-925.png, 
> image-2026-04-29-23-09-05-876.png, image-2026-04-29-23-09-21-305.png, 
> image-2026-04-29-23-09-31-426.png, image-2026-04-29-23-09-41-317.png, 
> image-2026-04-29-23-09-53-011.png, image-2026-04-29-23-10-02-825.png, 
> image-2026-05-09-02-00-49-444.png
>
>
> h1. 1 Prepare to build Flink binaries and test jobs
>  
> 1.1. Environment requirements:
> Standard JDK and Maven setups for building Flink from source will suffice.
> h3.  
> 1.2. Build flink binary file
> {code:java}
> # cd into you target directory
> git clone https://github.com/apache/flink # $repo_path, the placeholder name 
> will be used later.
> cd flink
> git checkout ${target_tag or target_branch}
> mvn clean package -DskipTests -T 4C {code}
> h3.  
> 1.3. Build an example job
> {code:java}
> mvn archetype:generate \
> -DarchetypeGroupId=org.apache.flink \
> -DarchetypeArtifactId=flink-walkthrough-datastream-java \
> -DarchetypeVersion=2.2.0 \
> -DgroupId=frauddetection \
> -DartifactId=frauddetection \
> -Dversion=0.1 \
> -Dpackage=frauddetection \
> -DinteractiveMode=false
> cd frauddetection
> mvn clean package -DskipTests {code}
> h1. 2 Testing cases for streaming jobs
> h2. 2.1 For disabled adaptive scheduler and disabled max rescale history
> 2.1.1. run shell command:
>  
> {code:java}
> cd $repo_path/build-target
> ./bin/start-cluster.sh {code}
> 2.1.2. Visit [http://localhost:8081/] 
> 2.1.3. Use flink WEB UI to submit the frauddetection jar as a job.
> 2.1.4. Check if the UI shown logic is correct 
> The testing case will be expected if the there isn't Rescale tab page in UI 
> like follows, 
> If not , this test would be tagged failed.
>  
> !image-2026-04-29-22-45-23-546.png!
> 2.1.5. run shell command to reset the env
> {code:java}
> cd $repo_path/build-target
> ./bin/stop-cluster.sh {code}
>  
>  
> h2. 2.2 For disabled adaptive scheduler and enabled rescale history
>  
> 2.2.1. Set the rescale history option in 
> `$repo_path/build-target/conf/config.yaml` as follows:
>  
> {code:java}
> web:
>   adaptive-scheduler:
>     rescale-history:
>       size: 2 {code}
> 2.2.2. run shell command: 
>  
> {code:java}
> cd $repo_path/build-target
> ./bin/start-cluster.sh {code}
> 2.2.3. then visit [http://localhost:8081/]
> 2.2.4. Use flink WEB UI to submit the frauddetection jar as a job.
> 2.2.5. Check that the testing case will be expected if the there isn't 
> Rescales tab page in UI like follows:
> after that,
> The testing case will be expected if the there isn't Rescale tab page in UI 
> like follows, If not , this test would be tagged failed.
> !image-2026-04-29-22-49-25-250.png!
> 2.2.6. Delete the following changed config content in 
> `$repo_path/build-target/conf/config.yaml`
> {code:java}
> web:
>   adaptive-scheduler:
>     rescale-history:
>       size: 2 {code}
> 2.2.7 run shell command to stop flink cluster:
> {code:java}
> cd $repo_path/build-target
> ./bin/stop-cluster.sh {code}
>  
>  
> h2. 2.3 For enabled adaptive scheduler and disabled rescale history
>  
> 2.3.1. Add the rescale history option into 
> `$repo_path/build-target/conf/config.yaml` as follows:
>  
> {code:java}
> jobmanager:
>   scheduler: adaptive {code}
> 2.3.2. run shell command: 
>  
> {code:java}
> cd $repo_path/build-target
> ./bin/start-cluster.sh {code}
> 2.3.3. Visit [http://localhost:8081/]
> 2.3.4. Use flink WEB UI to submit the frauddetection jar as a job.
> 2.3.5. Check UI
> The testing case will be expected if the there isn't Rescale tab page in UI 
> like follows, if not , this test would be tagged failed:
>  - For Overview page
>  
> !image-2026-04-29-22-51-54-495.png!
>  - For History page
>  
> !image-2026-04-29-22-52-08-177.png!
>  - For Summary page
>  
> !image-2026-04-29-22-52-20-391.png!
>  - For Configuration page
> Only the Configuration sub-page is not empty.
> !image-2026-04-29-22-52-36-259.png!
> 2.3.6. Delete the config changed content in 
> `$repo_path/build-target/conf/config.yaml`
>  
> {code:java}
> jobmanager:
>   scheduler: adaptive {code}
> 2.3.7. run shell command to stop cluster
> {code:java}
> cd $repo_path/build-target
> ./bin/stop-cluster.sh {code}
> h2. 2.4 For enabled adaptive scheduler and enabled rescale history
>  
> 2.4.1. Add the rescale history option in 
> `$repo_path/build-target/conf/config.yaml` as follows:
>  
> {code:java}
> jobmanager:
>   scheduler: adaptive
> web:
>   adaptive-scheduler:
>     rescale-history:
>       size: 3
> taskmanager:
>   numberOfTaskSlots: 8 {code}
> 2.4.2. run shell command:
>  
> {code:java}
> cd $repo_path/build-target
> ./bin/start-cluster.sh {code}
> 2.4.3. Visit [http://localhost:8081/]
> 2.4.4. Use flink WEB UI to submit the frauddetection jar as a job.
> 2.4.5. Manually adjust the job parallelism to trigger a rescale. 
> After the job is successfully scheduled for the first time, as shown in the 
> figure below, manually adjust the job parallelism twice via the subsequent 
> prompts to actively generate two new rescales.
>  
> !image-2026-04-29-22-59-13-102.png!
> Please note that the interval between the two manual rescale triggers must be 
> very short. As shown in the figure below, immediately after sending the first 
> request to increase parallelism (a notification will appear in the 
> upper-right corner), initiate the second parallelism increase without delay. 
> Then, verify whether an 'ignored' type rescale is generated. Since the 
> minimum interval between two manual rescales can be difficult to gauge, it is 
> recommended to repeat the attempt several times until an 'ignored' rescale 
> record appears. This is primarily to test whether the generation of 'Ignored' 
> type Rescales is functioning correctly
>  
> !image-2026-04-29-22-59-27-876.png!
> !image-2026-04-29-22-59-36-834.png!
> 2.4.6. Check the related UI pages
>  - Overview
> !image-2026-04-29-23-04-24-498.png!
>  - Overview-View details and table header hints.
> !image-2026-04-29-23-06-40-867.png!
>  - History
>  -- for brief rescale view
> !image-2026-04-29-23-06-52-568.png!
> – View details and table header hints. 
>  
> !image-2026-04-29-23-07-21-359.png!
> – for detailed rescale
>  
> !image-2026-04-29-23-07-44-964.png!
> !image-2026-04-29-23-08-00-925.png!
> – View details and table header hints. 
>  
> !image-2026-04-29-23-09-05-876.png!
>  - Summary
> !image-2026-04-29-23-09-21-305.png!
> !image-2026-04-29-23-09-31-426.png!
>  - Configuration
>  
> !image-2026-04-29-23-09-41-317.png!
> 2.4.7. Manually trigger another rescale and verify whether the History page 
> retains the most recent rescale records as specified by the 
> `web.adaptive-scheduler.rescale-history.size` configuration value.
> !image-2026-04-29-23-09-53-011.png!
> !image-2026-04-29-23-10-02-825.png!
> 2.4.8. Run shell command to stop cluster: 
> ```shell
> cd $repo_path/build-target
> ./bin/stop-cluster.sh
> ```
>  
>  
> h1. 3 Please record anything unexpected by comments in the current ticket.
> Thank you.
>  
>  
>  
>  
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to