You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Lieven Govaerts <lg...@mobsol.be> on 2005/09/04 12:48:00 UTC

Is Subversion on Cygwin stable?

Hi, 


sorry for the topic and the long mail, but I have some questions concerning 
the stability/quality of Subversion on Cygwin. 

I'm part of a team managing Subversion repositories for multiple
teams of developers. Our team provides them with scripts to 
help on advanced repository actions, like merging, locking branches
etc. We also use the Perl scripts in the Subversion contrib folder.

Our own scripts are developed for the bash shell, so on Windows 
we need Cygwin. We also use the Cygwin svn (1.2.1) and perl packages.

Since we use them, we noticed some problems, probably specific to 
the Cygwin environment:

1. svn crashes in a propset action, a stack trace file was written. I 
reported this problem last Friday to the users list, so I won't repeat 
the info here.

2. svn_load_dirs.pl does not support filenames with spaces or dollar-
signs.Cygwin seems to have yet another way of escaping those characters 
compared to Windows or Linux/bash, which is not supported by that script.
( not yet reported here, have specific info tomorrow if anyone is 
interested )

3. A commit of a merge ( repo of 15000 files, some 300 changed ) 
will fail in 50% of the time. 50% means, we always have to do the 
commit twice. 
We detected two types of issues here:
 - Subversion Permission denied moving .svn/tmp/entries to .svn/entries
   This has been discussed on the dev list on 08/30.
 - Network issues. From time to time our network (LAN) has a long latency
   ( large ping times ). The cygwin svn package seems to be more sensitive
   to this problem than the standard windows package.

These issues can be solved obviously, if they are adressed by someone.

I have to decide whether or not to keep using cygwin in our environment, 
or rewrite the scripts and make them use the native windows packages.

It would be nice if this list could help me make that decision:
 - is cygwin a 'supported' platform:
    - are builds tested on cygwin, 
    - are the unit tests run on cygwin
    - is there 'more then one' developer working on the cygwin port?
 - what are other people's experiences with using subversion ( and scripts )

   on cygwin.

I'm always willing to help out with log/debug info & patches, but if you
tell
me that subversion on cygwin is not used ( and as such supported ) on the
same
scale as the windows and linux port, then I guess it's better to rewrite the

scripts.

thanks in advance

Lieven Govaerts

-- 
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.344 / Virus Database: 267.10.18/89 - Release Date: 2/09/2005
 


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

Re: Is Subversion on Cygwin stable?

Posted by "D.J. Heap" <dj...@gmail.com>.
On 9/5/05, Max Bowsher <ma...@ukf.net> wrote: 
> 
> [snip]
> Globally setting WIN32 defines for Cygwin would probably have undesirable
> side effects, since Cygwin is more unix-like than it is Windows-like.
> 
> Regarding the retry loops, I've been running Subversion on Cygwin (with a
> virus checker active) for years now, without needing them. Maybe the
> reporter's virus checker is more invasive.
> 
> Max.

 Maybe make the loop look at a CYGWIN define also, then? It is not just 
virus scanners that cause failures like this and I've seen it (far more 
rarely, of course) on large working copies on machines that have never had 
virus scanners installed and have the Index service turned off. I believe 
(though haven't chased it down to prove it) that even Windows Explorer can 
cause it.

I have no personal interest in cygwin, though.
 DJ

Re: Is Subversion on Cygwin stable?

Posted by "D.J. Heap" <dj...@gmail.com>.
On 9/5/05, Philip Martin <ph...@codematters.co.uk> wrote: 
> 
> "Max Bowsher" <ma...@ukf.net> writes:
> 
> > D.J. Heap wrote:
> >> On 9/4/05, Max Bowsher <ma...@ukf.net> wrote:
> >> {snip]
> >>
> >>>> 3. A commit of a merge ( repo of 15000 files, some 300 changed )
> >>>> will fail in 50% of the time. 50% means, we always have to do the
> >>>> commit twice.
> >>>> We detected two types of issues here:
> >>>> - Subversion Permission denied moving .svn/tmp/entries to 
> .svn/entries
> 
> I thought the retry loop was to avoid "Access denied" errors, is that
> the same as "Permission denied" or are these separate problems?

  I think they are the same, although being unfamiliar with cygwin I can't 
say for certain.
 
> Regarding the retry loops, I've been running Subversion on Cygwin
> > (with a virus checker active) for years now, without needing
> > them. Maybe the reporter's virus checker is more invasive.
> 
> Does Cygwin APR build the unix or the win32 code? The unix
> implementation of apr_file_rename doesn't use MoveFile (at least not
> directly) it uses rename which might have different behaviour.

  I would think it would have to map down to one of the MoveFile API's of 
the OS at some point, but again I'm not at all familiar with how cygwin 
works.
 DJ

Re: Is Subversion on Cygwin stable?

