Re: svnrdump tool

2010-09-28 Thread Daniel Shahaf
Ramkumar Ramachandra wrote on Tue, Sep 28, 2010 at 00:44:40 +0530:
 Hi Daniel,
 
 Daniel Shahaf writes:
  svnsync allows you to sync a subdir of a repository (i.e.,
svnsync $REPOS/trunk/A/B $MIRROR
  ), but does it also create /trunk/A/B in the mirror?
 
 Yes, it does.
 
  But for now I still think that svnrdump invocation I quoted above
  shouldn't have outputted a 'create /trunk' entry in the dumpfile :-).
  @all, what do you think?
 
 Again, it works exactly like svnsync- you might like to read the
 tests. Here's a verbose example.
 

So, I suppose we should have to leave it the way it is, to parallel
svnsync.  Okay.

 $ cat /test.dump
 Node-path: test.txt
 Node-path: trunk
 Node-path: trunk/A
 Node-path: trunk/A/B
 Node-path: trunk/A/B/E
 Node-path: trunk/A/B/E/alpha
 Node-path: trunk/A/B/E/beta
 Node-path: trunk/A/B/F
 Node-path: trunk/A/B/lambda
 Node-path: trunk/A/C
 Node-path: trunk/A/D
 Node-path: trunk/A/D/G
 Node-path: trunk/A/D/G/pi
 Node-path: trunk/A/D/G/rho
 Node-path: trunk/A/D/G/tau
 Node-path: trunk/A/D/H
 Node-path: trunk/A/D/H/chi
 Node-path: trunk/A/D/H/omega
 Node-path: trunk/A/D/H/psi
 Node-path: trunk/A/D/gamma
 Node-path: trunk/A/mu
 Node-path: trunk/iota
 Node-path: trunk/A/D/H/psi
 Node-path: trunk/A
 Node-path: trunk/iota
 Node-path: trunk/B
 Node-path: trunk/A
 Node-path: trunk/A
 Node-path: trunk/B/D
 Node-path: trunk

Why does Node-path: trunk appear twice?

 $ # svnadmin create /test-repo, /mirror and enable pre-revprop-change
 $ svnadmin load /test-repo  /test.dump
 $ svnsync init file:///mirror file:///test-repo/trunk/A/B
 $ svnsync sync file:///mirror
 $ svnadmin dump /mirror | grep Node-path:
 Node-path: trunk
 Node-path: trunk/A
 Node-path: trunk/A/B
 Node-path: trunk/A/B/E
 Node-path: trunk/A/B/E/alpha
 Node-path: trunk/A/B/E/beta
 Node-path: trunk/A/B/F
 Node-path: trunk/A/B/lambda
 Node-path: trunk/A
 Node-path: trunk/A
 Node-path: trunk/A
 Node-path: trunk/A/G
 Node-path: trunk/A/G/pi
 Node-path: trunk/A/G/rho
 Node-path: trunk/A/G/tau
 Node-path: trunk/A/H
 Node-path: trunk/A/H/chi
 Node-path: trunk/A/H/omega
 Node-path: trunk/A/H/psi
 Node-path: trunk/A/gamma
 Node-path: trunk
 $ svnrdump dump file:///test-repo/trunk/A/B
 Node-path: trunk
 Node-path: trunk/A
 Node-path: trunk/A/B
 Node-path: trunk/A/B/E
 Node-path: trunk/A/B/E/alpha
 Node-path: trunk/A/B/E/beta
 Node-path: trunk/A/B/F
 Node-path: trunk/A/B/lambda
 Node-path: trunk/A
 Node-path: trunk/A
 Node-path: trunk/A
 Node-path: trunk/A/G
 Node-path: trunk/A/G/pi
 Node-path: trunk/A/G/rho
 Node-path: trunk/A/G/tau
 Node-path: trunk/A/H
 Node-path: trunk/A/H/chi
 Node-path: trunk/A/H/omega
 Node-path: trunk/A/H/psi
 Node-path: trunk/A/gamma
 Node-path: trunk
 
 Hope that helps.
 
 -- Ram

Thanks for the example,

Daniel


Re: svnrdump tool

2010-09-28 Thread Ramkumar Ramachandra
Hi Daniel,

