-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 3.20.1
-
Fix Version/s: 3.22.0
-
Component/s: Browse Storage, Scheduled Tasks, Upgrade
-
Labels:
-
Notability:2
If an upgrade requires rebuilding the browse_node table then Nexus Repo will schedule on task per repository to automatically run after restart. When there are a large number of repositories (e.g., around 1000) these tasks get into a livelock situation, where none of them can run. This results in a failed upgrade.
The only workaround is to add this line to nexus.properties:
nexus.browse.component.tree.automaticRebuild=false
And to also run database queries while Nexus is not running to remove the browse tree rebuild tasks that were automatically added after upgrade.
Needless to say, this is not a good experience for our users.
Expected: The number of scheduled tasks set to run concurrently should be limited somehow. Either serialize them, or use a thread pool to schedule them to run in batches.
- relates
-
NEXUS-22855 If too many tasks are scheduled to run simultaneously Nexus Repo will get into a livelock
-
- New
-