Posted by Philip Martin <ph...@codematters.co.uk>.
"Max Bowsher" <ma...@ukf.net> writes:

> D.J. Heap wrote:
>> On 9/4/05, Max Bowsher <ma...@ukf.net> wrote:
>> {snip]
>>
>>>> 3. A commit of a merge ( repo of 15000 files, some 300 changed )
>>>> will fail in 50% of the time. 50% means, we always have to do the
>>>> commit twice.
>>>> We detected two types of issues here:
>>>> - Subversion Permission denied moving .svn/tmp/entries to .svn/entries

I thought the retry loop was to avoid "Access denied" errors, is that
the same as "Permission denied" or are these separate problems?

> Regarding the retry loops, I've been running Subversion on Cygwin
> (with a virus checker active) for years now, without needing
> them. Maybe the reporter's virus checker is more invasive.

Does Cygwin APR build the unix or the win32 code?  The unix
implementation of apr_file_rename doesn't use MoveFile (at least not
directly) it uses rename which might have different behaviour.

-- 
Philip Martin

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

Re: Is Subversion on Cygwin stable?

Posted by Lieven Govaerts <lg...@mobsol.be>.
Developers here are asked to disable their virus checkers on the working
copies. I'm not sure if the one with the problem report has followed this
rule however, will check it later.

I'll try to get some more specific input on this issues the next time I
encounter them. Concering the issue with svn_upload_dirs.pl I posted a
Message a few minutes ago with the description of the problem and a patch.
This might not be related to Cygwin.

Concerning the other problem:

>> 3. A commit of a merge ( repo of 15000 files, some 300 changed ) will
>> fail in 50% of the time. 50% means, we always have to do the commit
>> twice.
>> We detected two types of issues here:
>> - Subversion Permission denied moving .svn/tmp/entries to .svn/entries
>>   This has been discussed on the dev list on 08/30.
>
>I'd noticed that thread - did anyone confirm/deny the hypothesis that this
error
> was caused by using both a native windows and a cygwin subversion client on
the
> same working copy?

Nobody asked me that question before, but yes, these working copies are used
both in normal windows ( TortoiseSVN ) & cygwin environment. I wasn't aware that
can cause problems? They are never used at the same time though, because
the merge scripts are only used by dedicated people.

Lieven.

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.


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

Re: Is Subversion on Cygwin stable?

Posted by solo turn <so...@gmail.com>.
we use svn in cygwin and it seems ok. but we do rarely mix windows and 
cygwin client. the only problem we have is that up to now we were not able 
to figure out how to make cygwin svn working with non-ascii characters. the 
normal windows client works.

we always get:
$ touch é
$ ls
é
$ svn st
svn: Can't convert string from native encoding to 'UTF-8':
svn: ?\233

do you experience the same? could you set locale so that this works?

non-ascii characters are also a problem with svk, but a slighter one, as it 
works using them, it just displays wrong 7bit.

for command line users we generally recommend svk as the working copy is not 
so invasive to windows file system. also you do not have strange permission 
and renaming problems. we just use the standard windows svk, with an alias 
set in /etc/profile pointing to the right svk:
alias svk="PATH='/cygdrive/c/svk/bin/:$PATH' /cygdrive/c/svk/bin/perl.exe 
'c:\\svk\bin\svk' $*"

-solo

On 9/5/05, Max Bowsher <ma...@ukf.net> wrote:
> 
> D.J. Heap wrote:
> > On 9/4/05, Max Bowsher <ma...@ukf.net> wrote:
> > {snip]
> >
> >>> 3. A commit of a merge ( repo of 15000 files, some 300 changed )
> >>> will fail in 50% of the time. 50% means, we always have to do the
> >>> commit twice.
> >>> We detected two types of issues here:
> >>> - Subversion Permission denied moving .svn/tmp/entries to .svn/entries
> >>> This has been discussed on the dev list on 08/30.
> >>
> >> I'd noticed that thread - did anyone confirm/deny the hypothesis that
> >> this
> >> error was caused by using both a native windows and a cygwin subversion
> >> client on the same working copy?
> >
> > I don't know about the other issues, but if the cygwin build isn't
> > setting
> > the WIN32 define then it will not do the looping on file operations and
> > could easily get this problem due to virus scanners, file indexers, etc
> > because of the way Windows does file locking.
> 
> 
> Globally setting WIN32 defines for Cygwin would probably have undesirable
> side effects, since Cygwin is more unix-like than it is Windows-like.
> 
> Regarding the retry loops, I've been running Subversion on Cygwin (with a
> virus checker active) for years now, without needing them. Maybe the
> reporter's virus checker is more invasive.
> 
> Max.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: dev-help@subversion.tigris.org
> 
>

Re: Is Subversion on Cygwin stable?