Daniel Shahaf writes:
  $ cat /test.dump
  Node-path: test.txt
  Node-path: trunk
  Node-path: trunk/A
  Node-path: trunk/A/B
  Node-path: trunk/A/B/E
  Node-path: trunk/A/B/E/alpha
  Node-path: trunk/A/B/E/beta
  Node-path: trunk/A/B/F
  Node-path: trunk/A/B/lambda
  Node-path: trunk/A/C
  Node-path: trunk/A/D
  Node-path: trunk/A/D/G
  Node-path: trunk/A/D/G/pi
  Node-path: trunk/A/D/G/rho
  Node-path: trunk/A/D/G/tau
  Node-path: trunk/A/D/H
  Node-path: trunk/A/D/H/chi
  Node-path: trunk/A/D/H/omega
  Node-path: trunk/A/D/H/psi
  Node-path: trunk/A/D/gamma
  Node-path: trunk/A/mu
  Node-path: trunk/iota
  Node-path: trunk/A/D/H/psi
  Node-path: trunk/A
  Node-path: trunk/iota
  Node-path: trunk/B
  Node-path: trunk/A
  Node-path: trunk/A
  Node-path: trunk/B/D
  Node-path: trunk
 
 Why does Node-path: trunk appear twice?

Some prop change. Unrelated anyway.

-- Ram


Re: svnrdump tool

2010-09-27 Thread Ramkumar Ramachandra
Hi Daniel,

Daniel Shahaf writes:
 svnsync allows you to sync a subdir of a repository (i.e.,
   svnsync $REPOS/trunk/A/B $MIRROR
 ), but does it also create /trunk/A/B in the mirror?

Yes, it does.

 But for now I still think that svnrdump invocation I quoted above
 shouldn't have outputted a 'create /trunk' entry in the dumpfile :-).
 @all, what do you think?

Again, it works exactly like svnsync- you might like to read the
tests. Here's a verbose example.

$ cat /test.dump
Node-path: test.txt
Node-path: trunk
Node-path: trunk/A
Node-path: trunk/A/B
Node-path: trunk/A/B/E
Node-path: trunk/A/B/E/alpha
Node-path: trunk/A/B/E/beta
Node-path: trunk/A/B/F
Node-path: trunk/A/B/lambda
Node-path: trunk/A/C
Node-path: trunk/A/D
Node-path: trunk/A/D/G
Node-path: trunk/A/D/G/pi
Node-path: trunk/A/D/G/rho
Node-path: trunk/A/D/G/tau
Node-path: trunk/A/D/H
Node-path: trunk/A/D/H/chi
Node-path: trunk/A/D/H/omega
Node-path: trunk/A/D/H/psi
Node-path: trunk/A/D/gamma
Node-path: trunk/A/mu
Node-path: trunk/iota
Node-path: trunk/A/D/H/psi
Node-path: trunk/A
Node-path: trunk/iota
Node-path: trunk/B
Node-path: trunk/A
Node-path: trunk/A
Node-path: trunk/B/D
Node-path: trunk
$ # svnadmin create /test-repo, /mirror and enable pre-revprop-change
$ svnadmin load /test-repo  /test.dump
$ svnsync init file:///mirror file:///test-repo/trunk/A/B
$ svnsync sync file:///mirror
$ svnadmin dump /mirror | grep Node-path:
Node-path: trunk
Node-path: trunk/A
Node-path: trunk/A/B
Node-path: trunk/A/B/E
Node-path: trunk/A/B/E/alpha
Node-path: trunk/A/B/E/beta
Node-path: trunk/A/B/F
Node-path: trunk/A/B/lambda
Node-path: trunk/A
Node-path: trunk/A
Node-path: trunk/A
Node-path: trunk/A/G
Node-path: trunk/A/G/pi
Node-path: trunk/A/G/rho
Node-path: trunk/A/G/tau
Node-path: trunk/A/H
Node-path: trunk/A/H/chi
Node-path: trunk/A/H/omega
Node-path: trunk/A/H/psi
Node-path: trunk/A/gamma
Node-path: trunk
$ svnrdump dump file:///test-repo/trunk/A/B
Node-path: trunk
Node-path: trunk/A
Node-path: trunk/A/B
Node-path: trunk/A/B/E
Node-path: trunk/A/B/E/alpha
Node-path: trunk/A/B/E/beta
Node-path: trunk/A/B/F
Node-path: trunk/A/B/lambda
Node-path: trunk/A
Node-path: trunk/A
Node-path: trunk/A
Node-path: trunk/A/G
Node-path: trunk/A/G/pi
Node-path: trunk/A/G/rho
Node-path: trunk/A/G/tau
Node-path: trunk/A/H
Node-path: trunk/A/H/chi
Node-path: trunk/A/H/omega
Node-path: trunk/A/H/psi
Node-path: trunk/A/gamma
Node-path: trunk

