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

Andrey Loskutov commented on SUREFIRE-2096:
-------------------------------------------

Just a guess: if you have lot of tests, you might run into memory issues, so it 
could be related to memory leak in SUREFIRE-2072? Or to descriptors leak in 
SUREFIRE-2094? Both issues were introduced in 3.0 M6. 

> Major performance difference between 3.0.0-M5 and 3.0.0-M6/3.0.0-M7
> -------------------------------------------------------------------
>
>                 Key: SUREFIRE-2096
>                 URL: https://issues.apache.org/jira/browse/SUREFIRE-2096
>             Project: Maven Surefire
>          Issue Type: Bug
>          Components: Maven Failsafe Plugin, Maven Surefire Plugin
>    Affects Versions: 3.0.0-M6, 3.0.0-M7
>            Reporter: Allan Jones
>            Priority: Major
>
> After upgrading surefire/failsafe to the latest milestone (3.0.0-M7), we 
> faced a major performance problem in our integration tests. They increased 
> nearly 23 minutes (+30%).
> This is the 2nd upgrade attempt. When 3.0.0-M6 was released, we did the 
> upgrade and after a couple of days we had to revert back to 3.0.0-M5 because 
> all our integration test jobs were running nearly 30% slower.
> ----
>  
> These are the latest results we have:
> Before with 3.0.0-M5:
> {{[2022-06-07T06:59:56.398Z] [INFO] Main Server DB Tests [project-test-db] 
> SUCCESS [ 01:16 h]}}
>  
> After with 3.0.0-M7:
> {{[2022-06-07T18:09:21.297Z] [INFO] Main Server DB Tests [project-test-db] 
> SUCCESS [ 01:39 h]}}
> ----
>  
> Our integration tests are organized in 3 reusable forks. They are JUnit 5 
> Suites. On 3.0.0-M5, the maven output log was only showing the Suites and 
> their time (the whole output):
> {{[2022-06-07T05:38:02.737Z] [INFO] Running 
> AbcIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T05:38:02.995Z] [INFO] Running 
> DatabaseBasedIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T05:38:02.996Z] [INFO] Running 
> OptimizerSpecificTestCategoryDynamicSuite}}
> {{[2022-06-07T06:07:10.541Z] [WARNING] Tests run: 1244, Failures: 0, Errors: 
> 0, Skipped: 3, Time elapsed: 1,743.768 s - in 
> DatabaseBasedIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:07:15.833Z] [INFO] Running 
> DefServiceIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:17:52.723Z] [WARNING] Tests run: 703, Failures: 0, Errors: 
> 0, Skipped: 7, Time elapsed: 2,376.439 s - in 
> AbcIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:17:52.723Z] [INFO] Running 
> MnoRestServiceIntegrationTestDynamicSuite}}
> {{[2022-06-07T06:27:59.428Z] [WARNING] Tests run: 1009, Failures: 0, Errors: 
> 0, Skipped: 2, Time elapsed: 1,243.484 s - in 
> DefServiceIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:28:07.556Z] [INFO] Running 
> TransactionAwareDefServiceIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:36:44.297Z] [WARNING] Tests run: 69, Failures: 0, Errors: 0, 
> Skipped: 1, Time elapsed: 3,519.25 s - in 
> OptimizerSpecificTestCategoryDynamicSuite}}
> {{[2022-06-07T06:36:50.852Z] [INFO] Running 
> GhiIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:42:27.435Z] [WARNING] Tests run: 185, Failures: 0, Errors: 
> 0, Skipped: 1, Time elapsed: 335.077 s - in 
> GhiIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:42:37.405Z] [INFO] Running 
> JdoIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:45:28.867Z] [WARNING] Tests run: 1028, Failures: 0, Errors: 
> 0, Skipped: 2, Time elapsed: 1,038.893 s - in 
> TransactionAwareDefServiceIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:45:34.135Z] [INFO] Running 
> JklAuthorizationRestServiceIntegrationTestDynamicSuite}}
> {{[2022-06-07T06:46:41.815Z] [INFO] Tests run: 9, Failures: 0, Errors: 0, 
> Skipped: 0, Time elapsed: 57.734 s - in 
> JklAuthorizationRestServiceIntegrationTestDynamicSuite}}
> {{[2022-06-07T06:46:41.815Z] [INFO] Running 
> JklBroadcastIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:48:03.233Z] [INFO] Tests run: 3176, Failures: 0, Errors: 0, 
> Skipped: 0, Time elapsed: 317.062 s - in 
> JdoIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:48:03.233Z] [INFO] Tests run: 17, Failures: 0, Errors: 0, 
> Skipped: 0, Time elapsed: 74.634 s - in 
> JklBroadcastIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:48:03.233Z] [INFO] Running 
> JklRestServiceIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:48:05.132Z] [INFO] Running 
> EnversIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:48:07.031Z] [WARNING] Tests run: 1092, Failures: 0, Errors: 
> 0, Skipped: 1, Time elapsed: 1,819.178 s - in 
> MnoRestServiceIntegrationTestDynamicSuite}}
> {{[2022-06-07T06:48:15.148Z] [INFO] Running 
> LdapIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:49:11.394Z] [INFO] Tests run: 4, Failures: 0, Errors: 0, 
> Skipped: 0, Time elapsed: 48.07 s - in 
> LdapIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:49:11.394Z] [INFO] Tests run: 62, Failures: 0, Errors: 0, 
> Skipped: 0, Time elapsed: 58.879 s - in 
> EnversIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:49:11.395Z] [INFO] Running 
> ObjectSecurityIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:49:11.395Z] [INFO] Running 
> SecondLevelCacheTestCategoryDynamicSuite}}
> {{[2022-06-07T06:50:47.898Z] [INFO] Tests run: 160, Failures: 0, Errors: 0, 
> Skipped: 0, Time elapsed: 85.201 s - in 
> ObjectSecurityIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:50:47.898Z] [INFO] Tests run: 20, Failures: 0, Errors: 0, 
> Skipped: 0, Time elapsed: 93.342 s - in 
> SecondLevelCacheTestCategoryDynamicSuite}}
> {{[2022-06-07T06:50:47.898Z] [INFO] Running 
> MnoAuthorizationRestServiceIntegrationTestDynamicSuite}}
> {{[2022-06-07T06:50:48.830Z] [WARNING] Tests run: 277, Failures: 0, Errors: 
> 0, Skipped: 2, Time elapsed: 167.534 s - in 
> JklRestServiceIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T06:50:53.013Z] [INFO] Running 
> MnoRestServiceWithGhiIntegrationTestDynamicSuite}}
> {{[2022-06-07T06:50:58.272Z] [INFO] Running PqrTestCategoryDynamicSuite}}
> {{[2022-06-07T06:52:19.688Z] [INFO] Tests run: 4, Failures: 0, Errors: 0, 
> Skipped: 0, Time elapsed: 90.355 s - in 
> MnoAuthorizationRestServiceIntegrationTestDynamicSuite}}
> {{[2022-06-07T06:52:20.254Z] [INFO] Tests run: 5, Failures: 0, Errors: 0, 
> Skipped: 0, Time elapsed: 87.234 s - in 
> MnoRestServiceWithGhiIntegrationTestDynamicSuite}}
> {{[2022-06-07T06:53:16.466Z] [INFO] Tests run: 2, Failures: 0, Errors: 0, 
> Skipped: 0, Time elapsed: 131.736 s - in PqrTestCategoryDynamicSuite}}
> {{[2022-06-07T06:53:16.466Z] [INFO] }}
> {{[2022-06-07T06:53:16.466Z] [INFO] Results:}}
> {{[2022-06-07T06:53:16.466Z] [INFO] }}
> {{[2022-06-07T06:53:16.466Z] [WARNING] Tests run: 9066, Failures: 0, Errors: 
> 0, Skipped: 19}}
>  
> ----
> Now with 3.0.0-M7 (or even 3.0.0-M6), we see a line for every single test 
> inside the suite in maven output (just beginning of the output):
> {{[2022-06-07T16:32:36.387Z] [INFO] Running 
> com.aaa.ccc.testcommon.suite.order.b.AbcIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T16:32:36.388Z] [INFO] Running 
> com.aaa.ccc.testcommon.suite.order.a.OptimizerSpecificTestCategoryDynamicSuite}}
> {{[2022-06-07T16:32:36.388Z] [INFO] Running 
> com.bbb.workflow.statemachine.abc.statemachine.AbcStatePart2IntegrationTest}}
> {{[2022-06-07T16:32:36.388Z] [INFO] Running 
> com.bbb.optimization.service.EngineIntegrationTest}}
> {{[2022-06-07T16:32:36.388Z] [INFO] Running 
> com.aaa.ccc.testcommon.suite.order.c.DatabaseBasedIntegrationTestCategoryDynamicSuite}}
> {{[2022-06-07T16:32:36.388Z] [INFO] Running 
> com.bbb.bi.TableHelperIntegrationTest}}
> {{[2022-06-07T16:33:15.086Z] [INFO] Tests run: 1, Failures: 0, Errors: 0, 
> Skipped: 0, Time elapsed: 38.042 s - in 
> com.bbb.bi.TableHelperIntegrationTest}}
> {{[2022-06-07T16:33:15.086Z] [INFO] Running 
> com.bbb.agreement.importer.dao.jdbc.AdvDaoIntegrationTest}}
> {{[2022-06-07T16:33:15.086Z] [INFO] Tests run: 5, Failures: 0, Errors: 0, 
> Skipped: 0, Time elapsed: 0.246 s - in 
> com.bbb.agreement.importer.dao.jdbc.AdvDaoIntegrationTest}}
> {{[2022-06-07T16:33:15.086Z] [INFO] Running 
> com.bbb.housekeeping.task.DefabcIntegrationTest}}
> ----
>  
>  
> I did some investigation and my initial guess is that it's related to: 
> https://issues.apache.org/jira/browse/SUREFIRE-1926 and 
> [https://github.com/apache/maven-surefire/pull/419/files] (which makes all 
> methods in PluginConsoleLogger synchronized)
>  
> I had no issues with the previous behaviour that was only logging the Suites, 
> and not the individual tests. I also don't mind logging each individual test 
> in maven output, but without the expense of such huge performance difference. 
> I tried to see if there was a way to disable or configure this behaviour, but 
> with no luck.
>  



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to