git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [GSoC update extra!] git-remote-svn: Week 13
@ 2010-07-30 19:01 Ramkumar Ramachandra
  2010-08-05 14:43 ` David Michael Barr
  0 siblings, 1 reply; 5+ messages in thread
From: Ramkumar Ramachandra @ 2010-07-30 19:01 UTC (permalink / raw)
  To: Git Mailing List; +Cc: Sverre Rabbelier, David Michael Barr, Jonathan Nieder

Hi,

I just got a proof-of-concept loader for Subversion working. It just
about works for a very small reduced case. I'll still have to hammer
it into shape for to handle various cases [1]. In the meantime, we
also have to start working on doing the inverse of what
svn-dump-fast-export does: convert a Git fast-export stream to a
Subversion dumpfile.

David: Can you estimate how challenging the task is going to be?

[1]: I'm working on it directly in trunk. You can find the latest code
in subversion/svnrdump in the Subversion trunk.

-- Ram

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [GSoC update extra!] git-remote-svn: Week 13
  2010-07-30 19:01 [GSoC update extra!] git-remote-svn: Week 13 Ramkumar Ramachandra
@ 2010-08-05 14:43 ` David Michael Barr
  2010-08-05 16:42   ` Sverre Rabbelier
  0 siblings, 1 reply; 5+ messages in thread
From: David Michael Barr @ 2010-08-05 14:43 UTC (permalink / raw)
  To: Ramkumar Ramachandra; +Cc: Git Mailing List, Sverre Rabbelier, Jonathan Nieder

Hi,

> I just got a proof-of-concept loader for Subversion working. It just
> about works for a very small reduced case. I'll still have to hammer
> it into shape for to handle various cases [1]. In the meantime, we
> also have to start working on doing the inverse of what
> svn-dump-fast-export does: convert a Git fast-export stream to a
> Subversion dumpfile.
> 
> David: Can you estimate how challenging the task is going to be?

Ram, sorry for the late reply, I've been rather sick this week.

Assuming that the fast-export stream will be already linearised...
I think it will be more complex than svn-fe even with that constraint.
The reason being that going from git to subversion there is a
general increase in redundant data.
While svn-fe preserves much of the redundancy of the original svn
dump stream, git is able to eliminate much of it.
On the other hand, to produce an svn dump stream we may need
to repeat elements encountered earlier in the fast-export stream.
We may be able to achieve a simple implementation by placing
further restrictions on the form of the fast-export stream.

> [1]: I'm working on it directly in trunk. You can find the latest code
> in subversion/svnrdump in the Subversion trunk.
> 
> -- Ram

On a related note, I've found a defect in the svn dump stream design.
Truncation of an svn dump may result in a valid stream with an
incomplete trailing commit. Even more fun is that when svnrdump
encounters an error in the middle of handling a commit, it will likely
produce such a stream. I broked my ASF mirror by loading an
incomplete incremental dump. :(

TODO: cross-post the last paragraph to svn-dev.

-- David Barr.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [GSoC update extra!] git-remote-svn: Week 13
  2010-08-05 14:43 ` David Michael Barr
@ 2010-08-05 16:42   ` Sverre Rabbelier
  2010-08-05 22:15     ` David Michael Barr
  0 siblings, 1 reply; 5+ messages in thread
From: Sverre Rabbelier @ 2010-08-05 16:42 UTC (permalink / raw)
  To: David Michael Barr
  Cc: Ramkumar Ramachandra, Git Mailing List, Jonathan Nieder

Heya,

On Thu, Aug 5, 2010 at 09:43, David Michael Barr
<david.barr@cordelta.com> wrote:
> The reason being that going from git to subversion there is a
> general increase in redundant data.

I don't understand?

> On the other hand, to produce an svn dump stream we may need
> to repeat elements encountered earlier in the fast-export stream.

What do you mean with this?

-- 
Cheers,

Sverre Rabbelier

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [GSoC update extra!] git-remote-svn: Week 13
  2010-08-05 16:42   ` Sverre Rabbelier
@ 2010-08-05 22:15     ` David Michael Barr
  2010-08-05 22:23       ` Sverre Rabbelier
  0 siblings, 1 reply; 5+ messages in thread
From: David Michael Barr @ 2010-08-05 22:15 UTC (permalink / raw)
  To: Sverre Rabbelier; +Cc: Ramkumar Ramachandra, Git Mailing List, Jonathan Nieder

Hi,

>> The reason being that going from git to subversion there is a
>> general increase in redundant data.
> 
> I don't understand?

The primary issue is a blob may be repeated in a non-copy operation,
requiring its content to be described again. This sort of operation only
happens 20% of the time with the ASF repository. We would have to
either write out the content again or compute a new delta depending
on the target version of the svn dump stream.

>> On the other hand, to produce an svn dump stream we may need
>> to repeat elements encountered earlier in the fast-export stream.
> 
> What do you mean with this?

See above, there was some redundancy in my post.

--
David Barr.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [GSoC update extra!] git-remote-svn: Week 13
  2010-08-05 22:15     ` David Michael Barr
@ 2010-08-05 22:23       ` Sverre Rabbelier
  0 siblings, 0 replies; 5+ messages in thread
From: Sverre Rabbelier @ 2010-08-05 22:23 UTC (permalink / raw)
  To: David Michael Barr
  Cc: Ramkumar Ramachandra, Git Mailing List, Jonathan Nieder

Heya,

On Thu, Aug 5, 2010 at 17:15, David Michael Barr
<david.barr@cordelta.com> wrote:
> The primary issue is a blob may be repeated in a non-copy operation,
> requiring its content to be described again. This sort of operation only
> happens 20% of the time with the ASF repository. We would have to
> either write out the content again or compute a new delta depending
> on the target version of the svn dump stream.

Ah, you mean that there might be a "'M' SP <mode> SP <dataref> SP
<path> LF" line in a non-copy operation. It should probably be not
that hard to teach git fast-export to not do that.

-- 
Cheers,

Sverre Rabbelier

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-08-05 22:47 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-07-30 19:01 [GSoC update extra!] git-remote-svn: Week 13 Ramkumar Ramachandra
2010-08-05 14:43 ` David Michael Barr
2010-08-05 16:42   ` Sverre Rabbelier
2010-08-05 22:15     ` David Michael Barr
2010-08-05 22:23       ` Sverre Rabbelier

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).