Hope that helps.

-- Ram


Re: svnrdump tool

2010-09-26 Thread Daniel Shahaf
Ramkumar Ramachandra wrote on Sun, Sep 26, 2010 at 01:48:18 +0530:
 Hi Daniel,
 
 Daniel Shahaf writes:
  Daniel Shahaf wrote on Sat, Sep 25, 2010 at 16:49:08 +0200:
 0:/tmp/svn% $svnrdump dump file://$PWD/r1/trunk/A/B 21 | grep 
   Node-path
 Node-path: trunk
 Node-path: trunk/A
 Node-path: trunk/A/B
 Node-path: trunk/A/B/E
 Node-path: trunk/A/B/E/alpha
 Node-path: trunk/A/B/E/beta
 Node-path: trunk/A/B/F
 Node-path: trunk/A/B/lambda
   
   Nice :-)
   
  
  Is it?  If I try to dump a subdir, then I /shouldn't/ get a Create
  /trunk entry in the dumpfile... instead, it should be the user's
  business to create that directory in the target repository out of band,
  before loading the dump into it.
 
 svnrdump behaves exactly like svnsync in this manner.

svnsync allows you to sync a subdir of a repository (i.e.,
  svnsync $REPOS/trunk/A/B $MIRROR
), but does it also create /trunk/A/B in the mirror?

But for now I still think that svnrdump invocation I quoted above
shouldn't have outputted a 'create /trunk' entry in the dumpfile :-).
@all, what do you think?

 See the tests
 only_trunk_dump, only_trunk_A_with_changes_dump, and
 descend_into_replace_dump that I imported from svnsync. They all
 exercise this subdirectory feature. Maybe the tests are not
 exhaustive?
 
 -- Ram


svnrdump tool

2010-09-25 Thread Karl Heinz Marbaise

Hello,

i just want to give an other information which i found about the subject 
which seemed to be related to the svnrdump tool...


http://rsvndump.sourceforge.net/

Kind regards
Karl Heinz Marbaise
--
SoftwareEntwicklung Beratung SchulungTel.: +49 (0) 2405 / 415 893
Dipl.Ing.(FH) Karl Heinz MarbaiseICQ#: 135949029
Hauptstrasse 177 USt.IdNr: DE191347579
52146 Würselen   http://www.soebes.de


Re: svnrdump tool

2010-09-25 Thread Ramkumar Ramachandra
Hi Karl,

Karl Heinz Marbaise writes:
 i just want to give an other information which i found about the
 subject which seemed to be related to the svnrdump tool...
 
 http://rsvndump.sourceforge.net/

Yes, I saw this tool before I decided to write svnrdump. The main
difference is that rsvndump produces a non-deltified dump, while
svnrdump can only produce a deltified dump (dumpfile v3). As a
consequence, rsvndump is slow and needs a lot of memory while svnrdump
is fast and uses little memory.

-- Ram


Re: svnrdump tool

2010-09-25 Thread Karl Heinz Marbaise

Hi Ram,


Yes, I saw this tool before I decided to write svnrdump. The main
difference is that rsvndump produces a non-deltified dump, while
svnrdump can only produce a deltified dump (dumpfile v3). As a
consequence, rsvndump is slow and needs a lot of memory while svnrdump
is fast and uses little memory.

Many thanks for the explanations.

Kind regards
Karl Heinz Marbaise
--
SoftwareEntwicklung Beratung SchulungTel.: +49 (0) 2405 / 415 893
Dipl.Ing.(FH) Karl Heinz MarbaiseICQ#: 135949029
Hauptstrasse 177 USt.IdNr: DE191347579
52146 Würselen   http://www.soebes.de


Re: svnrdump tool

2010-09-25 Thread Daniel Shahaf
Ramkumar Ramachandra wrote on Sat, Sep 25, 2010 at 19:31:19 +0530:
 Hi Karl,
 
 Karl Heinz Marbaise writes:
  i just want to give an other information which i found about the
  subject which seemed to be related to the svnrdump tool...
  
  http://rsvndump.sourceforge.net/
 
 Yes, I saw this tool before I decided to write svnrdump. The main
 difference is that rsvndump produces a non-deltified dump, while
 svnrdump can only produce a deltified dump (dumpfile v3). As a
 consequence, rsvndump is slow and needs a lot of memory while svnrdump
 is fast and uses little memory.

