[ 
https://issues.apache.org/jira/browse/FLINK-30790?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17682030#comment-17682030
 ] 

João Boto edited comment on FLINK-30790 at 1/30/23 2:30 PM:
------------------------------------------------------------

h3. Refactor parametrised class with multiple containers

This should reduce the time to start this classes, spreading the time for 
multiple classes.. This change will have little effect, but is important to 
improve latter the time and number of times container will be created.

Also will allow to define basic extension rules to tests that we want 
implemented on all databases.

Commits:

[FLINK-30790] [ Refactor JdbcDataTypeTest create tests by 
dialect|https://github.com/apache/flink-connector-jdbc/pull/18/commits/31aae786b67f734af27572579630172a6ce37ec0]

[[FLINK-30790] Refactor JdbcExactlyOnceSinkE2eTest create tests by 
dialect|https://github.com/apache/flink-connector-jdbc/pull/18/commits/3db75f5e7c281a1bdd42ab96afe17906ab6245b0]

[[FLINK-30790] Refactor MySqlCatalogITCase create tests by database 
version|https://github.com/apache/flink-connector-jdbc/pull/18/commits/12b51a19c1e615481f0b9b94a017a2c1ef0a6c11]

 
{code:java}
[INFO] Flink : Connectors : JDBC : Parent ................. SUCCESS [ 24.647 s]
[INFO] Flink : Connectors : JDBC .......................... SUCCESS [08:41 min]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  09:16 min
[INFO] Finished at: 2023-01-30T11:37:35Z
[INFO] ------------------------------------------------------------------------ 
{code}


was (Author: eskabetxe):
h3. Refactor parametrised class with multiple containers

This should reduce the time to start this classes, spreading the time for 
multiple classes.. This change will have little effect, but is important to 
improve latter the time and number of times container will be created.

Also will allow to define basic extension rules to tests that we want 
implemented on all databases.

Commits:

[FLINK-30790 Refactor JdbcDataTypeTest create tests by 
dialect|https://github.com/apache/flink-connector-jdbc/pull/18/commits/31aae786b67f734af27572579630172a6ce37ec0]

[[FLINK-30790] Refactor JdbcExactlyOnceSinkE2eTest create tests by 
dialect|https://github.com/apache/flink-connector-jdbc/pull/18/commits/3db75f5e7c281a1bdd42ab96afe17906ab6245b0]

[[FLINK-30790] Refactor MySqlCatalogITCase create tests by database 
version|https://github.com/apache/flink-connector-jdbc/pull/18/commits/12b51a19c1e615481f0b9b94a017a2c1ef0a6c11]

 
{code:java}
[INFO] Flink : Connectors : JDBC : Parent ................. SUCCESS [ 24.647 s]
[INFO] Flink : Connectors : JDBC .......................... SUCCESS [08:41 min]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  09:16 min
[INFO] Finished at: 2023-01-30T11:37:35Z
[INFO] ------------------------------------------------------------------------ 
{code}

> [Connectors/Jdbc] Refactor of testings
> --------------------------------------
>
>                 Key: FLINK-30790
>                 URL: https://issues.apache.org/jira/browse/FLINK-30790
>             Project: Flink
>          Issue Type: Improvement
>          Components: Connectors / JDBC
>            Reporter: João Boto
>            Assignee: João Boto
>            Priority: Major
>              Labels: pull-request-available
>
> This is one attempt to get better results executing tests on jdbc connector..
> In current master branch it takes like 15m to execute all tests on CI (it 
> will vary from 10m to 20m)
>  
> {code:java}
> [INFO] Reactor Summary for Flink : Connectors : JDBC : Parent 3.1-SNAPSHOT:
> [INFO] 
> [INFO] Flink : Connectors : JDBC : Parent ................. SUCCESS [ 22.019 
> s]
> [INFO] Flink : Connectors : JDBC .......................... SUCCESS [13:45 
> min]
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] BUILD SUCCESS
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] Total time:  14:07 min
> [INFO] Finished at: 2022-12-23T09:22:46Z {code}
>  
>  
> The main problems that we see on testings are:
>  * Parameterized tests that setup database containers (this tends to be more 
> time consuming as another databases are added)
>  * Creation of containers by class (this is fine as we want test to be 
> independents, but the database could be setup 1time and cleaned at end of 
> each class)
>  * No easy way to extend a test to another database, at the end we copy a lot 
> of code
>  * A lot of code for create and populate tables for testing. We have 
> JdbcTestBase that use JdbcTestFixture to create a kind of 'Book Store', but 
> this is used in a lot of test without the use of all tables that are 
> implemented on store. 
>  
>  



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

Reply via email to