jenkinsci / jenkinsci/subversion-plugin

[JENKINS-16865] SVN fail to revert working dir : NullPointerException

Open
#1,005 8 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

component:subversion-plugin imported-jira-issue priority:major resolution:unresolved
Dominant language
Java
Stars
131
Forks
275
Avg merge
12h 4m
Merged PRs (30d)
6

Description

We have this error when we build using the revert + update SVN strategy.

Building remotely on MobileXcodeNode in workspace /Users/dev/jenkins/workspace/project
Reverting /Users/dev/jenkins/workspace/project/source to depth infinity with ignoreExternals: false
FATAL: null
java.lang.NullPointerException
	at hudson.scm.subversion.UpdateUpdater$TaskImpl.perform(UpdateUpdater.java:176)
	at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:153)
	at hudson.scm.SubversionSCM$CheckOutTask.perform(SubversionSCM.java:903)
	at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:884)
	at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:867)
	at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2348)
	at hudson.remoting.UserRequest.perform(UserRequest.java:118)
	at hudson.remoting.UserRequest.perform(UserRequest.java:48)
	at hudson.remoting.Request$2.run(Request.java:326)
	at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:680)

When I try to do the revert manually on the node I can see this error not correctly handled by Jenkins :

MobileXcodeNode:source dev$ svn revert . -R
Failed to revert 'Titanium_app/Resources' -- try updating instead.

Thanks


Originally reported by eboudrant, imported from: SVN fail to revert working dir : NullPointerException
  • assignee: kutzi
  • status: Open
  • priority: Major
  • component(s): subversion-plugin
  • label(s): revert, subversion, svn
  • resolution: Unresolved
  • votes: 6
  • watchers: 8
  • imported: 20251212-090250
Raw content of original issue

We have this error when we build using the revert + update SVN strategy.

Building remotely on MobileXcodeNode in workspace /Users/dev/jenkins/workspace/project
Reverting /Users/dev/jenkins/workspace/project/source to depth infinity with ignoreExternals: false
FATAL: null
java.lang.NullPointerException
	at hudson.scm.subversion.UpdateUpdater$TaskImpl.perform(UpdateUpdater.java:176)
	at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:153)
	at hudson.scm.SubversionSCM$CheckOutTask.perform(SubversionSCM.java:903)
	at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:884)
	at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:867)
	at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2348)
	at hudson.remoting.UserRequest.perform(UserRequest.java:118)
	at hudson.remoting.UserRequest.perform(UserRequest.java:48)
	at hudson.remoting.Request$2.run(Request.java:326)
	at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:680)

When I try to do the revert manually on the node I can see this error not correctly handled by Jenkins :

MobileXcodeNode:source dev$ svn revert . -R
Failed to revert 'Titanium_app/Resources' -- try updating instead.

Thanks

environment
Jenkins Subversion Plug-in : 1.45<br/>
Jenkins node running : Unix slave, version 2.21

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at hudson.scm.subversion.UpdateUpdater$TaskImpl.perform in UpdateUpdater.java:176, using the reported SVN revert output and stack trace as the reproduction context. Trace how the failed revert of Titanium_app/Resources is handled, then verify that the revert-plus-update strategy reports the SVN failure instead of producing a NullPointerException.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.