Does
svnrdump dump -r 100 https://svn.apache.org/repos/asf/subversion
also produce a deltified dump?  (of r100 to its predecessor)

Is it currently possible to cause svnrdump to dump rN in full?  (like
svnadmin dump --incremental)


Re: svnrdump tool

2010-09-25 Thread Ramkumar Ramachandra
Hi Daniel,

Daniel Shahaf writes:
 Does
   svnrdump dump -r 100 https://svn.apache.org/repos/asf/subversion
 also produce a deltified dump?  (of r100 to its predecessor)

Yes, it does.

 Is it currently possible to cause svnrdump to dump rN in full?  (like
 svnadmin dump --incremental)

No, it's not.

-- Ram


Re: svnrdump tool

2010-09-25 Thread Daniel Shahaf
Ramkumar Ramachandra wrote on Sat, Sep 25, 2010 at 19:53:31 +0530:
 Daniel Shahaf writes:
  Is it currently possible to cause svnrdump to dump rN in full?  (like
  svnadmin dump --incremental)
 
 No, it's not.
 

I think it'll be a useful addition, so I've went ahead and recorded it:
http://subversion.tigris.org/issues/show_bug.cgi?id=3720

For the use-case I gave there to work, 'svnrdump dump $REPOS/subdir'
would have to work... but I see that it already does:

  0:/tmp/svn% $svnrdump dump file://$PWD/r1/trunk/A/B 21 | grep Node-path
  Node-path: trunk
  Node-path: trunk/A
  Node-path: trunk/A/B
  Node-path: trunk/A/B/E
  Node-path: trunk/A/B/E/alpha
  Node-path: trunk/A/B/E/beta
  Node-path: trunk/A/B/F
  Node-path: trunk/A/B/lambda

Nice :-)

Daniel


Re: svnrdump tool

2010-09-25 Thread Daniel Shahaf
Daniel Shahaf wrote on Sat, Sep 25, 2010 at 16:49:08 +0200:
 Ramkumar Ramachandra wrote on Sat, Sep 25, 2010 at 19:53:31 +0530:
  Daniel Shahaf writes:
   Is it currently possible to cause svnrdump to dump rN in full?  (like
   svnadmin dump --incremental)
  
  No, it's not.
  
 
 I think it'll be a useful addition, so I've went ahead and recorded it:
 http://subversion.tigris.org/issues/show_bug.cgi?id=3720
 
 For the use-case I gave there to work, 'svnrdump dump $REPOS/subdir'
 would have to work... but I see that it already does:
 
   0:/tmp/svn% $svnrdump dump file://$PWD/r1/trunk/A/B 21 | grep Node-path
   Node-path: trunk
   Node-path: trunk/A
   Node-path: trunk/A/B
   Node-path: trunk/A/B/E
   Node-path: trunk/A/B/E/alpha
   Node-path: trunk/A/B/E/beta
   Node-path: trunk/A/B/F
   Node-path: trunk/A/B/lambda
 
 Nice :-)
 

Is it?  If I try to dump a subdir, then I /shouldn't/ get a Create
/trunk entry in the dumpfile... instead, it should be the user's
business to create that directory in the target repository out of band,
before loading the dump into it.

Thoughts?

 Daniel


Re: svnrdump tool

2010-09-25 Thread Ramkumar Ramachandra
Hi Daniel,

Daniel Shahaf writes:
 Daniel Shahaf wrote on Sat, Sep 25, 2010 at 16:49:08 +0200:
0:/tmp/svn% $svnrdump dump file://$PWD/r1/trunk/A/B 21 | grep Node-path
Node-path: trunk
Node-path: trunk/A
Node-path: trunk/A/B
Node-path: trunk/A/B/E
Node-path: trunk/A/B/E/alpha
Node-path: trunk/A/B/E/beta
Node-path: trunk/A/B/F
Node-path: trunk/A/B/lambda
  
  Nice :-)
  
 
 Is it?  If I try to dump a subdir, then I /shouldn't/ get a Create
 /trunk entry in the dumpfile... instead, it should be the user's
 business to create that directory in the target repository out of band,
 before loading the dump into it.

svnrdump behaves exactly like svnsync in this manner. See the tests
only_trunk_dump, only_trunk_A_with_changes_dump, and
descend_into_replace_dump that I imported from svnsync. They all
exercise this subdirectory feature. Maybe the tests are not
exhaustive?

-- Ram