Posted by Max Bowsher <ma...@ukf.net>.
D.J. Heap wrote:
> On 9/4/05, Max Bowsher <ma...@ukf.net> wrote:
> {snip]
>
>>> 3. A commit of a merge ( repo of 15000 files, some 300 changed )
>>> will fail in 50% of the time. 50% means, we always have to do the
>>> commit twice.
>>> We detected two types of issues here:
>>> - Subversion Permission denied moving .svn/tmp/entries to .svn/entries
>>> This has been discussed on the dev list on 08/30.
>>
>> I'd noticed that thread - did anyone confirm/deny the hypothesis that 
>> this
>> error was caused by using both a native windows and a cygwin subversion
>> client on the same working copy?
>
>  I don't know about the other issues, but if the cygwin build isn't 
> setting
> the WIN32 define then it will not do the looping on file operations and
> could easily get this problem due to virus scanners, file indexers, etc
> because of the way Windows does file locking.


Globally setting WIN32 defines for Cygwin would probably have undesirable 
side effects, since Cygwin is more unix-like than it is Windows-like.

Regarding the retry loops, I've been running Subversion on Cygwin (with a 
virus checker active) for years now, without needing them. Maybe the 
reporter's virus checker is more invasive.

Max.


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

Re: Is Subversion on Cygwin stable?

Posted by "D.J. Heap" <dj...@gmail.com>.
On 9/4/05, Max Bowsher <ma...@ukf.net> wrote:
{snip]

> > 3. A commit of a merge ( repo of 15000 files, some 300 changed )
> > will fail in 50% of the time. 50% means, we always have to do the
> > commit twice.
> > We detected two types of issues here:
> > - Subversion Permission denied moving .svn/tmp/entries to .svn/entries
> > This has been discussed on the dev list on 08/30.
> 
> I'd noticed that thread - did anyone confirm/deny the hypothesis that this
> error was caused by using both a native windows and a cygwin subversion
> client on the same working copy?

 I don't know about the other issues, but if the cygwin build isn't setting 
the WIN32 define then it will not do the looping on file operations and 
could easily get this problem due to virus scanners, file indexers, etc 
because of the way Windows does file locking.
 DJ

Re: Is Subversion on Cygwin stable?

Posted by Max Bowsher <ma...@ukf.net>.
Lieven Govaerts wrote:
> Hi,
>
> sorry for the topic and the long mail, but I have some questions 
> concerning
> the stability/quality of Subversion on Cygwin.
...
> we noticed some problems, probably specific to
> the Cygwin environment:
>
> 1. svn crashes in a propset action, a stack trace file was written. I
> reported this problem last Friday to the users list, so I won't repeat
> the info here.

Please, re-send it to dev. It is easy for bug requests to be overlooked in 
the flood of users mail.
It seems pretty odd that a bug of this nature could be Cygwin specific, 
though.

> 2. svn_load_dirs.pl does not support filenames with spaces or dollar-
> signs.Cygwin seems to have yet another way of escaping those characters
> compared to Windows or Linux/bash, which is not supported by that script.
> ( not yet reported here, have specific info tomorrow if anyone is
> interested )

Given that Cygwin's shell *is* bash, this is just weird. It'll never get 
investigated if no one knows about it, though, so please tell us about it.

> 3. A commit of a merge ( repo of 15000 files, some 300 changed )
> will fail in 50% of the time. 50% means, we always have to do the
> commit twice.
> We detected two types of issues here:
> - Subversion Permission denied moving .svn/tmp/entries to .svn/entries
>   This has been discussed on the dev list on 08/30.

I'd noticed that thread - did anyone confirm/deny the hypothesis that this 
error was caused by using both a native windows and a cygwin subversion 
client on the same working copy?

> - Network issues. From time to time our network (LAN) has a long latency
>   ( large ping times ). The cygwin svn package seems to be more sensitive
>   to this problem than the standard windows package.
>
> These issues can be solved obviously, if they are adressed by someone.

The first can be. The one about network issues seems a bit too vague to do 
anything with, though.

> I have to decide whether or not to keep using cygwin in our environment,
> or rewrite the scripts and make them use the native windows packages.
>
> It would be nice if this list could help me make that decision:
> - is cygwin a 'supported' platform:
>    - are builds tested on cygwin,

"builds" ?

>    - are the unit tests run on cygwin

Occasionally.

>    - is there 'more then one' developer working on the cygwin port?

No, just me, as far as I am aware.

> - what are other people's experiences with using subversion ( and 
> scripts )
>   on cygwin.

I use Subversion on Cygwin almost every day, without problems.
I've never used svn_load_dirs.pl (on any platform).

> I'm always willing to help out with log/debug info & patches, but if you
> tell me that subversion on cygwin is not used ( and as such supported )
> on the same scale as the windows and linux port, then I guess it's better
> to rewrite the scripts.

Cygwin itself isn't used on the same scale as Windows and Linux.
Draw conclusions from that.

Max.


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