subversion-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ca5coder <ca5co...@nm.ru>
Subject [BUG][All versions][svn merge --reintegrate] doesn't work on ra_svn
Date Fri, 07 Mar 2014 18:44:14 GMT
Hello, all!

The bug was detected first time on:
----------------------------------------------------------
dev: {501} svn --version
svn, version 1.5.2 (r32768)
   compiled Oct 10 2012, 09:39:49

Copyright (C) 2000-2008 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).

The following repository access (RA) modules are available:

* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
  - handles 'http' scheme
  - handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme
--------------------------------------------------------------

This bug affects "svn log" too but I have not found the proof sequence. Thus I'm reporting
"merge --reintegrate" only.

The last time was testet on WANdisco distro under Windows. There are full log. NOTE: the same
log works via ra_local or "http://" URLs without troubles.
============================================================
D:\src>sc create svn binpath= "d:\wandisco\subversion\svnserve.exe --service -r d:\svntest"
displayname= "svn serve" depend= Tcpip start= auto
[SC] CreateService SUCCESS

D:\src>mkdir \svntest

D:\src>svnadmin create d:\svntest

$ diff -u /cygdrive/d/svntest/conf/authz.old /cygdrive/d/svntest/conf/authz
--- /cygdrive/d/svntest/conf/authz.old  2014-03-07 21:25:53.406250000 +0400
+++ /cygdrive/d/svntest/conf/authz      2014-03-07 21:41:18.015625000 +0400
@@ -30,3 +30,5 @@
 # [repository:/baz/fuz]
 # @harry_and_sally = rw
 # * = r
+[/]
+svntest = rw

$ diff -u /cygdrive/d/svntest/conf/passwd.old /cygdrive/d/svntest/conf/passwd
--- /cygdrive/d/svntest/conf/passwd.old 2014-03-07 21:25:53.406250000 +0400
+++ /cygdrive/d/svntest/conf/passwd     2014-03-07 21:28:00.796875000 +0400
@@ -6,3 +6,4 @@
 [users]
 # harry = harryssecret
 # sally = sallyssecret
+svntest = svntest

$ diff -u /cygdrive/d/svntest/conf/svnserve.conf.old /cygdrive/d/svntest/conf/svnserve.conf
--- /cygdrive/d/svntest/conf/svnserve.conf.old  2014-03-07 21:25:53.406250000 +0400
+++ /cygdrive/d/svntest/conf/svnserve.conf      2014-03-07 21:39:49.031250000 +0400
@@ -16,15 +16,15 @@
 ### The sample settings below are the defaults and specify that anonymous
 ### users have read-only access to the repository, while authenticated
 ### users have read and write access to the repository.
-# anon-access = read
-# auth-access = write
+anon-access = read
+auth-access = write
 ### The password-db option controls the location of the password
 ### database file.  Unless you specify a path starting with a /,
 ### the file's location is relative to the directory containing
 ### this configuration file.
 ### If SASL is enabled (see below), this file will NOT be used.
 ### Uncomment the line below to use the default password file.
-# password-db = passwd
+password-db = passwd
 ### The authz-db option controls the location of the authorization
 ### rules for path-based access control.  Unless you specify a path
 ### starting with a /, the file's location is relative to the
@@ -33,7 +33,7 @@
 ### file in a Subversion repository.  If you don't specify an authz-db,
 ### no path-based access control is done.
 ### Uncomment the line below to use the default authorization file.
-# authz-db = authz
+authz-db = authz
 ### The groups-db option controls the location of the groups file.
 ### Unless you specify a path starting with a /, the file's location is
 ### relative to the directory containing this file.  The specified path
@@ -44,7 +44,7 @@
 ### If two repositories have the same authentication realm, they should
 ### have the same password database, and vice versa.  The default realm
 ### is repository's uuid.
-# realm = My First Repository
+realm = svntest
 ### The force-username-case option causes svnserve to case-normalize
 ### usernames before comparing them against the authorization rules in the
 ### authz-db file configured above.  Valid values are "upper" (to upper-

D:\src>mkdir t

D:\src>cd t

D:\src\t>mkdir trunk branches tags

D:\src\t>cd trunk

D:\src\t\trunk>echo "11111 22222" >test.txt

D:\src\t\trunk>cd ..

D:\src\t>svn import --username=svntest svn://localhost/t -m "initial"
Authentication realm: <svn://localhost:3690> svntest
Password for 'svntest': *******
Adding         branches
Adding         tags
Adding         trunk
Adding         trunk\test.txt

Committed revision 1.

D:\src\t>svn list svn://localhost/t
branches/
tags/
trunk/

D:\src\t>svn copy svn://localhost/t/trunk svn://localhost/t/branches/b -m "make branch"

Committed revision 2.

D:\src\t>cd ..

D:\src>svn checkout svn://localhost/t/trunk t
A    t\test.txt
Checked out revision 2.

D:\src>svn checkout svn://localhost/t/branches/b
A    b\test.txt
Checked out revision 2.

D:\src>cd b

D:\src\b>echo "333333 444444" >>test.txt

D:\src\b>cd ..\t

D:\src\t>echo "555555 666666" >>test.txt

D:\src\t>svn status
M       test.txt

D:\src\t>svn commit -m "trunk add-on"
Sending        test.txt
Transmitting file data .
Committed revision 3.

D:\src\t>cd ..\b

D:\src\b>svn status
M       test.txt

D:\src\b>svn commit -m "branch add-on"
Sending        test.txt
Transmitting file data .
Committed revision 4.

D:\src\b>cd ..\t

D:\src\t>svn update
Updating '.':
At revision 4.

D:\src\t>svn merge --reintegrate svn://localhost/t/b
svn: E220001: Unreadable path encountered; access denied

D:\src\t>svn --version
svn, version 1.8.8 (r1568071)
   compiled Feb 19 2014, 17:24:35 on x86/x86_64-microsoft-windows6.1.7601

Copyright (C) 2013 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 access (RA) modules are available:

* ra_svn : Module for accessing a repository using the svn network protocol.
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
  - using serf 1.3.4
  - handles 'http' scheme
  - handles 'https' scheme

Best wishes,
-- 
ca5coder <ca5coder@nm.ru>

Mime
View raw message