llowinge commented on issue #6433:
URL: https://github.com/apache/camel-quarkus/issues/6433#issuecomment-3489946500

   I've isolated my investigation to just one test class `JasyptTest`. 
   I wanted to investigate two parts of the slowness. First is maven phases, 
second the lifecycle of the test itself.
   To diagnose both groups, i've enabled timestamps for maven logs.
   I've also enabled maven-profiler (https://github.com/takari/maven-profiler) 
to see how much time takes each maven phase for comparsion.
   
   I've run both on Windows Server 2022 and Linux:
   `mvn clean test -Dtest="JasyptTest" 
-Dorg.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss,SSS 
-Dorg.slf4j.simpleLogger.showDateTime=true -Dmaven.profile`
   
   <details>
     <summary>Windows - click me</summary>
     
     ```
     mvn clean test 23s 640ms(100%)
     
org.apache.camel.quarkus:camel-quarkus-integration-test-jasypt:3.30.0-SNAPSHOT 
23s 625ms(99%)
       clean 125ms(0%)
         org.apache.maven.plugins:maven-clean-plugin:3.5.0 (default-clean) 
125ms(100%)
       validate 3s 547ms(15%)
         org.apache.maven.plugins:maven-resources-plugin:3.3.1 
(copy-camel-quarkus-enforcer-rules-xslt) 109ms(3%)
         org.apache.maven.plugins:maven-enforcer-plugin:3.5.0 
(enforce-java-version) 188ms(5%)
         org.apache.maven.plugins:maven-enforcer-plugin:3.5.0 
(camel-quarkus-enforcer-rules) 953ms(26%)
         org.codehaus.gmavenplus:gmavenplus-plugin:3.0.0 (sanity-checks) 2s 
281ms(64%)
       process-sources 2s 52ms(8%)
         net.revelc.code.formatter:formatter-maven-plugin:2.29.0 (format) 1s 
609ms(78%)
         net.revelc.code:impsort-maven-plugin:1.12.0 (sort-imports) 443ms(21%)
       process-resources 16ms(0%)
         org.apache.maven.plugins:maven-resources-plugin:3.3.1 
(default-resources) 16ms(100%)
         org.apache.maven.plugins:maven-resources-plugin:3.3.1 
(legal-resources) 0ms(0%)
       compile 1s 452ms(6%)
         org.apache.maven.plugins:maven-compiler-plugin:3.14.1 
(default-compile) 1s 452ms(100%)
       process-test-resources 16ms(0%)
         org.apache.maven.plugins:maven-resources-plugin:3.3.1 
(default-testResources) 16ms(100%)
       test-compile 828ms(3%)
         org.apache.maven.plugins:maven-compiler-plugin:3.14.1 
(default-testCompile) 828ms(100%)
       process-test-classes 141ms(0%)
         org.codehaus.gmavenplus:gmavenplus-plugin:3.0.0 
(generate-test-container-config) 141ms(100%)
       test 13s 885ms(58%)
         org.apache.maven.plugins:maven-surefire-plugin:3.5.4 (default-test) 
13s 885ms(100%)
   Aggregation by project 23s 640ms(100%)
     
org.apache.camel.quarkus:camel-quarkus-integration-test-jasypt:3.30.0-SNAPSHOT 
23s 625ms(99%)
   Aggregation by phase 23s 640ms(100%)
     clean 125ms(0%)
     validate 3s 547ms(15%)
     process-sources 2s 52ms(8%)
     process-resources 16ms(0%)
     compile 1s 452ms(6%)
     process-test-resources 16ms(0%)
     test-compile 828ms(3%)
     process-test-classes 141ms(0%)
     test 13s 885ms(58%)
   Aggregation by mojo 23s 640ms(100%)
     org.apache.maven.plugins:maven-clean-plugin:3.5.0 (default-clean) 125ms(0%)
     org.apache.maven.plugins:maven-resources-plugin:3.3.1 
(copy-camel-quarkus-enforcer-rules-xslt) 109ms(0%)
     org.apache.maven.plugins:maven-enforcer-plugin:3.5.0 
(enforce-java-version) 188ms(0%)
     org.apache.maven.plugins:maven-enforcer-plugin:3.5.0 
(camel-quarkus-enforcer-rules) 953ms(4%)
     org.codehaus.gmavenplus:gmavenplus-plugin:3.0.0 (sanity-checks) 2s 
281ms(9%)
     net.revelc.code.formatter:formatter-maven-plugin:2.29.0 (format) 1s 
609ms(6%)
     net.revelc.code:impsort-maven-plugin:1.12.0 (sort-imports) 443ms(1%)
     org.apache.maven.plugins:maven-resources-plugin:3.3.1 (default-resources) 
16ms(0%)
     org.apache.maven.plugins:maven-resources-plugin:3.3.1 (legal-resources) 
0ms(0%)
     org.apache.maven.plugins:maven-compiler-plugin:3.14.1 (default-compile) 1s 
452ms(6%)
     org.apache.maven.plugins:maven-resources-plugin:3.3.1 
(default-testResources) 16ms(0%)
     org.apache.maven.plugins:maven-compiler-plugin:3.14.1 
(default-testCompile) 828ms(3%)
     org.codehaus.gmavenplus:gmavenplus-plugin:3.0.0 
(generate-test-container-config) 141ms(0%)
     org.apache.maven.plugins:maven-surefire-plugin:3.5.4 (default-test) 13s 
885ms(58%)
   12:47:10,747 [INFO] 
------------------------------------------------------------------------
   12:47:10,747 [INFO] BUILD SUCCESS
   12:47:10,747 [INFO] 
------------------------------------------------------------------------
   12:47:10,747 [INFO] Total time:  24.030 s
   12:47:10,747 [INFO] Finished at: 2025-11-04T12:47:10Z
   12:47:10,747 [INFO] 
------------------------------------------------------------------------
   ```
   </details>
   
   <details>
     <summary>Linux - click me</summary>
   
     ```
     mvn clean test 15s 296ms(100%)
     
org.apache.camel.quarkus:camel-quarkus-integration-test-jasypt:3.30.0-SNAPSHOT 
15s 290ms(99%)
       clean 43ms(0%)
         org.apache.maven.plugins:maven-clean-plugin:3.5.0 (default-clean) 
42ms(97%)
       validate 2s 181ms(14%)
         org.apache.maven.plugins:maven-resources-plugin:3.3.1 
(copy-camel-quarkus-enforcer-rules-xslt) 61ms(2%)
         org.apache.maven.plugins:maven-enforcer-plugin:3.5.0 
(enforce-java-version) 102ms(4%)
         org.apache.maven.plugins:maven-enforcer-plugin:3.5.0 
(camel-quarkus-enforcer-rules) 660ms(30%)
         org.codehaus.gmavenplus:gmavenplus-plugin:3.0.0 (sanity-checks) 1s 
358ms(62%)
       process-sources 1s 474ms(9%)
         net.revelc.code.formatter:formatter-maven-plugin:2.29.0 (format) 1s 
141ms(77%)
         net.revelc.code:impsort-maven-plugin:1.12.0 (sort-imports) 333ms(22%)
       process-resources 11ms(0%)
         org.apache.maven.plugins:maven-resources-plugin:3.3.1 
(default-resources) 5ms(45%)
         org.apache.maven.plugins:maven-resources-plugin:3.3.1 
(legal-resources) 6ms(54%)
       compile 719ms(4%)
         org.apache.maven.plugins:maven-compiler-plugin:3.14.1 
(default-compile) 718ms(99%)
       process-test-resources 3ms(0%)
         org.apache.maven.plugins:maven-resources-plugin:3.3.1 
(default-testResources) 3ms(100%)
       test-compile 328ms(2%)
         org.apache.maven.plugins:maven-compiler-plugin:3.14.1 
(default-testCompile) 328ms(100%)
       process-test-classes 110ms(0%)
         org.codehaus.gmavenplus:gmavenplus-plugin:3.0.0 
(generate-test-container-config) 110ms(100%)
       test 9s 348ms(61%)
         org.apache.maven.plugins:maven-surefire-plugin:3.5.4 (default-test) 9s 
348ms(100%)
   Aggregation by project 15s 296ms(100%)
     
org.apache.camel.quarkus:camel-quarkus-integration-test-jasypt:3.30.0-SNAPSHOT 
15s 290ms(99%)
   Aggregation by phase 15s 296ms(100%)
     clean 43ms(0%)
     validate 2s 181ms(14%)
     process-sources 1s 474ms(9%)
     process-resources 11ms(0%)
     compile 719ms(4%)
     process-test-resources 3ms(0%)
     test-compile 328ms(2%)
     process-test-classes 110ms(0%)
     test 9s 348ms(61%)
   Aggregation by mojo 15s 296ms(100%)
     org.apache.maven.plugins:maven-clean-plugin:3.5.0 (default-clean) 42ms(0%)
     org.apache.maven.plugins:maven-resources-plugin:3.3.1 
(copy-camel-quarkus-enforcer-rules-xslt) 61ms(0%)
     org.apache.maven.plugins:maven-enforcer-plugin:3.5.0 
(enforce-java-version) 102ms(0%)
     org.apache.maven.plugins:maven-enforcer-plugin:3.5.0 
(camel-quarkus-enforcer-rules) 660ms(4%)
     org.codehaus.gmavenplus:gmavenplus-plugin:3.0.0 (sanity-checks) 1s 
358ms(8%)
     net.revelc.code.formatter:formatter-maven-plugin:2.29.0 (format) 1s 
141ms(7%)
     net.revelc.code:impsort-maven-plugin:1.12.0 (sort-imports) 333ms(2%)
     org.apache.maven.plugins:maven-resources-plugin:3.3.1 (default-resources) 
5ms(0%)
     org.apache.maven.plugins:maven-resources-plugin:3.3.1 (legal-resources) 
6ms(0%)
     org.apache.maven.plugins:maven-compiler-plugin:3.14.1 (default-compile) 
718ms(4%)
     org.apache.maven.plugins:maven-resources-plugin:3.3.1 
(default-testResources) 3ms(0%)
     org.apache.maven.plugins:maven-compiler-plugin:3.14.1 
(default-testCompile) 328ms(2%)
     org.codehaus.gmavenplus:gmavenplus-plugin:3.0.0 
(generate-test-container-config) 110ms(0%)
     org.apache.maven.plugins:maven-surefire-plugin:3.5.4 (default-test) 9s 
348ms(61%)
   11:03:49,099 [INFO] 
------------------------------------------------------------------------
   11:03:49,099 [INFO] BUILD SUCCESS
   11:03:49,099 [INFO] 
------------------------------------------------------------------------
   11:03:49,101 [INFO] Total time:  15.535 s
   11:03:49,101 [INFO] Finished at: 2025-11-04T11:03:49Z
   11:03:49,101 [INFO] 
------------------------------------------------------------------------
   ```
   </details>
   
   In total it is 8s diference between two isolated runs of JasyptTest. ~4s 
