[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18070321#comment-18070321
]
Martin A. commented on TOMEE-4571:
--
Yes, we also love MyFaces from Performance point of view :)
nevertheless - TomEE9 also had openejb.cache.cdi-type-resolution-failure=false
(Default setting) and was much faster.
The startup parameters in
org.apache.openejb.cdi.ThreadSingletonServiceImpl#initialize method are 1:1
the same.
So irrespective if it is mojarra (most likely not, as already discusssed and
debugged with BalusC
[here|https://stackoverflow.com/questions/79832411/update-from-tomee-9-to-tomee-10-massive-performance-descrease-in-faces-web-app]
) , OWB or some other "internal TomEE component or library" that causes the
performance decrease, it would be good to dig deeper and find a final answer
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
> Attachments: TOMEE-4571__Testcase.patch,
> TOMEE-4571_test_project_timing.txt
>
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
>
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18069215#comment-18069215
]
Thomas Andraschko commented on TOMEE-4571:
--
MyFaces is just faster; i think 165 vs 90 is the real (or almost the real)
difference between Mojarra and MyFaces.
It would really be interessting, if someonw can post, what Mojarra code causes
the issues.
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
> Attachments: TOMEE-4571__Testcase.patch,
> TOMEE-4571_test_project_timing.txt
>
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18069001#comment-18069001
]
Martin A. commented on TOMEE-4571:
--
Hello [~jgallimore]
i tried the openejb.cache.cdi-type-resolution-failure parameter and monitored
its value with a breakpoint in
org.apache.openejb.cdi.ThreadSingletonServiceImpl#initialize ;
with false: webBeansContext = new WebBeansContext(services, properties);
with true: webBeansContext = new AppWebBeansContext(services, properties);
The results (restore view / invoke application / render response) on my usecase
in a real-life application are as follows:
false (=default) on mojarra, usecase search page: 750 / 550 / 1100
true on mojarra, usecase search page: 165 / 550 / 780
false (=default) on myfaces, usecase search page: 90 / 550 / 650
true on myfaces, usecase search page: 90 / 550 / 680
Summary:
setting it "true" on mojarra improves the performance a lot, but is still not
as fast as MyFaces with "false".
MyFaces with "true" shows no real impact.
I hope this helps !
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
> Attachments: TOMEE-4571__Testcase.patch,
> TOMEE-4571_test_project_timing.txt
>
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18068270#comment-18068270
]
Thomas Andraschko commented on TOMEE-4571:
--
[~jgallimore] can you post the stack? did you profile?
MyFaces has good caches for everything. Maybe Mojarra doesnt cache some CDI
calls and we can improve both OWB and Mojarra.
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
> Attachments: TOMEE-4571__Testcase.patch,
> TOMEE-4571_test_project_timing.txt
>
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18068209#comment-18068209
]
Martin A. commented on TOMEE-4571:
--
Hi Jonathan, thank you for the updates. This week I'm very busy with the
MyFaces migration of our project, will check and get back next week.
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
> Attachments: TOMEE-4571__Testcase.patch,
> TOMEE-4571_test_project_timing.txt
>
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18068066#comment-18068066
]
Jonathan Gallimore commented on TOMEE-4571:
---
Looks like a lot of time is spent in OWB, when comparing against Jetty. Could
you try this setting in conf/system.properties:
openejb.cache.cdi-type-resolution-failure=true
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
> Attachments: TOMEE-4571__Testcase.patch,
> TOMEE-4571_test_project_timing.txt
>
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18066638#comment-18066638
]
Jonathan Gallimore commented on TOMEE-4571:
---
Sorry for the delay. Running the sample with Mojarra in Jetty, vs TomEE plume
doesn't show _much_ of a timing difference for RESTORE_VIEW - maybe a couple of
ms. Currently digging in to see what the difference is with respect to the code
paths.
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
> Attachments: TOMEE-4571__Testcase.patch,
> TOMEE-4571_test_project_timing.txt
>
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18064010#comment-18064010
]
Martin A. commented on TOMEE-4571:
--
Hello, is there an update ? Were you able to reproduce the performance decrease
?
We meanwhile put high effort in MyFaces migration, still hoping that TomEE
Plume will be faster in future
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
> Attachments: TOMEE-4571__Testcase.patch,
> TOMEE-4571_test_project_timing.txt
>
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18054877#comment-18054877
]
Jonathan Gallimore commented on TOMEE-4571:
---
Nvm, I removed everything except for primefaces from WEB-INF/lib and it starts
now.
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
> Attachments: TOMEE-4571__Testcase.patch,
> TOMEE-4571_test_project_timing.txt
>
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[ https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18054875#comment-18054875 ] Jonathan Gallimore commented on TOMEE-4571: --- Do I need to do anything special to make it work with a vanilla TomEE 10.x or 9.x? Your patch applies cleanly to primefaces-test, but I get deployment errors on startup: 28-Jan-2026 15:11:37.476 INFO [main] org.jboss.weld.environment.servlet.EnhancedListener.onStartup WELD-ENV-001008: Initialize Weld using ServletContainerInitializer 28-Jan-2026 15:11:37.481 INFO [main] org.jboss.weld.bootstrap.WeldStartup. WELD-000900: 6.0.4 (Final) 28-Jan-2026 15:11:37.510 INFO [main] org.jboss.weld.environment.deployment.discovery.DiscoveryStrategyFactory.create WELD-ENV-20: Using jandex for bean discovery 28-Jan-2026 15:11:37.518 WARN [main] org.jboss.weld.xml.BeansXmlValidator.error WELD-001208: Error when validating null@5 against xsd. cvc-complex-type.3.2.2: Attribute 'bean-discovery-mode' is not allowed to appear in element 'beans'. 28-Jan-2026 15:11:37.571 INFO [main] org.jboss.weld.bootstrap.WeldStartup.startContainer WELD-000101: Transactional services not available. Injection of @Inject UserTransaction not available. Transactional observers will be invoked synchronously. 28-Jan-2026 15:11:37.614 SEVERE [main] jdk.internal.reflect.NativeMethodAccessorImpl.invoke Error deploying web application archive [/Users/jgallimore/tmp/apache-tomee-plume-9.1.3/webapps/pf.war] java.lang.IllegalStateException: Error starting child at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:729) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:698) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:747) at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1027) at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:2001) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:123) at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:828) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:478) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1708) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:320) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123) at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423) at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:946) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:886) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:265) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:432) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.startup.Catalina.start(Catalina.java:795) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:476) Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/pf]] at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440) at org.apa
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18054811#comment-18054811
]
Jonathan Gallimore commented on TOMEE-4571:
---
Thanks for the update - I'll dig into this and let you know what I find.
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
> Attachments: TOMEE-4571__Testcase.patch,
> TOMEE-4571_test_project_timing.txt
>
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18054805#comment-18054805
]
Martin A. commented on TOMEE-4571:
--
I finally have a test project based on primefaces-test that shows at least some
differences in mojarra and myfaces on jetty.
you can use it to put on TomEE and evaluate where differences come from
[^TOMEE-4571__Testcase.patch] [^TOMEE-4571_test_project_timing.txt]
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
> Attachments: TOMEE-4571__Testcase.patch,
> TOMEE-4571_test_project_timing.txt
>
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18053296#comment-18053296
]
Martin A. commented on TOMEE-4571:
--
Hello all, a small update:
creating a test project is WIP, but as so often - with a small test project
everything runs smooth and fast. I will try to fake the structure of our real
app as good as possible to see where / when the problem occurs.
Only thing I can verify already is that myfaces is faster than mojarra in
restore-view phase - but here we talk about 5 vs 30 ms
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18052855#comment-18052855
]
Thomas Andraschko commented on TOMEE-4571:
--
I think it would be great to reproduce on plain tomcat or jetty.
I dont think its a TomEE issue -> TomEE just includes Mojarra and adds one SPI
-> https://github.com/apache/tomee/tree/main/tomee/tomee-mojarra - and this was
not touched when migrating to Mojarra 4
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18052380#comment-18052380
]
Martin A. commented on TOMEE-4571:
--
Hallo Richard,
Thank you for the 2 ideas, I know the PF Test project already, will see if I
can add some nested composites and ViewScoped beans there that kind-of reflect
our app :)
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18052377#comment-18052377
]
Richard Zowalla commented on TOMEE-4571:
Alternative might be
https://github.com/apache/tomee/tree/main/examples/jsf-cdi-and-ejb as a starter
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18052373#comment-18052373
]
Richard Zowalla commented on TOMEE-4571:
It might be possible to start from https://github.com/primefaces/primefaces-test
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18052361#comment-18052361
]
Jonathan Gallimore commented on TOMEE-4571:
---
> Are there some template "playground" projects I could use as reference for
> creating a simple testcase ?
I'm kinda hoping you might have something basic. I can probably debug something
relatively easily with a reproducer, but it'll likely take me a fairly long
time to actually make a reproducer as I don't write JSF code everyday, and
unfortunately I have a fair bit of experience in trying to make reproducers for
others that fail to actually faithfully reproduce the issue.
I'll see if do have anything that is close to your issue, but if you can create
a basic "hello world" example, that's definitely going to move this on a lot
faster, even if it doesn't expose as big a difference in timings as you've
provided here (I assume from your production application).
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18052349#comment-18052349
]
Martin A. commented on TOMEE-4571:
--
Thank you for your quick replies :)
* latest mojarra 4.1.15-SNAPSHOT did not change anything
* a do not have a plain tomcat or other server available currently
* I know that an easy reproducible testcase would make your life very easy. My
biggest topic with that is that I cannot simply upload my application .war file
here, besides from company restrictions etc we have lot of (nested) custom
components in use. Are there some template "playground" projects I could use as
reference for creating a simple testcase ?
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18052344#comment-18052344
]
Richard Zowalla commented on TOMEE-4571:
In additon: A reproducer as noted by Jon would be very valuable.
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18052343#comment-18052343
]
Richard Zowalla commented on TOMEE-4571:
I think the biggest different is Mojarra 3 vs Mojarra 4 - as suggested in your
[Stackoverflow|https://stackoverflow.com/questions/79832411/update-from-tomee-9-to-tomee-10-massive-performance-descrease-in-faces-web-app]
post, did you test with the latest released Mojarra which fixes
https://github.com/eclipse-ee4j/mojarra/issues/5625 ?
To do so, just replace the Mojarra lib in the /lib folder of TomEE.
Does it also happen if you go with a plain Tomcat (10.0.x vs 10.1.x) + Mojarra?
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Commented] (TOMEE-4571) TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
[
https://issues.apache.org/jira/browse/TOMEE-4571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18052342#comment-18052342
]
Jonathan Gallimore commented on TOMEE-4571:
---
Happy to look into this - do you have have a basic application I can use to
reproduce your timings (saves me making one)?
> TomEE PLUME 10.1.x - Decrease in performance (Factor 2 or more).
> -
>
> Key: TOMEE-4571
> URL: https://issues.apache.org/jira/browse/TOMEE-4571
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
>Affects Versions: 10.1.2
> Environment: Primefaces 13.0.8 ; ojdbc11:21 , Oracle 19c database ;
> gradle 8.7 build system.
> PLUME edition of TomEE because we need eclipselink due to native queries and
> DB package calls.
> TomEE 9.1.3 PLUME as-is (Mojarra Faces 3, Eclipselink 3) on OpenJDK17
> TomEE 10.1.2 PLUME as-is (Mojarra Faces 4, Eclipselink 4) on OpenJDK21
> related web.xml parameters overview
> jakarta.faces.PROJECT_STAGE = Production
> jakarta.faces.FACELETS_REFRESH_PERIOD = -1
> jakarta.faces.STATE_SAVING_METHOD = server
> listener-class = com.sun.faces.config.ConfigureListener
> servlet-class = jakarta.faces.webapp.FacesServlet
> jakarta.faces.FACELETS_VIEW_MAPPINGS = .jsf;.xhtml
> jakarta.faces.PARTIAL_STATE_SAVING = true
> jakarta.faces.FACELETS_BUFFER_SIZE = 1024000 (for fileuploads)
> jakarta.faces.FACELETS_SKIP_COMMENTS = true
> primefaces.CLIENT_SIDE_LOCALISATION = true
> primefaces.SUBMIT = partial
>Reporter: Martin A.
>Assignee: Jonathan Gallimore
>Priority: Major
>
> We recently migrated our PrimeFaces 13 application from TomEE9 to TomEE10 and
> found a massive decrease in performance (Factor 2 or more).
> *Measurement* : open dedicated page, then track its 3 XHR requests in
> browser console
> TomEE10 + JDK21 : 4900 ms - 6800 ms - 2100 ms
> TomEE10 + JDK17 : 9200 ms - 8400 ms - 5700 ms
> TomEE 9 + JDK17 : 2700 ms - 3000 ms - 0800 ms
> TomEE 9 was > 2x faster, JDK might have a small impact, 21 is faster (as
> expected)
> As suggested by BalusC, i did a comparison with MyFaces 4.03 from TomEE Plus
> by replacing it in TomEE Plume and ran the same testcases 3x to have reliable
> results:
> Measured times in ms, using p:lifecycle component (skipped phases < 10
> ms).The big differences are in RESTORE_VIEW phase = 10x faster and
> RENDER_RESPONSE phase = 2-3x faster
> h3. TomEE 9 / mojarra 3.0.5 (=our baseline)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|130 | 630 | 850 |
> |"open dialog"|180| 1200 | 400 |
> h3. TomEE 10 / mojarra: 4.0.11
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"| {color:#de350b}*650* {color} | 650 | 1100 |
> |"open dialog"| {color:#de350b}*750* {color} | 1200 | 400 |
> h3. TomEE 10 / myfaces: 4.0.3
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|65| 600 | 650 |
> |"open dialog"|60| 1200 | 150 |
> h3. TomEE 10 / mojarra 3.0.5 (just for debugging purpose)
> || UseCase || RESTORE_VIEW || INVOKE_APPLICATION || RENDER_RESPONSE ||
> |"search"|*{color:#de350b}700{color}*| 650| 1200|
> |"open dialog"|*{color:#de350b}700{color}* | 1400| 700 |
> This was just a freaky try, knowing this is experimental, unsupported etc; by
> reverting namespace and related changed only, same tests as before (3x,same
> pc, same db)
> Summary:
> * TomEE 10 mojarra 4 is 2x slower than TomEE9 mojarra 3
> * TomEE 10 myFaces 4 is 2-10x faster than Mojarra 4, depending on action.
> * The idea that eclipselink / DB level is slower which turned out false.
>
> I checked all server.xml, tomee.xml changes, as well as the required
> application changes in dependencies, namespaces, faces-config.xml,
> beans.xml persistence.xml and found no hint yet what could cause such
> decrease in performance. I can confirm that mojarra 3 and mojarra 4 are
> (nearly) equal in performance,
> in fact "Restore view" phase is slower in 4.
> On the other hand, this now means: There must be some other things in TomEE
> 10 that make it slower, e.g. libraries, config changes, undocumented
> parameters, no-longer-in-use caches ... So further Ideas are highly welcome.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
