Community
Participate
Working Groups
I frequently see the message "Updating dynamic Java working sets" after a startup but I never created or used them. Can this update be avoided if the user does not have any dynamic Java working sets?
See linked bug 551152 and bug 521336. I believe the JDT Tests/Main dynamic working sets are only needed in the context of Search/Problems view to search inside tests/production code only etc. I'm also not using this feature (never used) but I constantly feel the pain and see that job running because I have lots of working sets and lots of projects. Ideally we would set an option in the UI somewhere saying "I don't care about that feature" or to enable that feature *on demand* only.
You have them, maybe you don't use them - they are the "Java Main Sources" and "Java Test Sources" working sets, which allow filtering in generic platform functionality like the Problems view, but are very useful everywhere where working sets can be used (I often use them in "File Search" and sometimes even the package explorer) Andrey wanted this message visible for users, but it should rarely be visible, as most work should be done in the background - maybe you experience something like in bug 551152? (Platform currently has no infrastructure for on-demand updated working sets.)
(In reply to Till Brychcy from comment #2) > (Platform currently has no infrastructure for on-demand updated working > sets.) BTW. the real performance problem discovered in bug 551152 is that ALL working sets are persisted if a single one changes and that got more expensive because of a module related change - but persisting could be skipped for dynamic working sets and it might be easier to add platform api to avoid that.
See bug 558035 comment 23. This feature must be "on demand".
See https://git.eclipse.org/r/158650 patch series (WIP, requires https://git.eclipse.org/r/158649). I plan to polish the patches once I have more time, this will also solve bug 551152.
*** Bug 551152 has been marked as a duplicate of this bug. ***
BTW in bug 558035 comment 24 I found out that the message is shown while the job is running from the POV of the job manager, but is actually waiting to be executed by the ui thread, while other system tasks are being executed by it. This is is misleading, so the updater job should be switched back to back to be a "system" task.
Gerrit change https://git.eclipse.org/r/158646 was merged to [master]. Commit: http://git.eclipse.org/c/jdt/eclipse.jdt.ui.git/commit/?id=b7564aa1baedc14b7ca0b8204cb34aa2e3585c3c
Gerrit change https://git.eclipse.org/r/158647 was merged to [master]. Commit: http://git.eclipse.org/c/jdt/eclipse.jdt.ui.git/commit/?id=a3deff634d65b66bed32e0bae89b36b4a34c36e7
Gerrit change https://git.eclipse.org/r/158648 was merged to [master]. Commit: http://git.eclipse.org/c/jdt/eclipse.jdt.ui.git/commit/?id=06c1ceeb989d438d4bcce926b464888444cd216e
Gerrit change https://git.eclipse.org/r/158649 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=f638d309e065aa92f1b3616728e174b5ed7c4488
Gerrit change https://git.eclipse.org/r/158650 was merged to [master]. Commit: http://git.eclipse.org/c/jdt/eclipse.jdt.ui.git/commit/?id=bc40d561783cfcfa7b4de62fa5499f0b17328bed
New Gerrit change created: https://git.eclipse.org/r/160244
Gerrit change https://git.eclipse.org/r/160244 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=bdcadc11af97a1300195f614550a9c0211c19faa
I believe this is fixed now for default startup scenarios, haven't seen this job running anymore recently. Still can occasionally occur if there is code that tries to inspect all defined working sets *contents* (CDT code does this). Can't do anything about that.