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

Till Rohrmann updated FLINK-24502:
----------------------------------
    Description: 
This ticket comes from this [PR 
discussion|https://github.com/apache/flink/pull/17403#issuecomment-939739016].

Currently, to update the migration tests w.r.t. a new released version, we need 
to the followings:
* Add new version to `MigrationVersion`
* Find out the test cases where the `MigrationVersion` is used, and update the 
test to cover the new version
* Generate required files (e.g., snapshot) for the new version, which is 
usually discovered by running into test failures.

The problems are:
* It requires too many manual efforts, which is more fragile.
* It is too complicate for release managers to work on, who may not have the 
required knowledges of the migration/serialization.

Potential improvements includes:
* Introduce something like `MigrationVersion#versionListSince(MigrationVersion 
sinceVersion)`, so that most test cases can get an up-to-date list of versions 
without changing the codes.
* Find a way to automate the regeneration of migration tests files. E.g., a 
script or maven profile that executes all test cases / methods with a specific 
annotation.

  was:
This ticket comes from this[ PR 
discussion|https://github.com/apache/flink/pull/17403#issuecomment-939739016].

Currently, to update the migration tests w.r.t. a new released version, we need 
to the followings:
* Add new version to `MigrationVersion`
* Find out the test cases where the `MigrationVersion` is used, and update the 
test to cover the new version
* Generate required files (e.g., snapshot) for the new version, which is 
usually discovered by running into test failures.

The problems are:
* It requires too many manual efforts, which is more fragile.
* It is too complicate for release managers to work on, who may not have the 
required knowledges of the migration/serialization.

Potential improvements includes:
* Introduce something like `MigrationVersion#versionListSince(MigrationVersion 
sinceVersion)`, so that most test cases can get an up-to-date list of versions 
without changing the codes.
* Find a way to automate the regeneration of migration tests files. E.g., a 
script or maven profile that executes all test cases / methods with a specific 
annotation.


> Automate updating of `MigrationVersion` and migration tests.
> ------------------------------------------------------------
>
>                 Key: FLINK-24502
>                 URL: https://issues.apache.org/jira/browse/FLINK-24502
>             Project: Flink
>          Issue Type: Improvement
>          Components: Release System
>            Reporter: Xintong Song
>            Priority: Major
>
> This ticket comes from this [PR 
> discussion|https://github.com/apache/flink/pull/17403#issuecomment-939739016].
> Currently, to update the migration tests w.r.t. a new released version, we 
> need to the followings:
> * Add new version to `MigrationVersion`
> * Find out the test cases where the `MigrationVersion` is used, and update 
> the test to cover the new version
> * Generate required files (e.g., snapshot) for the new version, which is 
> usually discovered by running into test failures.
> The problems are:
> * It requires too many manual efforts, which is more fragile.
> * It is too complicate for release managers to work on, who may not have the 
> required knowledges of the migration/serialization.
> Potential improvements includes:
> * Introduce something like 
> `MigrationVersion#versionListSince(MigrationVersion sinceVersion)`, so that 
> most test cases can get an up-to-date list of versions without changing the 
> codes.
> * Find a way to automate the regeneration of migration tests files. E.g., a 
> script or maven profile that executes all test cases / methods with a 
> specific annotation.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to