doAnotate problem when parent directory is renamed.

View: New views
9 Messages — Rating Filter:   Alert me  

doAnotate problem when parent directory is renamed.

by Pablo Beltran :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

SVNClientManager.doAnotate (version 1.3.0) doesn't work when the parent directory is renamed.

Example: (Blame from revision 1 to HEAD for a url that exits in pegRevision)

logCli.doAnnotate(url, pegRev, 1, -1,...);

Then SVNKit throws an Exception (file not found in revision N, where N is the first revision for the file).

Best regards,
Pablo.

Re: doAnotate problem when parent directory is renamed.

by Alexander Kitaev-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Does native Subversion client works with the equivalent command line
command?

Alexander Kitaev,
TMate Software,
http://svnkit.com/ - Java [Sub]Versioning Library!
http://sqljet.com/ - Java SQLite Library!

Pablo Beltran wrote:

> Hi,
>
> SVNClientManager.doAnotate (version 1.3.0) doesn't work when the parent
> directory is renamed.
>
> Example: (Blame from revision 1 to HEAD for a url that exits in pegRevision)
>
> logCli.doAnnotate(url, pegRev, 1, -1,...);
>
> Then SVNKit throws an Exception (file not found in revision N, where N is
> the first revision for the file).
>
> Best regards,
> Pablo.

---------------------------------------------------------------------
To unsubscribe, e-mail: svnkit-users-unsubscribe@...
For additional commands, e-mail: svnkit-users-help@...


Re: doAnotate problem when parent directory is renamed.

by Pablo Beltran :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

The command line works.

A similar problem occurs with doLog when a the branch is renamed.

Best regards,
Pablo


Alexander Kitaev-3 wrote:
Does native Subversion client works with the equivalent command line
command?

Alexander Kitaev,
TMate Software,
http://svnkit.com/ - Java [Sub]Versioning Library!
http://sqljet.com/ - Java SQLite Library!

Pablo Beltran wrote:
> Hi,
>
> SVNClientManager.doAnotate (version 1.3.0) doesn't work when the parent
> directory is renamed.
>
> Example: (Blame from revision 1 to HEAD for a url that exits in pegRevision)
>
> logCli.doAnnotate(url, pegRev, 1, -1,...);
>
> Then SVNKit throws an Exception (file not found in revision N, where N is
> the first revision for the file).
>
> Best regards,
> Pablo.

---------------------------------------------------------------------
To unsubscribe, e-mail: svnkit-users-unsubscribe@svnkit.com
For additional commands, e-mail: svnkit-users-help@svnkit.com

Re: doAnotate problem when parent directory is renamed.

by Pablo Beltran :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

Am I the only who have a lot of problems with svnkit and renamed, copied or moved directories? doAnotate, doLog,...

I think this is possible because if not then a lot of users should experience the problem (I guess).

So, am I the only one?

Thanks in advanced
Pablo

Alexander Kitaev-3 wrote:
Does native Subversion client works with the equivalent command line
command?

Alexander Kitaev,
TMate Software,
http://svnkit.com/ - Java [Sub]Versioning Library!
http://sqljet.com/ - Java SQLite Library!

Pablo Beltran wrote:
> Hi,
>
> SVNClientManager.doAnotate (version 1.3.0) doesn't work when the parent
> directory is renamed.
>
> Example: (Blame from revision 1 to HEAD for a url that exits in pegRevision)
>
> logCli.doAnnotate(url, pegRev, 1, -1,...);
>
> Then SVNKit throws an Exception (file not found in revision N, where N is
> the first revision for the file).
>
> Best regards,
> Pablo.

---------------------------------------------------------------------
To unsubscribe, e-mail: svnkit-users-unsubscribe@svnkit.com
For additional commands, e-mail: svnkit-users-help@svnkit.com

Re: doAnotate problem when parent directory is renamed.

by Alexander Sinyushkin :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello Pablo,

Can you please send us a script\description how to reproduce the problem.
How do you call the svn command line, with what parameters? How do you
call SVNLogClient.doAnnotate()
with all parameters precisely.

A bash script demonstrating the problem (creating a test repository,
filling it with the necessary environment) would
be preferable, but precise steps will be enough, too.

Thank you.

----
Alexander Sinyushkin,
TMate Software,
http://svnkit.com/ - Java [Sub]Versioning Library!



Pablo Beltran wrote:

