From f680c9335a22952b0d8f02c4edbf60e5dcc91141 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Tue, 9 Nov 2021 14:36:20 +0100 Subject: [PATCH] Fix concurrent modification in SVN modify command (#1849) --- gradle/changelog/concurrent_modification.yaml | 2 ++ .../main/java/sonia/scm/repository/spi/SvnModifyCommand.java | 2 +- .../java/sonia/scm/repository/spi/SvnModifyCommandTest.java | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) create mode 100644 gradle/changelog/concurrent_modification.yaml diff --git a/gradle/changelog/concurrent_modification.yaml b/gradle/changelog/concurrent_modification.yaml new file mode 100644 index 0000000000..43d486b6fc --- /dev/null +++ b/gradle/changelog/concurrent_modification.yaml @@ -0,0 +1,2 @@ +- type: fixed + description: Concurrent modification error in SVN modify command ([#1849](https://github.com/scm-manager/scm-manager/pull/1849)) diff --git a/scm-plugins/scm-svn-plugin/src/main/java/sonia/scm/repository/spi/SvnModifyCommand.java b/scm-plugins/scm-svn-plugin/src/main/java/sonia/scm/repository/spi/SvnModifyCommand.java index 8b30766525..ba712daba3 100644 --- a/scm-plugins/scm-svn-plugin/src/main/java/sonia/scm/repository/spi/SvnModifyCommand.java +++ b/scm-plugins/scm-svn-plugin/src/main/java/sonia/scm/repository/spi/SvnModifyCommand.java @@ -82,7 +82,7 @@ public class SvnModifyCommand implements ModifyCommand { private String getCurrentRevision(SVNClientManager clientManager, WorkingCopy workingCopy) { try { - return Integer.toString(clientManager.getStatusClient().doStatus(workingCopy.getWorkingRepository(), false).getRevision().getID()); + return Long.toString(clientManager.getStatusClient().doStatus(workingCopy.getWorkingRepository(), false).getRevision().getNumber()); } catch (SVNException e) { throw new InternalRepositoryException(entity(repository), "Could not read status of working repository", e); } diff --git a/scm-plugins/scm-svn-plugin/src/test/java/sonia/scm/repository/spi/SvnModifyCommandTest.java b/scm-plugins/scm-svn-plugin/src/test/java/sonia/scm/repository/spi/SvnModifyCommandTest.java index caf492a5b5..e11467552e 100644 --- a/scm-plugins/scm-svn-plugin/src/test/java/sonia/scm/repository/spi/SvnModifyCommandTest.java +++ b/scm-plugins/scm-svn-plugin/src/test/java/sonia/scm/repository/spi/SvnModifyCommandTest.java @@ -185,7 +185,7 @@ public class SvnModifyCommandTest extends AbstractSvnCommandTestBase { request.addRequest(new ModifyCommandRequest.CreateFileRequest("Test123", testfile, false)); request.setCommitMessage("this should not pass"); request.setAuthor(new Person("Arthur Dent", "dent@hitchhiker.com")); - request.setExpectedRevision("10"); + request.setExpectedRevision("5"); svnModifyCommand.execute(request);