[PATCH 3 of 3] Fetch revision log on demand (in batches of 50 revisions)
Daniel Holth
dholth at fastmail.fm
Mon Jul 2 17:29:57 UTC 2007
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Brendan Cully wrote:
> On Monday, 02 July 2007 at 08:55, Daniel Holth wrote:
>> Brendan Cully wrote:
>> Why do you say that branches don't work right? They work fine for me,
>> I just have to run the script once per branch to the same target
>> Mercurial repository, and no revision is converted more than once. The
>> history of merges done in Subversion is not recorded, of course, but
>> the source doesn't provide that information anyway (unless we are
>> converting revisions done by svnmerge.py or svk).
>
> If I convert Edouard's rawstudio trunk, then rawstudio-cms branch, I
> get almost 700 revisions on the branch, most of which have no
> content. I think maybe an if not entries: return at the bottom of
> after_received would fix this? The other problem is that the parent of
> the branch is nullid. Is this a regression I've introduced?
>
> While playing with this, I noticed that my batching changes cause
> another subtle problem with branches, which is that if no branch
> revision appears in the batch, it decides the branch was created in
> the last batch without checking any earlier in the history. I've
> disabled the batching for now. It's a bit of a shame for incremental
> conversion though.
It is a regression unless rawstudio-cms has some special case (it
doesn't appear to). The branch parent worked on the first "release
early" edition used at my job. It also breaks on the
convert-queue-crew-dholth, so I suspect I introduced this. The first
parts of the processing code, where it checks the entry path against
the module name, are supposed to deal with branch parents.
I had similar problems trying to introduce chunked log fetching. The
code needs to be rewritten now that it has shown what's necessary to
convert SVN's view of the world over to hg's.
Subversion is supposed to omit empty revisions when giving the log for
a branch, because otherwise that revision was for a different branch.
It is probably possible to ask "get log" not to report those empty
revisions at all.
- - Daniel Holth
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFGiTYUVh4W2pVfoMsRAvlhAJ0c+dUOJiiDVKnwiT8qBHig+pILwgCcC8H+
gG9KhvA+Ij2zRi4H+wiZI7c=
=XiuV
-----END PGP SIGNATURE-----
More information about the Mercurial-devel
mailing list