gwt-eclipse-plugin
gwt-eclipse-plugin copied to clipboard
Painfully slow "Validating GWT components"
Not sure that GWT plugin is responsible for that. On project clean validation starts, and it takes more than a minute per validation of each hundred java/ui.xml files in my project on very high end desktop PC. If plugin is responsible for that, then may be it's good idea to check MD5 hash of files before validating them (may be they are not changed since previous validation). Also I don't see any high CPU loading, so this validation process probably could be multithreaded somehow.
Is this new?
@branflake2267 No, it’s not new, but getting worse with my project size increased.
Okay, I know what you're talking about. I've noticed this issue too. Thanks for reporting. I'll mark it as a bug and take a look at it on the next go.
Could this be related to (and maybe fixed by) #383?
@CrushaKRool @branflake2267 I've installed new version of GWT plugin from http://storage.googleapis.com/gwt-eclipse-plugin/v3/snapshot, and unfortunately no performance improvement for this issue :-(
Bummer. I'd like to help fix it too! I'm about a week or two weeks off before I can spend more time. @slavap can you tell me more about your project config?
@branflake2267 Nothing special about my project config. Typical Maven project with GWT facet. I think the problem is in enormous number of ui.xml files, I have around 400 of them. And during "Validating GWT components" I see that all java files with @UiTemplate annotations are processed. So if I understand it properly, GWT is making sure that all @UiField have corresponding declarations in ui.xml
@branflake2267 I've updated my Eclipse STS to the latest version 4.10 today, and I don't see "Validating GWT components" step on project clean anymore :-) Everything else is working just fine, so I'm really happy how it is right now :-) Don't know if Eclipse fixed something, or there is some incompatibility with GWT plugin, but clean is fast now and I don't see any errors in log.
@slavap, this issue should have been fixed by https://github.com/gwt-plugins/gwt-eclipse-plugin/pull/386 Is the issue still relevant?
@protoism still present - though with fast SSD and processor it is not so painful. What I see that plug-in goes through all ui.xml files after each “project clear” or “maven update”, May be also some other activity.
@slavap Honestly speaking, I doubt that the issue can be easily solved. All changes being made are about making the plugin just build without regressions... touching the plugin... who knows if and when we will be able. Moreover, uibinder stuff is not that popular nowadays!
Anyway, if you want to spend a few minutes on this, I'd say that this information might be useful:
- Verify that there is no O/S interference, say... antivirus (sorry for the doubt)
- Profile eclipse and try to get a plausible stack trace of hotspots (https://visualvm.github.io/ should be ok)
- Why not, a small movie showing the problem
@protoism
All changes being made are about making the plugin just build without regressions... touching the plugin... who knows if and when we will be able.
I'm very glad that this step was actually done. No high expectations about anything else.
- Sure thing, no antivirus active.
- Profile eclipse and try to get a plausible stack trace of hotspots << not sure I'm qualified enough for such things :-)
- Did additional testing - and I think we can close this issue for now. On my huge project "Validating GWT components" currently takes about 40 seconds (on nvme SSD and 4+GHz CPU) - and I think that is kind of acceptable time.