If I remove the custom tag paths... |
Are these ones set in CFAdmin or in Application.cfc?
And how many mappings are there, and how many files / directories are in the directory structure you're pointing to? Is it the same with ANY custom tag mappings, or is it just specific ones? Like for example if you have a single mapping to C:\someEmptyDir, is the problem the same?
I'm just needing to reinstall CF10 to troubleshoot another problem, but it's almost done so will have a look at this shortly and see if I can replicate.
--
Adam
OK, I've tracked it down.
It seems expandPath() is REALLY REALLY REALLY slow if you have custom tag paths set that have a lot of files in them.
I added my scratch dir to my custom tag path (6000 files, 2000 dirs), and this caused expandPath() to take about 1.5sec per path to execute (and it's called for every template having its debug output displayed, so that could be really a lot of hits to it. One might think that's a horrendous sized dir to have in a custom tag path, but the thing is, running the same code with the same config on CF9 causes no discernable delay at all.
So I think, Matt, you've found a serious bug in CF10 there. This isn't just going to impact debugging, it's going to impact any code using expandPath() in conjunction with custom tag paths (not an edgecase, I think!)
YIKES
Would you like to raise a bug: https://bugbase.adobe.com/ ? You discovered it, 'n' all.
I'm amidst some communications with one of the CF10 engineers @ the mo', so I'll bring it to his attention as soon as you post back the bug ref.
I will also say... that code in the classic.cfm debug template is HORRENDOUS. It should be binned and rewritten by someone competent. But that's nothing to do with this bug, it's just an observation.
--
Adam