The tomcat regression is probably introduced here: https://github.com/apache/tomcat/commit/08431bc0b895aa80e78e993a006cabb73aaa6490
As it only affects windows and when there are a lot of files (and those files are constantly refreshed) it's not probably reported by anyone. On Sat, Oct 28, 2023 at 8:24 AM Vicente Rossello <cocorosse...@gmail.com> wrote: > Sorry, that was not correct. > > The allowLinking is at the resources level. So, in the > META-INF/context.xml file: > > <?xml version="1.0" encoding="UTF-8"?> > <Context allowCasualMultipartParsing="true" reloadable="false" > containerSciFilter="org.apache.tomcat.websocket.server.WsSci|org.apache.jasper.servlet.JasperInitializer" > parallelAnnotationScanning="true" > clearReferencesThreadLocals="false" > skipMemoryLeakChecksOnJvmShutdown="true"> > <Manager pathname=""/> > > <Resources archiveIndexStrategy="bloom" allowLinking="true"/> > </Context> > > > BTW, the slowness is something between checking the canonicalPath too many > times and jdk12 that removed those canonCache by default. See > https://bugs.openjdk.org/browse/JDK-8258036 > > > On Sat, Oct 28, 2023 at 8:07 AM Vicente Rossello <cocorosse...@gmail.com> > wrote: > >> Hi, >> >> It is a tomcat problem. The real problem is in DirResourcesSet. It is >> calling a lot of times File.getCanonicalPath(). This method is very slow in >> windows. >> >> What I did is extending the DirResourcesSet to skip processing the >> getCanonicalPath method so many times, but I really didn't understand the >> problem. >> >> A simpler and better solution is to set allowLinking="true" in the >> context.xml file. So tomcat does not validate the canonicalPath every >> single time, which is just too much. >> >> Best regards, >> Vicente >> >> On Fri, Oct 27, 2023 at 5:51 PM Jens Zurawski <j...@diegurus.de> wrote: >> >>> My client is the last Windows System in my little universe. Due to some >>> constraints with my customers I have to deal with it for the time being. >>> >>> The switches, Vicente has provided, solved the problem for me so far. >>> But my "inner monk" is still not satisfied, because practical no one >>> knows of these switches, and after all, TomEE should do a good job on >>> Windows, too. And because 8.0.6 does a good job, and 8.0.8 breaks it to >>> some degree, we should at least try to figure out, what exactly causes >>> this break. Maybe there is an easy way to fix it, then it should be >>> fixed IMHO. >>> >>> So, I will go through the bisect session anyway, as it seems the best >>> possibility to get a grip on it. But I don't want to make these builds >>> on Windows. I'll build them on Linux and will try to ease my life a bit >>> with some scripting. >>> >>> cu >>> Jens >>> >>> >>> Am 27.10.2023 um 17:11 schrieb Richard Zowalla: >>> > Great news! (though I am not a Windows user anymore). >>> > >>> > You should be able to build TomEE on Windows, too. If that does not >>> > work out-of-the-box, you could try to build within a docker container >>> > or via git-bash in Windows >>> > >>> > (I am not 100% sure a Windows build will work out of the box) >>> > >>> > I agree, that it might complicate things for testing purpose as it >>> > increases the amount of cycles needed, but that are already very good >>> > insights! >>> > >>> > Gruß >>> > Richard >>> > >>> > >>> > Am Freitag, dem 27.10.2023 um 16:55 +0200 schrieb Jens Zurawski: >>> >> I have a first result on this issue: >>> >> >>> >> The problem does not occur if TomEE is running on Linux. I've tested >>> >> my >>> >> own built 8.0.8, a freshly extracted 8.0.8 and 8.0.15 from the >>> >> releases, >>> >> and none of them showed the dev mode performance problem. >>> >> >>> >> Using TomEE 8.0.8 on Windows does show the dev mode performance >>> >> problem. >>> >> All of the tested ones, means the released 8.0.8 and my own built >>> >> 8.0.8 >>> >> (the one I've built on Linux). >>> >> >>> >> My development environment is Windows 10 (Netbeans and therefore also >>> >> the TomEE for easy deployment and debugging). The problem does occur >>> >> on >>> >> stand alone started TomEE and also if started out of Netbeans, so >>> >> Netbeans can be sorted out as the root of the problem. Java Versions >>> >> 11, >>> >> 13, 15 and 17 tested, all the same, so Java should also not be the >>> >> problem. BTW: It is very unlikely a problem of my individual Windows >>> >> installation, because this problem also shows up on the Windows >>> >> system >>> >> of my colleague, which btw. was the root cause why I'm started to dig >>> >> deeper into this problem now and why I subscribed to this mailing >>> >> list ;-) >>> >> >>> >> I'm afraid, this will complicate my git bisect session a little bit >>> >> :-( >>> >> >>> >> However, I'll keep you posted. >>> >> >>> >> cu >>> >> Jens >>> >> >>> >> >>> >> Am 27.10.2023 um 13:12 schrieb Jens Zurawski: >>> >>> Thanks Richard (and Vicente), >>> >>> >>> >>> I've changed to JDK 8 and now the builds are successful (both 8.0.6 >>> >>> and 8.0.8). >>> >>> >>> >>> I'll script me some test scripts to ease the build, run and test >>> >>> for >>> >>> every bisect step. >>> >>> A build needs around 3 to 4 minutes. Running a test with my >>> >>> application will need some manual interaction and checks, I guess >>> >>> also >>> >>> something around 4 minutes. This sums up to roughly 8 minutes per >>> >>> step. >>> >>> >>> >>> I've started a bisect and it told me: >>> >>> git bisect good 20441eb >>> >>> git bisect bad 4c8a616 >>> >>> Bisecting: 136 revisions left to test after this (roughly 7 steps) >>> >>> >>> >>> That means, if everything works fine, I should be able to identify >>> >>> the >>> >>> commit after about an hour? (That's cool.... why nobody has told me >>> >>> about git bisect before? ;-) ) >>> >>> >>> >>> Anyway, I will have to find some time for this, maybe I need a >>> >>> couple >>> >>> of days to find some. >>> >>> I will let you know about the outcome. >>> >>> >>> >>> cu >>> >>> Jens >>> >>> >>> >>> >>> >>> Am 27.10.2023 um 11:50 schrieb Richard Zowalla: >>> >>>> Hi, >>> >>>> >>> >>>> you need Java/JDK 8 to build TomEE 8. >>> >>>> >>> >>>> The Maven command is >>> >>>> >>> >>>> mvn --fail-at-end clean install -pl tomee/apache-tomee -am - >>> >>>> Dfile.encoding=UTF-8 -DskipTests=true >>> >>>> >>> >>>> You will find the tar.gz/zip in ./tomee/apache-tomee/target >>> >>>> >>> >>>> Gruß >>> >>>> Richard >>> >>>> >>> >>>> P.S. 8.0.7 is here: >>> >>>> https://archive.apache.org/dist/tomee/tomee-8.0.7/ >>> >>>> >>> >>>> Am Freitag, dem 27.10.2023 um 10:50 +0200 schrieb Jens Zurawski: >>> >>>>> Hi Richard, >>> >>>>> >>> >>>>> to identify the "bad" version was easy. I didn't find a 8.0.7 >>> >>>>> release >>> >>>>> on >>> >>>>> the download page, so I started with 8.0.8. And this version >>> >>>>> already >>> >>>>> has >>> >>>>> the slow dev mode. So for my problem I can say: >>> >>>>> good: 8.0.6 >>> >>>>> bad: 8.0.8 >>> >>>>> >>> >>>>> Now, I think, I need a little help from you. I tried to build a >>> >>>>> TomEE >>> >>>>> out of git (I've cloned the github repository >>> >>>>> https://github.com/apache/tomee.git). I've tried these two >>> >>>>> commits: >>> >>>>> 20441eb (tag: tomee-8.0.6) >>> >>>>> 4c8a616 (tag: tomee-project-8.0.8) >>> >>>>> >>> >>>>> But the build fails every time on "TomEE :: Container :: Core" >>> >>>>> with: >>> >>>>> >>> >>>>> [INFO] BUILD FAILURE >>> >>>>> [INFO] >>> >>>>> --------------------------------------------------------------- >>> >>>>> ------ >>> >>>>> --- >>> >>>>> [INFO] Total time: 01:19 min >>> >>>>> [INFO] Finished at: 2023-10-27T10:29:40+02:00 >>> >>>>> [INFO] >>> >>>>> --------------------------------------------------------------- >>> >>>>> ------ >>> >>>>> --- >>> >>>>> [ERROR] Failed to execute goal >>> >>>>> org.apache.maven.plugins:maven-compiler-plugin:3.6.2:compile >>> >>>>> (default-compile) on project openejb-core: Compilation failure: >>> >>>>> Compilation failure: >>> >>>>> [ERROR] >>> >>>>> /sandbox/tomee/container/openejb- >>> >>>>> core/src/main/java/org/apache/openejb/core/OrbFactory.java:[21, >>> >>>>> 21] >>> >>>>> package org.omg.CORBA does not exist >>> >>>>> [ERROR] >>> >>>>> /sandbox/tomee/container/openejb- >>> >>>>> core/src/main/java/org/apache/openejb/core/OrbFactory.java:[24, >>> >>>>> 12] >>> >>>>> cannot find symbol >>> >>>>> [ERROR] symbol: class ORB >>> >>>>> [ERROR] location: class org.apache.openejb.core.OrbFactory >>> >>>>> >>> >>>>> I've tried to build with: >>> >>>>> mvn clean install >>> >>>>> >>> >>>>> My build environment is a linux ubuntu 20.04.6 LTS VM with: >>> >>>>> git 2.25.1 >>> >>>>> Maven 3.6.3 >>> >>>>> java 14.0.2 >>> >>>>> >>> >>>>> Is it some easy thing to fix, or do I have to switch some >>> >>>>> versions of >>> >>>>> my >>> >>>>> environment? >>> >>>>> >>> >>>>> cu >>> >>>>> Jens >>> >>>>> >>> >>>>> Am 26.10.2023 um 19:48 schrieb Richard Zowalla: >>> >>>>>> Hi, >>> >>>>>> >>> >>>>>> without knowing code or having a reproducer, it might be not >>> >>>>>> that >>> >>>>>> obvious to find a reason / answer for the "academic problem" >>> >>>>>> ;-) >>> >>>>>> >>> >>>>>> If you really want to boil it down, I recommend the following >>> >>>>>> approach: >>> >>>>>> >>> >>>>>> (1) From your description it seems, that 8.0.6 is the last >>> >>>>>> known >>> >>>>>> "good" >>> >>>>>> version. >>> >>>>>> >>> >>>>>> (2) You've investigated versions starting from 8.0.12 >>> >>>>>> onwards, >>> >>>>>> which >>> >>>>>> seems to be "bad". >>> >>>>>> >>> >>>>>> Following the approach recommended by Jonathan: >>> >>>>>> >>> >>>>>> - Can you check if it happens in 8.0.7 (8.0.8, ...) until we >>> >>>>>> find >>> >>>>>> the >>> >>>>>> first "bad" released version? >>> >>>>>> >>> >>>>>> - If we have that, you could start a "git bisect" session >>> >>>>>> between >>> >>>>>> 8.0.6 >>> >>>>>> and the first version, which is known to be bad (reducing the >>> >>>>>> amount of >>> >>>>>> needed bisect cycles dramatically), so we find a commit / >>> >>>>>> reason >>> >>>>>> (if it >>> >>>>>> is in TomEE). >>> >>>>>> >>> >>>>>> - It would involve some quick builds without executing tests >>> >>>>>> (~10- >>> >>>>>> 15min >>> >>>>>> each) for each bisect step and testing on your side. >>> >>>>>> >>> >>>>>> Don't know if your inner monk is willing to go that route, >>> >>>>>> but I am >>> >>>>>> happy to help with the related Maven commands for quick >>> >>>>>> building :) >>> >>>>>> >>> >>>>>> Gruß >>> >>>>>> Richard >>> >>>>>> >>> >>>>>> >>> >>>>>> >>> >>>>>> >>> >>>>>> >>> >>>>>> Am Donnerstag, dem 26.10.2023 um 18:00 +0200 schrieb Jens >>> >>>>>> Zurawski: >>> >>>>>>> Hi Vicente, >>> >>>>>>> >>> >>>>>>> thank you for the tip. This is a good workaround. When I >>> >>>>>>> switch >>> >>>>>>> to >>> >>>>>>> Production mode and insert this configuration, it reloads >>> >>>>>>> the >>> >>>>>>> view >>> >>>>>>> from >>> >>>>>>> the file if it has changed. This means, I can use a decent >>> >>>>>>> version of >>> >>>>>>> TomEE in my dev environment. >>> >>>>>>> >>> >>>>>>> However, it doesn't completely solve my problem, as the >>> >>>>>>> error >>> >>>>>>> reporting >>> >>>>>>> isn't as verbose as in Dev mode as far as I can see. But I >>> >>>>>>> have >>> >>>>>>> to >>> >>>>>>> check, maybe it's enough for my development. >>> >>>>>>> >>> >>>>>>> And, well.... the academic problem: "Why is it still broken >>> >>>>>>> in >>> >>>>>>> Dev >>> >>>>>>> mode?" still runs circles through my brain ;-) Because if >>> >>>>>>> it's a >>> >>>>>>> problem >>> >>>>>>> of my coding, it might be a good idea to change this, >>> >>>>>>> before it >>> >>>>>>> might >>> >>>>>>> get a problem on Production mode, too, at some time in the >>> >>>>>>> future. >>> >>>>>>> >>> >>>>>>> But anyway, you've helped me a good step forward, thanks. >>> >>>>>>> cu >>> >>>>>>> Jens >>> >>>>>>> >>> >>>>>>> >>> >>>>>>> Am 26.10.2023 um 17:04 schrieb Vicente Rossello: >>> >>>>>>>> We are using the production stage with >>> >>>>>>>> javax.faces.FACELETS_REFRESH_PERIOD >>> >>>>>>>> = 1. It's faster and more similar to production, just try >>> >>>>>>>> it if >>> >>>>>>>> it >>> >>>>>>>> solves >>> >>>>>>>> your problem >>> >>>>>>>> >>> >>>>>>>> On Thu, Oct 26, 2023 at 4:18 PM Jens Zurawski >>> >>>>>>>> <j...@diegurus.de> >>> >>>>>>>> wrote: >>> >>>>>>>> >>> >>>>>>>>> The one bundled with TomEE. >>> >>>>>>>>> myfaces 2.3.7 on TomEE 8.0.6 >>> >>>>>>>>> and e.g. myfaces 2.3.9 on TomEE 8.0.12 >>> >>>>>>>>> >>> >>>>>>>>> Am 26.10.2023 um 16:08 schrieb Richard Zowalla: >>> >>>>>>>>>> Which JSF lib are you using? >>> >>>>>>>>>> >>> >>>>>>>>>> Am 26. Oktober 2023 16:00:57 MESZ schrieb Jens >>> >>>>>>>>>> Zurawski >>> >>>>>>>>>> <j...@diegurus.de >>> >>>>>>>>>> : >>> >>>>>>>>>>> Thank you for your quick reply, Jonathan. >>> >>>>>>>>>>> >>> >>>>>>>>>>> It is good to know, that normally the Dev mode >>> >>>>>>>>>>> should >>> >>>>>>>>>>> work as >>> >>>>>>>>>>> fast as >>> >>>>>>>>> before even with 8.0.15. So it obviously has something >>> >>>>>>>>> to do >>> >>>>>>>>> with >>> >>>>>>>>> my >>> >>>>>>>>> environment, configuration and/or code. >>> >>>>>>>>>>> And also thank you for the reference to tomitribe. >>> >>>>>>>>>>> Unfortunately I'm >>> >>>>>>>>> the only developer on this project, and it will be >>> >>>>>>>>> difficult >>> >>>>>>>>> to >>> >>>>>>>>> convince my >>> >>>>>>>>> customer to an additional support subscription, because >>> >>>>>>>>> he on >>> >>>>>>>>> production >>> >>>>>>>>> doesn't have issues ;-) But, ok, that's my problem, and >>> >>>>>>>>> maybe >>> >>>>>>>>> I'll consult >>> >>>>>>>>> tomitribe in the future for other projects. >>> >>>>>>>>>>> So, I'm afraid, for the near future I'm on my own >>> >>>>>>>>>>> to >>> >>>>>>>>>>> solve >>> >>>>>>>>>>> this >>> >>>>>>>>> problem. Therefore any hints to restrict the places >>> >>>>>>>>> where I >>> >>>>>>>>> should take a >>> >>>>>>>>> look will be more than welcome. >>> >>>>>>>>>>> I'm a senior programmer with 20 years of experience >>> >>>>>>>>>>> in >>> >>>>>>>>>>> Java >>> >>>>>>>>>>> programming >>> >>>>>>>>> (SE and JSP). But I'm relative new to >>> >>>>>>>>> JSF/JavaEE/JakartaEE >>> >>>>>>>>> and >>> >>>>>>>>> sometimes I >>> >>>>>>>>> have a hard time to understand which component of the >>> >>>>>>>>> whole >>> >>>>>>>>> stack >>> >>>>>>>>> is >>> >>>>>>>>> responsible for what. >>> >>>>>>>>>>> The project meanwhile has over a 1/4 million lines >>> >>>>>>>>>>> of >>> >>>>>>>>>>> code >>> >>>>>>>>>>> (most of >>> >>>>>>>>> them in the back-end, but also the front-end is big >>> >>>>>>>>> enough to >>> >>>>>>>>> not >>> >>>>>>>>> trace >>> >>>>>>>>> through every lane if I want to get to the point in >>> >>>>>>>>> this life >>> >>>>>>>>> :-D >>> >>>>>>>>> ). >>> >>>>>>>>>>> The application now runs for nearly 2 years on the >>> >>>>>>>>>>> customers >>> >>>>>>>>>>> site and >>> >>>>>>>>> is very reliable and fast in its daily usage. Apart >>> >>>>>>>>> from >>> >>>>>>>>> occasional updates >>> >>>>>>>>> every few month, it will never be restarted or need any >>> >>>>>>>>> manual >>> >>>>>>>>> maintenance >>> >>>>>>>>> at all. So I assume the code is not the badest on >>> >>>>>>>>> earth. At >>> >>>>>>>>> least >>> >>>>>>>>> because >>> >>>>>>>>> of that I'm able to out-rule things like memory leaks, >>> >>>>>>>>> gc >>> >>>>>>>>> issues >>> >>>>>>>>> or >>> >>>>>>>>> bottlenecks (max Heap is never reached, neither half of >>> >>>>>>>>> it, >>> >>>>>>>>> even >>> >>>>>>>>> after >>> >>>>>>>>> running for month). >>> >>>>>>>>>>> Of course there could be aspects of JSF which I may >>> >>>>>>>>>>> not >>> >>>>>>>>>>> have >>> >>>>>>>>>>> understood >>> >>>>>>>>> correctly until now. But because there are so many new >>> >>>>>>>>> things >>> >>>>>>>>> to >>> >>>>>>>>> a JSF >>> >>>>>>>>> beginner like me, I'm running out of ideas what this >>> >>>>>>>>> could >>> >>>>>>>>> be. It >>> >>>>>>>>> is >>> >>>>>>>>> something that worked well 'til TomEE 8.0.6 (Prod and >>> >>>>>>>>> Dev >>> >>>>>>>>> mode) >>> >>>>>>>>> and >>> >>>>>>>>> suddenly don't work anymore on 8.0.12 in Dev mode (but >>> >>>>>>>>> still >>> >>>>>>>>> works great in >>> >>>>>>>>> Prod mode). There are only minor versions in-between. >>> >>>>>>>>> So I >>> >>>>>>>>> think >>> >>>>>>>>> there were >>> >>>>>>>>> no revolutionary changes anywhere. My hope was (and >>> >>>>>>>>> still >>> >>>>>>>>> is), >>> >>>>>>>>> that anybody >>> >>>>>>>>> here on the list might have had a similar problem and >>> >>>>>>>>> has >>> >>>>>>>>> solved >>> >>>>>>>>> it, or >>> >>>>>>>>> maybe someone knows about some changes in Dev mode >>> >>>>>>>>> which >>> >>>>>>>>> could >>> >>>>>>>>> explain such >>> >>>>>>>>> behaviour (don't know, maybe xml parsing or component >>> >>>>>>>>> tree >>> >>>>>>>>> generation has >>> >>>>>>>>> changed, or scope handling of managed beans, or >>> >>>>>>>>> whatever >>> >>>>>>>>> could >>> >>>>>>>>> cause some >>> >>>>>>>>> code to be entered far more often than before, or some >>> >>>>>>>>> cache/pool >>> >>>>>>>>> was >>> >>>>>>>>> removed or has different behaviour... such things). >>> >>>>>>>>> Then it >>> >>>>>>>>> would >>> >>>>>>>>> be far >>> >>>>>>>>> more easy for me to track down the real problem. >>> >>>>>>>>>>> Anyway, when I get some spare time (currently have >>> >>>>>>>>>>> some >>> >>>>>>>>>>> deadlines in >>> >>>>>>>>> sight), I'll try to build a small test case. Either I >>> >>>>>>>>> can get >>> >>>>>>>>> a >>> >>>>>>>>> grip on the >>> >>>>>>>>> issue myself on doing this, or I can supply it to >>> >>>>>>>>> anyone who >>> >>>>>>>>> might want to >>> >>>>>>>>> have a look at it. >>> >>>>>>>>>>> cu >>> >>>>>>>>>>> Jens >>> >>>>>>>>>>> >>> >>>>>>>>>>> >>> >>>>>>>>>>> >>> >>>>>>>>>>> Am 26.10.2023 um 14:01 schrieb Jonathan S. Fisher: >>> >>>>>>>>>>>>> newer versions are so incredibly slow in dev >>> >>>>>>>>>>>>> mode >>> >>>>>>>>>>>> I can assure you that Dev/Prod mode works very >>> >>>>>>>>>>>> very >>> >>>>>>>>>>>> swiftly >>> >>>>>>>>>>>> on 8.0.15 >>> >>>>>>>>>>>> for sizable applications. For example, I have a >>> >>>>>>>>>>>> giant >>> >>>>>>>>>>>> application >>> >>>>>>>>>>>> (thousands of LOC, 50+ jsf views) that has sub- >>> >>>>>>>>>>>> 8ms >>> >>>>>>>>>>>> response >>> >>>>>>>>>>>> times >>> >>>>>>>>>>>> (minus database time). More than likely they are >>> >>>>>>>>>>>> doing >>> >>>>>>>>>>>> something they >>> >>>>>>>>>>>> should not be doing with JSF apis and are causing >>> >>>>>>>>>>>> problems. >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> I would check the obvious things first with >>> >>>>>>>>>>>> VisualVM: >>> >>>>>>>>>>>> heap >>> >>>>>>>>>>>> size, gc >>> >>>>>>>>>>>> frequency, etc. You can also run their profiler >>> >>>>>>>>>>>> and see >>> >>>>>>>>>>>> if >>> >>>>>>>>>>>> you can >>> >>>>>>>>>>>> spot anything immediately obvious. >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> After that, the easiest way to locate the code >>> >>>>>>>>>>>> slowing >>> >>>>>>>>>>>> you >>> >>>>>>>>>>>> down is >>> >>>>>>>>>>>> bisection. Cut half the code out, run, and >>> >>>>>>>>>>>> continue >>> >>>>>>>>>>>> cutting >>> >>>>>>>>>>>> until you >>> >>>>>>>>>>>> can locate the problematic code. Then after that, >>> >>>>>>>>>>>> isolate a >>> >>>>>>>>>>>> test case >>> >>>>>>>>>>>> where flipping a boolean flag triggers the issue >>> >>>>>>>>>>>> and >>> >>>>>>>>>>>> post >>> >>>>>>>>>>>> the results >>> >>>>>>>>>>>> here. >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> I would get ahold of: >>> >>>>>>>>>>>> https://www.tomitribe.com who are >>> >>>>>>>>>>>> literal >>> >>>>>>>>>>>> experts in this stuff. They offer professional >>> >>>>>>>>>>>> services >>> >>>>>>>>>>>> to >>> >>>>>>>>>>>> handle >>> >>>>>>>>>>>> exactly these situations and can work directly in >>> >>>>>>>>>>>> your >>> >>>>>>>>>>>> codebase to >>> >>>>>>>>>>>> help you find and fix the problem. >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> On Thu, Oct 26, 2023 at 5:48 AM Jens Zurawski >>> >>>>>>>>>>>> <j...@diegurus.de> wrote: >>> >>>>>>>>>>>>> Hi altogether, >>> >>>>>>>>>>>>> >>> >>>>>>>>>>>>> I'm new to this list and hope it's the right >>> >>>>>>>>>>>>> place to >>> >>>>>>>>>>>>> ask >>> >>>>>>>>>>>>> this >>> >>>>>>>>> question. >>> >>>>>>>>>>>>> If not, and someone know the right place to ask >>> >>>>>>>>>>>>> this, >>> >>>>>>>>>>>>> please give >>> >>>>>>>>> advise. >>> >>>>>>>>>>>>> I'm developing a big JSF Application for a >>> >>>>>>>>>>>>> customer. >>> >>>>>>>>>>>>> It's >>> >>>>>>>>>>>>> a long >>> >>>>>>>>> running >>> >>>>>>>>>>>>> project and development and when I started with >>> >>>>>>>>>>>>> it, >>> >>>>>>>>>>>>> TomEE >>> >>>>>>>>>>>>> 8.0.6 was >>> >>>>>>>>> the >>> >>>>>>>>>>>>> most recent Version of TomEE. The switch to >>> >>>>>>>>>>>>> Jakarta >>> >>>>>>>>>>>>> is >>> >>>>>>>>>>>>> planned for >>> >>>>>>>>> next >>> >>>>>>>>>>>>> year, so I'm still on the 8.x path for the time >>> >>>>>>>>>>>>> being >>> >>>>>>>>>>>>> and >>> >>>>>>>>>>>>> wasn't able >>> >>>>>>>>> to >>> >>>>>>>>>>>>> test if this problem still exists in the 9.x >>> >>>>>>>>>>>>> branch. >>> >>>>>>>>>>>>> >>> >>>>>>>>>>>>> The problem: >>> >>>>>>>>>>>>> On the customers site I'm with the latest TomEE >>> >>>>>>>>>>>>> version >>> >>>>>>>>>>>>> 8.0.15 >>> >>>>>>>>> (running >>> >>>>>>>>>>>>> on Java 11) and everything works fine, because >>> >>>>>>>>>>>>> it is >>> >>>>>>>>>>>>> running in >>> >>>>>>>>>>>>> production mode. But in my development >>> >>>>>>>>>>>>> environment >>> >>>>>>>>>>>>> I'm >>> >>>>>>>>>>>>> still stuck >>> >>>>>>>>> with >>> >>>>>>>>>>>>> 8.0.6, because there I need the development >>> >>>>>>>>>>>>> mode >>> >>>>>>>>>>>>> (javax.faces.PROJECT_STAGE: Development). I >>> >>>>>>>>>>>>> need to >>> >>>>>>>>>>>>> be >>> >>>>>>>>>>>>> able to see >>> >>>>>>>>>>>>> changes in facelets without restarting >>> >>>>>>>>>>>>> everything >>> >>>>>>>>>>>>> everytime, and to >>> >>>>>>>>> get >>> >>>>>>>>>>>>> more detailed error messages. >>> >>>>>>>>>>>>> My attempts to update my dev TomEE to something >>> >>>>>>>>>>>>> newer >>> >>>>>>>>>>>>> than 8.0.6 all >>> >>>>>>>>>>>>> failed, because all (at least all I've tested >>> >>>>>>>>>>>>> so far) >>> >>>>>>>>>>>>> newer versions >>> >>>>>>>>> are >>> >>>>>>>>>>>>> so incredibly slow in dev mode, that it's >>> >>>>>>>>>>>>> unbearable >>> >>>>>>>>>>>>> to >>> >>>>>>>>>>>>> use the >>> >>>>>>>>>>>>> application. Several very looong seconds on >>> >>>>>>>>>>>>> every >>> >>>>>>>>>>>>> request >>> >>>>>>>>>>>>> (even the >>> >>>>>>>>>>>>> little AJAX requests in a view) is simply not a >>> >>>>>>>>>>>>> practical >>> >>>>>>>>>>>>> environment. >>> >>>>>>>>>>>>> After switching to Production mode everything >>> >>>>>>>>>>>>> works >>> >>>>>>>>>>>>> very >>> >>>>>>>>>>>>> fast, and all >>> >>>>>>>>>>>>> my views have response times of very few ms >>> >>>>>>>>>>>>> (even the >>> >>>>>>>>>>>>> big >>> >>>>>>>>>>>>> ones with >>> >>>>>>>>> max. >>> >>>>>>>>>>>>> around 400ms). When switching back to >>> >>>>>>>>>>>>> Development >>> >>>>>>>>>>>>> mode I >>> >>>>>>>>>>>>> have response >>> >>>>>>>>>>>>> times of up to 30s on big views. Not with >>> >>>>>>>>>>>>> 8.0.6, >>> >>>>>>>>>>>>> there >>> >>>>>>>>>>>>> even in >>> >>>>>>>>>>>>> development mode it's reasonable fast in not >>> >>>>>>>>>>>>> getting >>> >>>>>>>>>>>>> higher than 1s. >>> >>>>>>>>>>>>> >>> >>>>>>>>>>>>> My question: >>> >>>>>>>>>>>>> What causes this enormous performance >>> >>>>>>>>>>>>> degradation? >>> >>>>>>>>>>>>> I'm >>> >>>>>>>>>>>>> hoping, it is >>> >>>>>>>>>>>>> just a configuration which now has another >>> >>>>>>>>>>>>> default >>> >>>>>>>>>>>>> value >>> >>>>>>>>>>>>> or the like. >>> >>>>>>>>> If >>> >>>>>>>>>>>>> yes, maybe someone can point me in the right >>> >>>>>>>>>>>>> direction of >>> >>>>>>>>>>>>> where to >>> >>>>>>>>> find >>> >>>>>>>>>>>>> this configuration? If it's not a configuration >>> >>>>>>>>>>>>> thing: >>> >>>>>>>>>>>>> what can I do >>> >>>>>>>>> to >>> >>>>>>>>>>>>> get around this? >>> >>>>>>>>>>>>> >>> >>>>>>>>>>>>> I haven't tested all Versions of TomEE from >>> >>>>>>>>>>>>> 8.0.6 to >>> >>>>>>>>>>>>> 8.0.15, so I >>> >>>>>>>>> can't >>> >>>>>>>>>>>>> say at what version exactly this behaviour >>> >>>>>>>>>>>>> changes. >>> >>>>>>>>>>>>> If it >>> >>>>>>>>>>>>> helps or is >>> >>>>>>>>>>>>> needed, I can make some tests to find the exact >>> >>>>>>>>>>>>> version >>> >>>>>>>>>>>>> where this >>> >>>>>>>>>>>>> happens. Versions I've already tested are: >>> >>>>>>>>>>>>> 8.0.12, >>> >>>>>>>>>>>>> 8.0.13 >>> >>>>>>>>>>>>> and 8.0.15. >>> >>>>>>>>>>>>> All of them are very slow in dev mode. If you >>> >>>>>>>>>>>>> need >>> >>>>>>>>>>>>> more >>> >>>>>>>>>>>>> information, >>> >>>>>>>>>>>>> I'll try to provide it. >>> >>>>>>>>>>>>> >>> >>>>>>>>>>>>> Thanks in advance for any help >>> >>>>>>>>>>>>> cu >>> >>>>>>>>>>>>> Jens >>> >>>>>>>>>>>>> >>> >>>>>>>>>>>>> >>> >>>