You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Lübbe Onken <l....@rac.de> on 2004/01/15 08:45:11 UTC

Infinite loop in svn

Hi Folks,

I managed to stumble upon an infinite loop in "svn st" and "svn up" and 
I believe it's a bug.

It can be reproduced with either SVN 0.34 or a fresh build of 0.36 on a 
Win2K client. Our Server is still running 0.32.1 (we're waiting for 1.0 
to make the next step), but the linux 0.32.1 client behaves just the 
same (tried it a few seconds ago). The messages are copy&pasted from my 
windows box.

Steps to reproduce:
- inside a working copy create a blank directory named "test"
- set the "svn:externals" property on the WC to "test 
http://some.repository/location"
- type "svn st", lean back and watch the infinite loop go by :-)

--- SNIP ---
D:\xxx\trunk>svn st
X      test
  M     .

Performing status on external item at test
X      test

Performing status on external item at test
X      test

...Repeat as often as you like...

Performing status on external item at test
X      test

Performing status on external item at test
svn: The operation was interrupted
svn: caught SIGINT
--- SNIP ---

"svn st -N" behaves correctly

checkin doesn't fix the problem

Now it's getting even funnier:


--- SNIP ---
D:\xx\trunk>svn up

Fetching external item into 'test'
svn: 'test' is not a working copy
--- SNIP ---

OK, svn is right, so we get rid of 'test'

--- SNIP ---
D:\xx\trunk>rmdir test
D:\xx\trunk>svn up

Fetching external item into 'test'
A  test\SVN-Test.txt
  U test

Fetching external item into 'test\test'
A  test\test\SVN-Test.txt
  U test\test

Fetching external item into 'test\test\test'
A  test\test\test\SVN-Test.txt
  U test\test\test

Fetching external item into 'test\test\test\test'
A  test\test\test\test\SVN-Test.txt
  U test\test\test\test

Fetching external item into 'test\test\test\test\test'
^C
D:\xx\trunk>
--- SNIP ---

What do you make of this?

Cheers
-Lübbe


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Infinite loop in svn

Posted by Lübbe Onken <l....@rac.de>.
kfogel@collab.net wrote:

> That does look like a real bug.  Can you file this as an issue?  Thank
> you.

Issue #1703

Cheers
-Lübbe


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Infinite loop in svn

Posted by kf...@collab.net.
Lübbe Onken <l....@rac.de> writes:
> I managed to stumble upon an infinite loop in "svn st" and "svn up"
> and I believe it's a bug.

That does look like a real bug.  Can you file this as an issue?  Thank
you.

-Karl


> It can be reproduced with either SVN 0.34 or a fresh build of 0.36 on
> a Win2K client. Our Server is still running 0.32.1 (we're waiting for
> 1.0 to make the next step), but the linux 0.32.1 client behaves just
> the same (tried it a few seconds ago). The messages are copy&pasted
> from my windows box.
> 
> Steps to reproduce:
> - inside a working copy create a blank directory named "test"
> - set the "svn:externals" property on the WC to "test
> http://some.repository/location"
> - type "svn st", lean back and watch the infinite loop go by :-)
> 
> --- SNIP ---
> D:\xxx\trunk>svn st
> X      test
>   M     .
> 
> Performing status on external item at test
> X      test
> 
> Performing status on external item at test
> X      test
> 
> ...Repeat as often as you like...
> 
> Performing status on external item at test
> X      test
> 
> Performing status on external item at test
> svn: The operation was interrupted
> svn: caught SIGINT
> --- SNIP ---
> 
> "svn st -N" behaves correctly
> 
> checkin doesn't fix the problem
> 
> Now it's getting even funnier:
> 
> 
> --- SNIP ---
> D:\xx\trunk>svn up
> 
> Fetching external item into 'test'
> svn: 'test' is not a working copy
> --- SNIP ---
> 
> OK, svn is right, so we get rid of 'test'
> 
> --- SNIP ---
> D:\xx\trunk>rmdir test
> D:\xx\trunk>svn up
> 
> Fetching external item into 'test'
> A  test\SVN-Test.txt
>   U test
> 
> Fetching external item into 'test\test'
> A  test\test\SVN-Test.txt
>   U test\test
> 
> Fetching external item into 'test\test\test'
> A  test\test\test\SVN-Test.txt
>   U test\test\test
> 
> Fetching external item into 'test\test\test\test'
> A  test\test\test\test\SVN-Test.txt
>   U test\test\test\test
> 
> Fetching external item into 'test\test\test\test\test'
> ^C
> D:\xx\trunk>
> --- SNIP ---
> 
> What do you make of this?
> 
> Cheers
> -Lübbe
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: dev-help@subversion.tigris.org

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org