> Hi,
>
> Am I the only who have a lot of problems with svnkit and renamed, copied or
> moved directories? doAnotate, doLog,...
>
> I think this is possible because if not then a lot of users should
> experience the problem (I guess).
>
> So, am I the only one?
>
> Thanks in advanced
> Pablo
>
>
> Alexander Kitaev-3 wrote:
>  
>> Does native Subversion client works with the equivalent command line
>> command?
>>
>> Alexander Kitaev,
>> TMate Software,
>> http://svnkit.com/ - Java [Sub]Versioning Library!
>> http://sqljet.com/ - Java SQLite Library!
>>
>> Pablo Beltran wrote:
>>    
>>> Hi,
>>>
>>> SVNClientManager.doAnotate (version 1.3.0) doesn't work when the parent
>>> directory is renamed.
>>>
>>> Example: (Blame from revision 1 to HEAD for a url that exits in
>>> pegRevision)
>>>
>>> logCli.doAnnotate(url, pegRev, 1, -1,...);
>>>
>>> Then SVNKit throws an Exception (file not found in revision N, where N is
>>> the first revision for the file).
>>>
>>> Best regards,
>>> Pablo.
>>>      
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: svnkit-users-unsubscribe@...
>> For additional commands, e-mail: svnkit-users-help@...
>>
>>
>>
>>    
>
>  

---------------------------------------------------------------------
To unsubscribe, e-mail: svnkit-users-unsubscribe@...
For additional commands, e-mail: svnkit-users-help@...


Re: doAnotate problem when parent directory is renamed.

by Alexander Sinyushkin :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I would also like to mention that I tried the following scenario:
I had a test repository at revision 2 with the following content in it:

/A
/A/B
/iota

In revision 3 I added a directory /A/B/C.
In revision 4 I added a file /A/B/C/fileInC.
In revision 5 I changed properties on /A.
In revision 6 I renamed /A/B to /A/B_renamed.
In revision 7 I changed the contents of the file /iota.

Then I tried the following blame command using 'jsvn' command line client
(based on SVNKit):

jsvn blame -r1:HEAD
file:///home/alex/workspace/tmp/testRepos/A/B/C/fileInC@5

fileInC exists in rev 5, HEAD is 7.

I got an error like this:

svn: File not found: revision 7, path '/A/B/C/fileInC'

The same error I got after trying the same command with the native 'svn'
command line client:

svn blame -r1:HEAD file:///home/alex/workspace/tmp/testRepos/A/B/C/fileInC@5
svn: File not found: revision 7, path '/A/B/C/fileInC'

I also tried SVNLogClient.doAnnotate(SVNURL..) with the following
parameters:

           
logClient.doAnnotate(SVNURL.parseURIEncoded("file:///home/alex/workspace/tmp/testRepos/A/B/C/fileInC"),
SVNRevision.create(5), SVNRevision.create(1), SVNRevision.HEAD,  new
ISVNAnnotateHandler() {

And got the same exception:

org.tmatesoft.svn.core.SVNException: svn: File not found: revision 7,
path '/A/B/C/fileInC'
    at
org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:64)
    at
org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:51)
    at
org.tmatesoft.svn.core.internal.io.fs.FSRevisionRoot.getNodeHistory(FSRevisionRoot.java:65)
    at
org.tmatesoft.svn.core.internal.io.fs.FSNodeHistory.checkAncestryOfPegPath(FSNodeHistory.java:66)
    at
org.tmatesoft.svn.core.internal.io.fs.FSLocationsFinder.traceNodeLocations(FSLocationsFinder.java:57)
    at
org.tmatesoft.svn.core.internal.io.fs.FSRepository.getLocationsImpl(FSRepository.java:383)
    at
org.tmatesoft.svn.core.io.SVNRepository.getLocations(SVNRepository.java:1087)
    at
org.tmatesoft.svn.core.io.SVNRepository.getLocations(SVNRepository.java:1515)
    at
org.tmatesoft.svn.core.wc.SVNBasicClient.getLocations(SVNBasicClient.java:878)
    at
org.tmatesoft.svn.core.wc.SVNBasicClient.createRepository(SVNBasicClient.java:534)
    at
org.tmatesoft.svn.core.wc.SVNLogClient.doAnnotate(SVNLogClient.java:397)
    at
org.tmatesoft.svn.core.wc.SVNLogClient.doAnnotate(SVNLogClient.java:294)
    at Tests.main(Tests.java:55)

This error is not the one you've described. That's why I'm asking you to
send us
detailed instructions (like mine) how to reproduce the problem.


----
Alexander Sinyushkin,
TMate Software,
http://svnkit.com/ - Java [Sub]Versioning Library!



Pablo Beltran wrote:

> Hi,
>
> Am I the only who have a lot of problems with svnkit and renamed, copied or
> moved directories? doAnotate, doLog,...
>
> I think this is possible because if not then a lot of users should
> experience the problem (I guess).
>
> So, am I the only one?
>
> Thanks in advanced
> Pablo
>
>
> Alexander Kitaev-3 wrote:
>> Does native Subversion client works with the equivalent command line
>> command?
>>
>> Alexander Kitaev,
>> TMate Software,
>> http://svnkit.com/ - Java [Sub]Versioning Library!
>> http://sqljet.com/ - Java SQLite Library!
>>
>> Pablo Beltran wrote:
>>> Hi,
>>>
>>> SVNClientManager.doAnotate (version 1.3.0) doesn't work when the parent
>>> directory is renamed.
>>>
>>> Example: (Blame from revision 1 to HEAD for a url that exits in
>>> pegRevision)
>>>
>>> logCli.doAnnotate(url, pegRev, 1, -1,...);
>>>
>>> Then SVNKit throws an Exception (file not found in revision N, where N is
>>> the first revision for the file).
>>>
>>> Best regards,
>>> Pablo.
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: svnkit-users-unsubscribe@...
>> For additional commands, e-mail: svnkit-users-help@...
>>
>>
>>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: svnkit-users-unsubscribe@...
For additional commands, e-mail: svnkit-users-help@...


Re: doAnotate problem when parent directory is renamed.

by Pablo Beltran :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello Allexander,

I've recorded a video:

http://www.upversion.com/downloads/blame.mpeg

You can see the problem.

The first step tries to show that my code works. I execute the blame command on a file name TreeBrowserView.xml and all works fine (calling to SVNKit).

The second step tries to show the problem on a file which parent directory has been renamed while the same code is executed.

I've put a breakpoint just before calling the SVNKit library. Then you can see how doAnotate is invoked. Before call doAnotate I execute the same command with svn command line and it works, but when I call SVNKit an exception is raised.

The revision for this file (SVNWrapper.java) is 245. The range passed to SVNKit to do blame is 1:HEAD. The exception says that the file not exists in the revision 7, but you can see how the log (retrieved from SVNKit too) indicates that the file exists in revision 7 though in a distinct branch/path.

In the revision 17 the parent path "java-src" was renamed to "src_java" and it seems the problem (I debugged the svnkit sources up to the pegvRevision, just when the exception is raised).

Best regards,
Pablo.


Alexander Sinyushkin wrote:
Hello Pablo,

Can you please send us a script\description how to reproduce the problem.
How do you call the svn command line, with what parameters? How do you
call SVNLogClient.doAnnotate()
with all parameters precisely.

A bash script demonstrating the problem (creating a test repository,
filling it with the necessary environment) would
be preferable, but precise steps will be enough, too.

Thank you.

----
Alexander Sinyushkin,
TMate Software,
http://svnkit.com/ - Java [Sub]Versioning Library!



Pablo Beltran wrote:
> Hi,
>
> Am I the only who have a lot of problems with svnkit and renamed, copied or
> moved directories? doAnotate, doLog,...
>
> I think this is possible because if not then a lot of users should
> experience the problem (I guess).
>
> So, am I the only one?
>
> Thanks in advanced
> Pablo
>
>
> Alexander Kitaev-3 wrote:
>  
>> Does native Subversion client works with the equivalent command line
>> command?
>>
>> Alexander Kitaev,
>> TMate Software,
>> http://svnkit.com/ - Java [Sub]Versioning Library!
>> http://sqljet.com/ - Java SQLite Library!
>>
>> Pablo Beltran wrote:
>>    
>>> Hi,
>>>
>>> SVNClientManager.doAnotate (version 1.3.0) doesn't work when the parent
>>> directory is renamed.
>>>
>>> Example: (Blame from revision 1 to HEAD for a url that exits in
>>> pegRevision)
>>>
>>> logCli.doAnnotate(url, pegRev, 1, -1,...);
>>>
>>> Then SVNKit throws an Exception (file not found in revision N, where N is
>>> the first revision for the file).
>>>
>>> Best regards,
>>> Pablo.
>>>      
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: svnkit-users-unsubscribe@svnkit.com
>> For additional commands, e-mail: svnkit-users-help@svnkit.com
>>
>>
>>
>>    
>
>  

---------------------------------------------------------------------
To unsubscribe, e-mail: svnkit-users-unsubscribe@svnkit.com
For additional commands, e-mail: svnkit-users-help@svnkit.com

Re: doAnotate problem when parent directory is renamed.

by Alexander Sinyushkin :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello Pablo,

Thank you for the video, but still we can not reproduce the bug.

Can you send us your repository, so that we could reproduce it. If it's
impossible, then please,
do the following things.

