On 25.11.2015 17:04, Bert Huijben wrote:


-----Original Message-----
From: Marc Strapetz [mailto:marc.strap...@syntevo.com]
Sent: woensdag 25 november 2015 16:09
To: Branko Čibej <br...@apache.org>; dev@subversion.apache.org
Subject: Re: JavaHL: "Not implemented" error in StatusEditor.addAbsent

On 25.11.2015 10:43, Branko Čibej wrote:
On 25.11.2015 09:49, Marc Strapetz wrote:
One of our users has reported following Exception against Subversion
1.9.2:

Caused by: java.lang.RuntimeException: Not implemented:
StatusEditor.addAbsent
      at

org.apache.subversion.javahl.remote.StatusEditor.addAbsent(StatusEditor.j
ava:110)
      ... 15 more

Actually, StatusEditor.addAbsent looks like this:

public void addAbsent(String relativePath,
                        NodeKind kind,
                        long replacesRevision)
{
    //DEBUG:System.err.println("  [J] StatusEditor.addAbsent");
    checkState();
    throw new RuntimeException("Not implemented:
StatusEditor.addAbsent");
}

Is there any more debug information I should try to collect?

Well, it's not implemented ... I can't think of anything more specific?

I'm wondering whether it was not implemented by intention, because it's
not expected to be called (same as for copy/move)? Actually, this is the
only user who is experiencing this problem, so conditions causing this
problem seem to be very specific. Fortunately it's currently perfectly
reproducible for him. Should I ask for an "svn status -u" output?

This should be perfectly reproducable when you call status on a directory that 
contains subdirectories that you are not allowed to read (via a mod_authz_svn 
config file or similar svnserve config).

svn status -u explicitly ignores absent nodes.

Thanks, it actually was for another user now. Attached patch ignores absent nodes too and has been confirmed to resolve the problem.

-Marc
Index: 
subversion/bindings/javahl/src/org/apache/subversion/javahl/remote/StatusEditor.java
===================================================================
--- 
subversion/bindings/javahl/src/org/apache/subversion/javahl/remote/StatusEditor.java
        (revision 1718836)
+++ 
subversion/bindings/javahl/src/org/apache/subversion/javahl/remote/StatusEditor.java
        (working copy)
@@ -107,7 +107,7 @@
     {
         //DEBUG:System.err.println("  [J] StatusEditor.addAbsent");
         checkState();
-        throw new RuntimeException("Not implemented: StatusEditor.addAbsent");
+        // ignore this callback, as svn status -u does
     }
 
     public void alterDirectory(String relativePath,

Reply via email to