http://coldfusion.com logo
#adobe
Title
# adobe
b

bdw429s

03/11/2022, 3:14 PM
Anyone have ideas on how to find the line number an file this compiler error is happening on. CF isn't really being very helpful here. I'm testing an old app on CF 2021 for the first time so it could literally be any where across a huge code base of files. (stack in the thread)
cc/ @priyank_adobe
I have robust exceptions enabled and there is literally no other information on the page.
w

wil-shiftinsert

03/11/2022, 3:27 PM
can’t you use the cfml-compiler for this? I had simular issues on Lucee some time ago and it was really helpful. Not sure if it can help you though..
o no. Lucee only I guess…
r

ryan

03/11/2022, 3:40 PM
is your old app using mxunit by any chance?
b

bdw429s

03/11/2022, 3:41 PM
Why yes it is
I assume there's an issue with the word "static" being used somewhere
I already had to fix several of those errors when testing this app on Lucee
now the client wants to test it on CF 2021 (coming from CF 10!) and I've found ACF has an even crankier parser
r

ryan

03/11/2022, 3:41 PM
Found this in a thread that maybe might help? "Yeah, MXUnit is very dead it seems. Just like you I ran into this issue when testing out CF2021. I managed to solve it by removing the static="true" attribute from all functions in /framework/Assert.cfc and by removing the HamcrestAssert.cfc and XPathAssert.cfc-references from mxunit-config.xml."
b

bdw429s

03/11/2022, 3:42 PM
Lucee will allow you to do stuff like
Copy code
var function = 'foo';
var abstract = 'bar';
but CF 2021 blows chunks on those
But I've already removed all variables in the app called
static
when I got Lucee working
Ooh, I do see a lot of
static="true"
in the code
I wonder if that annotation was even being used for anything
r

ryan

03/11/2022, 3:43 PM
that might be the key to remove those.
good question
b

bdw429s

03/11/2022, 3:44 PM
This app is an old one using Transfer, ColdSpring, MXUnit, etc. It suffers from a whole lot of "let's pretend CF is java and try to cram non-existent design patterns in"
r

ryan

03/11/2022, 3:44 PM
HAHA, awesome analogy!
b

bdw429s

03/11/2022, 3:44 PM
So there's all sorts of stuff like
Copy code
variables.static.FOO = "Geez, i wish CF supported actual real static vars!";
😂 1
r

ryan

03/11/2022, 3:45 PM
Lol
a

Adam Cameron

03/11/2022, 4:52 PM
Copy code
variables.static.FOO
Ugh
b

bdw429s

03/11/2022, 8:50 PM
@ryan Where was that thread you copied the message above from? I've done everything that message mentions, and I'm still getting the same terrible, vague error. EDIT: I found it via Google https://groups.google.com/g/mxunit/c/xVTiJJj55Vs/m/NyAQkAe6AAAJ
@Mark Takata (Adobe) Is there an engineer who can help with this?
yep, that's the one
b

bdw429s

03/11/2022, 9:12 PM
Argh, I found some more UDFs with
static=true
in MXunit that didn't come up in my search before.
After testing this client app on Lucee Server for the past few weeks, my GOSH ACF 2021 is SLOW AS A DOG.
It sat and compiled code for a full 5 minutes (across two requests since the first timed out) before getting to the next error message
I don't know how people develop on ACF when it's this slow after a restart just to come up
Lucee only takes a few seconds to process the first requests on this same code base in side-by-side docker containers
This has been brought up over and over to @priyank_adobe @Mark Takata (Adobe) and @Ashudeep Sharma and still no progress, or even acknowledgement of the issue.
d

Dave Merrill

03/14/2022, 3:39 PM
Thanks for the heads-up, staying on 2018 then 🙂
b

bdw429s

03/14/2022, 4:48 PM
@Dave Merrill 2018's compiler is still much slower than Lucee's. Adobe's compiler has always been a dog. The biggest reason is they throw exceptions internally as a form of flow control. The overhead of throwing and catching what is probably thousands of exceptions a second really adds up.
Here's a comparison I provided to Adobe back in 2020 just spinning up a ColdBox app template and starting the server and timing in fusionreactor how long the very first request takes to compile and load the page
Copy code
coldbox create app
server start
• Lucee 5/Java 11: 4.1 seconds • ColdFuson 2018 U10/Java 11: 63 Seconds • ColdFuson 2016 U16/java 11: 64 seconds Lucee will compile all the CFCs in the ColdBox framework and sample app and display the first page in 4 seconds! It's over a minute for Adobe.
Adobe has shown no interest in address this for the past 2 years 😕
3 Views