Try the same command in shell except for running it with 'jsvn' (SVNKit
based command line client, it can be found in a standalone distribution
archive), like this:

$jsvn blame file://...SVNWrapper.java@245 -r 1:HEAD

But before running this command turn on SVNKit logging (refer to
https://wiki.svnkit.com/Troubleshooting).
If this command fails just like SVNLogClient did, find the log file and
send it to us. thank you.


----
Alexander Sinyushkin,
TMate Software,
http://svnkit.com/ - Java [Sub]Versioning Library!



Pablo Beltran wrote:

> Hello Allexander,
>
> I've recorded a video:
>
> http://www.upversion.com/downloads/blame.mpeg
>
> You can see the problem.
>
> The first step tries to show that my code works. I execute the blame command
> on a file name TreeBrowserView.xml and all works fine (calling to SVNKit).
>
> The second step tries to show the problem on a file which parent directory
> has been renamed while the same code is executed.
>
> I've put a breakpoint just before calling the SVNKit library. Then you can
> see how doAnotate is invoked. Before call doAnotate I execute the same
> command with svn command line and it works, but when I call SVNKit an
> exception is raised.
>
> The revision for this file (SVNWrapper.java) is 245. The range passed to
> SVNKit to do blame is 1:HEAD. The exception says that the file not exists in
> the revision 7, but you can see how the log (retrieved from SVNKit too)
> indicates that the file exists in revision 7 though in a distinct
> branch/path.
>
> In the revision 17 the parent path "java-src" was renamed to "src_java" and
> it seems the problem (I debugged the svnkit sources up to the pegvRevision,
> just when the exception is raised).
>
> Best regards,
> Pablo.
>
>
>
> Alexander Sinyushkin wrote:
>  
>> Hello Pablo,
>>
>> Can you please send us a script\description how to reproduce the problem.
>> How do you call the svn command line, with what parameters? How do you
>> call SVNLogClient.doAnnotate()
>> with all parameters precisely.
>>
>> A bash script demonstrating the problem (creating a test repository,
>> filling it with the necessary environment) would
>> be preferable, but precise steps will be enough, too.
>>
>> Thank you.
>>
>> ----
>> Alexander Sinyushkin,
>> TMate Software,
>> http://svnkit.com/ - Java [Sub]Versioning Library!
>>
>>
>>
>> Pablo Beltran wrote:
>>    
>>> Hi,
>>>
>>> Am I the only who have a lot of problems with svnkit and renamed, copied
>>> or
>>> moved directories? doAnotate, doLog,...
>>>
>>> I think this is possible because if not then a lot of users should
>>> experience the problem (I guess).
>>>
>>> So, am I the only one?
>>>
>>> Thanks in advanced
>>> Pablo
>>>
>>>
>>> Alexander Kitaev-3 wrote:
>>>  
>>>      
>>>> Does native Subversion client works with the equivalent command line
>>>> command?
>>>>
>>>> Alexander Kitaev,
>>>> TMate Software,
>>>> http://svnkit.com/ - Java [Sub]Versioning Library!
>>>> http://sqljet.com/ - Java SQLite Library!
>>>>
>>>> Pablo Beltran wrote:
>>>>    
>>>>        
>>>>> Hi,
>>>>>
>>>>> SVNClientManager.doAnotate (version 1.3.0) doesn't work when the parent
>>>>> directory is renamed.
>>>>>
>>>>> Example: (Blame from revision 1 to HEAD for a url that exits in
>>>>> pegRevision)
>>>>>
>>>>> logCli.doAnnotate(url, pegRev, 1, -1,...);
>>>>>
>>>>> Then SVNKit throws an Exception (file not found in revision N, where N
>>>>> is
>>>>> the first revision for the file).
>>>>>
>>>>> Best regards,
>>>>> Pablo.
>>>>>      
>>>>>          
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: svnkit-users-unsubscribe@...
>>>> For additional commands, e-mail: svnkit-users-help@...
>>>>
>>>>
>>>>
>>>>    
>>>>        
>>>  
>>>      
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: svnkit-users-unsubscribe@...
>> For additional commands, e-mail: svnkit-users-help@...
>>
>>
>>
>>    
>
>  

---------------------------------------------------------------------
To unsubscribe, e-mail: svnkit-users-unsubscribe@...
For additional commands, e-mail: svnkit-users-help@...


Re: doAnotate problem when parent directory is renamed.

by Pablo Beltran :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello Alexander,

jsvn works fine!

I've debugged jsvn and it calls doAnnotate equals like mine (same parameter values, same API,...). Then, I'm sure that there is a bug in my code/environment,... I'll try to found it again.

Thanks very much!!
Pablo.

Alexander Sinyushkin wrote:
Hello Pablo,

Thank you for the video, but still we can not reproduce the bug.

Can you send us your repository, so that we could reproduce it. If it's
impossible, then please,
do the following things.

Try the same command in shell except for running it with 'jsvn' (SVNKit
based command line client, it can be found in a standalone distribution
archive), like this:

$jsvn blame file://...SVNWrapper.java@245 -r 1:HEAD

But before running this command turn on SVNKit logging (refer to
https://wiki.svnkit.com/Troubleshooting).
If this command fails just like SVNLogClient did, find the log file and
send it to us. thank you.


----
Alexander Sinyushkin,
TMate Software,
http://svnkit.com/ - Java [Sub]Versioning Library!



Pablo Beltran wrote:
> Hello Allexander,
>
> I've recorded a video:
>
> http://www.upversion.com/downloads/blame.mpeg
>
> You can see the problem.
>
> The first step tries to show that my code works. I execute the blame command
> on a file name TreeBrowserView.xml and all works fine (calling to SVNKit).
>
> The second step tries to show the problem on a file which parent directory
> has been renamed while the same code is executed.
>
> I've put a breakpoint just before calling the SVNKit library. Then you can
> see how doAnotate is invoked. Before call doAnotate I execute the same
> command with svn command line and it works, but when I call SVNKit an
> exception is raised.
>
> The revision for this file (SVNWrapper.java) is 245. The range passed to
> SVNKit to do blame is 1:HEAD. The exception says that the file not exists in
> the revision 7, but you can see how the log (retrieved from SVNKit too)
> indicates that the file exists in revision 7 though in a distinct
> branch/path.
>
> In the revision 17 the parent path "java-src" was renamed to "src_java" and
> it seems the problem (I debugged the svnkit sources up to the pegvRevision,
> just when the exception is raised).
>
> Best regards,
> Pablo.
>
>
>
> Alexander Sinyushkin wrote:
>  
>> Hello Pablo,
>>
>> Can you please send us a script\description how to reproduce the problem.
>> How do you call the svn command line, with what parameters? How do you
>> call SVNLogClient.doAnnotate()
>> with all parameters precisely.
>>
>> A bash script demonstrating the problem (creating a test repository,
>> filling it with the necessary environment) would
>> be preferable, but precise steps will be enough, too.
>>
>> Thank you.
>>
>> ----
>> Alexander Sinyushkin,
>> TMate Software,
>> http://svnkit.com/ - Java [Sub]Versioning Library!
>>
>>
>>
>> Pablo Beltran wrote:
>>    
>>> Hi,
>>>
>>> Am I the only who have a lot of problems with svnkit and renamed, copied
>>> or
>>> moved directories? doAnotate, doLog,...
>>>
>>> I think this is possible because if not then a lot of users should
>>> experience the problem (I guess).
>>>
>>> So, am I the only one?
>>>
>>> Thanks in advanced
>>> Pablo
>>>
>>>
>>> Alexander Kitaev-3 wrote:
>>>  
>>>      
>>>> Does native Subversion client works with the equivalent command line
>>>> command?
>>>>
>>>> Alexander Kitaev,
>>>> TMate Software,
>>>> http://svnkit.com/ - Java [Sub]Versioning Library!
>>>> http://sqljet.com/ - Java SQLite Library!
>>>>
>>>> Pablo Beltran wrote:
>>>>    
>>>>        
>>>>> Hi,
>>>>>
>>>>> SVNClientManager.doAnotate (version 1.3.0) doesn't work when the parent
>>>>> directory is renamed.
>>>>>
>>>>> Example: (Blame from revision 1 to HEAD for a url that exits in
>>>>> pegRevision)
>>>>>
>>>>> logCli.doAnnotate(url, pegRev, 1, -1,...);
>>>>>
>>>>> Then SVNKit throws an Exception (file not found in revision N, where N
>>>>> is
>>>>> the first revision for the file).
>>>>>
>>>>> Best regards,
>>>>> Pablo.
>>>>>      
>>>>>          
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: svnkit-users-unsubscribe@svnkit.com
>>>> For additional commands, e-mail: svnkit-users-help@svnkit.com
>>>>
>>>>
>>>>
>>>>    
>>>>        
>>>  
>>>      
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: svnkit-users-unsubscribe@svnkit.com
>> For additional commands, e-mail: svnkit-users-help@svnkit.com
>>
>>
>>
>>    
>
>  

---------------------------------------------------------------------
To unsubscribe, e-mail: svnkit-users-unsubscribe@svnkit.com
For additional commands, e-mail: svnkit-users-help@svnkit.com