Details
Description
Some tasks allow setting numeric values which are invalid. Examples are:
- Purge incomplete Docker uploads - 'Age in Hours'
- Purge Unused type tasks - Last used in days
The UI for Scheduled Tasks allows for configuring 'bad' settings that will inevitably cause the task to fail. In this case I
2015-12-16 11:54:47,559-0800 ERROR [quartz-2-thread-19] *SYSTEM org.sonatype.nexus.repository.maven.tasks.PurgeMavenUnusedSnapshotsTask - Failed to run task 'Purge Unused Maven Snapshots from *' on repository 'maven-snapshots' java.lang.IllegalArgumentException: Number of days must be greater than zero at com.google.common.base.Preconditions.checkArgument(Preconditions.java:122) [com.google.guava:18.0.0] at org.sonatype.nexus.repository.maven.internal.PurgeUnusedSnapshotsFacetImpl.purgeUnusedSnapshots(PurgeUnusedSnapshotsFacetImpl.java:104) [na:na] at org.sonatype.nexus.common.stateguard.MethodInvocationAction.run(MethodInvocationAction.java:39) [na:na] at org.sonatype.nexus.common.stateguard.StateGuard$GuardImpl.run(StateGuard.java:267) [na:na] at org.sonatype.nexus.common.stateguard.GuardedInterceptor.invoke(GuardedInterceptor.java:53) [na:na] at org.sonatype.nexus.repository.maven.tasks.PurgeMavenUnusedSnapshotsTask.execute(PurgeMavenUnusedSnapshotsTask.java:59) [na:na] at org.sonatype.nexus.repository.RepositoryTaskSupport.execute(RepositoryTaskSupport.java:56) [na:na] at org.sonatype.nexus.scheduling.TaskSupport.call(TaskSupport.java:89) [org.sonatype.nexus.scheduling:3.0.0.SNAPSHOT] at org.sonatype.nexus.quartz.internal.task.QuartzTaskJob.doExecute(QuartzTaskJob.java:137) [org.sonatype.nexus.quartz:3.0.0.SNAPSHOT] at org.sonatype.nexus.quartz.internal.task.QuartzTaskJob.execute(QuartzTaskJob.java:99) [org.sonatype.nexus.quartz:3.0.0.SNAPSHOT] at org.quartz.core.JobRunShell.run(JobRunShell.java:202) [org.quartz-scheduler.quartz:2.2.2] at org.sonatype.nexus.thread.internal.MDCAwareRunnable.run(MDCAwareRunnable.java:40) [org.sonatype.nexus.thread:3.0.0.SNAPSHOT] at org.apache.shiro.subject.support.SubjectRunnable.doRun(SubjectRunnable.java:120) [org.apache.shiro.core:1.2.4] at org.apache.shiro.subject.support.SubjectRunnable.run(SubjectRunnable.java:108) [org.apache.shiro.core:1.2.4] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_66] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_66] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_66] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_66] at java.lang.Thread.run(Thread.java:745) [na:1.8.0_66]
Reproduction, configure "Purge Unused Snapshots" with -1 Days(see screenshot). Saves no problem but errors on run.
Attachments
Issue Links
- discovered while testing
-
NEXUS-13137 Purge unused components and assets task should support PyPi and Bower proxy repositories
-
- Closed
-