NullPointerException when reintegrating brach

Issue #955 open
Arne Humann
created an issue

Version 1.55 of scm-manager ran into a problem when trying to reintegrate a branch back into its trunk. The behaviour has been reproduced as descripbed below.

A new repository was created compatible to version 1.7. The compatibility was set, because as described in Issue #954 creating the repository without lead to another problem. In another testscenario the repository was created using the webinterface of scm-manager, with no change to the observed error.

$ svnadmin create --compatible-version 1.7 ./test

After importing the repository into scm via the webinterface the server was restartet. Then the following commits where done. The repository files aswell as a dump of all commits are attached.

Revision    Description/Commit message
7   Merge source=trunk to destination=branch, commits 3-6
6   change in trunk (line 4)
5   change in trunk (line 3)
4   change in testbranch (line 2)
3   Created Brach: testBranch
2   initial commit
1   Created test project
0   [no comment]

When trying to reintegrate the branch into its trunk after revision 7 had been committed following error occured (reformatted for better readability):

svn: E175002: PROPFIND of '/svn/test/!svn/bc/6/mergeTest/trunk': 500 java.lang.NullPointerException
at org.tmatesoft.svn.core.internal.server.dav.handlers.DAVPropfindHandler.getProps(DAVPropfindHandler.java:309)
at org.tmatesoft.svn.core.internal.server.dav.handlers.DAVPropfindHandler.handleResource(DAVPropfindHandler.java:198)
at org.tmatesoft.svn.core.internal.server.dav.handlers.DAVResourceWalker.doWalk(DAVResourceWalker.java:65)
at org.tmatesoft.svn.core.internal.server.dav.handlers.DAVResourceWalker.walk(DAVResourceWalker.java:60)
at org.tmatesoft.svn.core.internal.server.dav.handlers.DAVPropfindHandler.execute(DAVPropfindHandler.java:153)
at org.tmatesoft.svn.core.internal.server.dav.DAVServlet.service(DAVServlet.java:132)
at sonia.scm.web.SvnDAVServlet.service(SvnDAVServlet.java:127)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
at com.google.inject.servlet.ManagedServletPipel (http://scm)

This svnadmin version has been used:

$ svnadmin --version
svnadmin, version 1.9.5 (r1770682)
   compiled Dec  4 2016, 19:07:55 on x86_64-pc-linux-gnu

Copyright (C) 2016 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/

The following repository back-end (FS) modules are available:

* fs_fs : Module for working with a plain file (FSFS) repository.
* fs_x : Module for working with an experimental (FSX) repository.
* fs_base : Module for working with a Berkeley DB repository.

Verify showed no errors:

$ svnadmin verify --keep-going ./test
* Verifying repository metadata ...
* Verified revision 0.
* Verified revision 1.
* Verified revision 2.
* Verified revision 3.
* Verified revision 4.
* Verified revision 5.
* Verified revision 6.
* Verified revision 7.

This is the repository info:

$ svnadmin info test
Path: test
UUID: 315d2e5e-ad11-4085-b6dd-164fd38470df
Repository Format: 5
Compatible With Version: 1.6.0
Repository Capability: mergeinfo
Filesystem Type: fsfs
Filesystem Format: 4
FSFS Sharded: yes
FSFS Shard Size: 1000
FSFS Shards Packed: 0/0
FSFS Logical Addressing: no
Configuration File: test/db/fsfs.conf

As client subclipse in was used:

org.eclipse.team.svn (4.0.5.I20170425-1700) "Subversive SVN Team Provider"
org.eclipse.team.svn.revision.graph (4.0.0.I20160226-1700) "Subversive SVN Team Provider Revision Graph Plug-in"
org.polarion.eclipse.team.svn.connector (6.0.4.I20161211-1700) "Subversive SVN Connectors"
org.polarion.eclipse.team.svn.connector.svnkit18 (6.0.4.I20161211-1700) "Subversive SVN 1.8 SVN Kit Connector"
org.tmatesoft.svnkit (1.9.0.r10652) "SVNKit pure Java Subversion Library"
org.eclipse.team.svn (4.0.5.I20170425-1700) "Subversive SVN Team Provider" [Resolved]
org.eclipse.team.svn.core (4.0.5.I20170425-1700) "Subversive SVN Team Provider Core Plug-in" [Active]
org.eclipse.team.svn.help (4.0.3.I20161129-1700) "Subversive SVN Team Provider User Guide Plug-in" [Resolved]
org.eclipse.team.svn.revision.graph (4.0.0.I20160226-1700) "Subversive SVN Team Provider Revision Graph Plug-in" [Active]
org.eclipse.team.svn.ui (4.0.5.I20170425-1700) "Subversive SVN Team Provider UI Plug-in" [Active]
org.eclipse.team.svn.ui.startup (4.0.0.I20160226-1700) "Subversive Core Startup" [Active]
org.polarion.eclipse.team.svn.connector (6.0.4.I20161211-1700) "Subversive SVN Connectors" [Resolved]
org.polarion.eclipse.team.svn.connector.svnkit18 (6.0.4.I20161211-1700) "Subversive SVN 1.8 SVN Kit Connector" [Active]
org.tmatesoft.svnkit (1.9.0.r10652) "SVNKit pure Java Subversion Library" [Starting]

Comments (4)

  1. Arne Humann reporter

    It looks like this problem is fixed with the latest stable release of svnkit (1.9.1). Since the latest SCM-Manager release was a few days befor svnkits release I wonder if this error is fixed in SCM-Manager 1.57?

  2. Log in to comment