difference in the maven steps prior executing the tests and ~4s difference of 
the test itself.
   
   From that we can see that the first group of slowness goes from phases 
validate, process-resources, compile, test-compile. I've tried to do many 
things on my Windows machine (like increasing java memory, tried to add /target 
as exception for Microsoft Defender - but i don't have admin rights to disable 
it completely, so not sure if it did anything) and in total it is 4seconds 
difference from Linux.
   
   Second group of slowness is the test itself, where the actual test run seems 
to be similar (windows slower), but 2,5sec delay on Windows before i see
   `[INFO] Running org.apache.camel.quarkus.component.jasypt.it.JasyptTest`
   
   And that is probably caused by quarkus build steps (or whatever else is 
running before the [INFO] line above).
   I've printed their times (with `-Dquarkus.debug.print-startup-times`) and 
compared.
   
   The slowest quarkus steps on Windows are probably:
   ```
   23,330 Build step CamelBootstrapProcessor.boot completed in  526ms
   22,689 Build step VertxHttpProcessor.preinitializeRouter completed in        
191ms
   22,236 Build step ResteasyStandaloneBuildStep.staticInit completed in        
188ms
   23,499 Build step VertxHttpProcessor.openSocket completed in 150ms
   ```
   compared to Linux
   ```
   16,570 Build step CamelBootstrapProcessor.boot completed in  313ms
   16,200 Build step VertxHttpProcessor.preinitializeRouter completed in        
79ms
   16,675 Build step VertxHttpProcessor.openSocket completed in 96ms
   15,992 Build step ResteasyStandaloneBuildStep.staticInit completed in        
104ms
   ```
   But when i've count all build step durations of both runs, the diff is 
"only" 0,8s...not sure where are the remaining 2,5-0,8=1,7s. The remaining 
difference 4-2,5 is probably just general slowness of Windows.
   
   So to sum up, i've not found anything alerting, maybe some base for further 
investigation. Currently i'm trying to run Github action on Windows + 
https://github.com/samypr100/setup-dev-drive and if the speed will improve, we 
will probably have proof it is caused by slow disk I/O operations.
   
   


-- 
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.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to