Xtext Build and Indexing taking more time [message #1832350] |
Thu, 17 September 2020 01:08  |
Eclipse User |
|
|
|
Hello All,
When project build happen, indexing taking lot of time. build time increased, not allowed to work on the DSL until build completes.
The grammar size little big[1100 lines] and contains some cross reference rules.
Project also contains more number of DSLs[more than 3000 dsl files], so when build happen on this project it takes around 18-20 min for complete build
including [parsing+linking+validation+generation]. if i exclude generation it reduces for 2 min.
Need some ideas/best methodologies to improvise the build and index performance.
Thank you
Regards
Shashi
|
|
|
|
|
|
|
|
|
|
|
Re: Xtext Build and Indexing taking more time [message #1832475 is a reply to message #1832396] |
Fri, 18 September 2020 09:55  |
Eclipse User |
|
|
|
Hi
See https://bugs.eclipse.org/bugs/show_bug.cgi?id=420710#c2 and https://bugs.eclipse.org/bugs/show_bug.cgi?id=486083 and its see alsoes for some history on this problem. The problem seems so old that a number of Bugzillas have been auto-CLOSED WONTFIX.
My attempts to debug the build recursions failed because I couldn't understand the code, or install a debuggable version to instrument usefully or find the developer's debug ".options".
I therefore gave up and adjusted my working practices to minimize the pain caused by the defective index, that I never use, and/or defective auto-builder that should only build once. I also minimize my use of Xtend to just M2T StringTemplates..
You can see my restructuring in the org.eclipse.ocl.examples.build plugin that houses the MWE2 build procedures and dependencies for the five/six org.eclipse.ocl.xtext.... editors. The editor plugins do NOT have an Xtext nature. Test plugins do NOT have an Xtext nature to prevent *.uml files burning time even though I know of no Xtext-based UML tooling that requires an index. Only org.eclipse.ocl.examples.build has an Xtext nature which much reduces the opportunities for Xtext build loops. Beware of checking out org.eclipse.emf.core since that now has an Xtext nature.
My observations suggested that the dreadful performance was intermittent, perhaps caused by accidental GIT checkout timing, perhaps caused by indeterminate Set ordering in worklists. If you have a solid repro please put it forward for investigation.
The solution might be as trivial as adding a validation warning to alert the user to erroneous Xtext/Java build nature ordering. Since Xtext depends on the Index which depends on Java, I never know what the correct order is or even if there is a correct order. Perhaps the bug is differently a failure of a builder to detect nothing was actually built and so that no timestamps are to be changed and so provoke a loop.
Regards
Ed Willink
|
|
|
Powered by
FUDForum. Page generated in 0.05746 seconds