4

I'm trying to clone a large repository from Kiln. After some time (not sure how long because I let it go and had lunch), it failed. I know there's an extension for pushing large repos, but --chunked doesn't work as an option on hg clone.

$ hg clone http://something.fogbugz.com/kiln/Repo/Website/Group/stable www-stable
You can use kiln://Website/Group/stable as a shortcut for http://something.fogbugz.com/kiln/Repo/Website/Group/stable.
requesting all changes
adding changesets
adding manifests
adding file changes
transaction abort!
rollback completed
abort: connection ended unexpectedly
flag

3 Answers

3

This is most likely a sign that there's a timeout being fired somewhere in your network stack, most likely at the IIS level.

The Kiln installer automatically sets these timeouts appropriately, so anyone with a standard Kiln install shouldn't run into this issue. But if you've gone through an entirely custom Kiln install (...as I know you have, Adam...), you may have a proxy or other network component that is killing the long request prematurely.

Note that as a worst-case workaround in this scenario you can hg clone -r 100 to only clone the first, say, 100 revisions. You can then easily hg pull -r 200, hg pull -r 300, etc to chunk up the rest of your cloning process. Again, anyone using Kiln On Demand or the standard Kiln installer should not run into this.

link|flag
1 
Poblem occurs for me, using Kiln On Demand and the standard Kiln installer. There's a single revision that triggers it (looks like someone checked Adobe Acrobat in... lol) so the chunked pulls don't help. Now trying to remove Acrobat with a filemap and hg convert – Wessel Aug 29 2011 at 6:56
Are there some tips from FogCreek for checking IIS settings then? We have what I believe is a stock install. We are trying to push over 200MB and the push always hangs when it gets to around 30MB. I have even tried pushing from the web server to eliminate other network devices. Pushing to Kiln hosted works fine. – Neal Chapman Apr 5 at 17:01
4

My colleage tried

hg clone --uncompressed ...

and it seems to circumvent whatever issue causes this

link|flag
brilliant! worked for me! – scott willeke May 22 2012 at 5:38
That's the way to do it. Thanks for this solution! – Powl May 7 at 22:39
1

Same issue occured for me. I tried to pull one revision at a time like Ben Kamens suggests, but this just pinpointed the revision that was too large:

abort: connection ended unexpectedly

Powershell sript to pull one revision at a time, until done or error:

$rev = 4135;

while (1) {
  Write-Host Revision $rev
  hg pull -r $rev | tee-object -variable pullResult
  Write-Host $pullResult

  if ($pullResult -contains "abort:") {
    break;
  }
  if ($pullResult -contains "no changes found") {
    break;
  }
  $rev = $rev + 1
}
link|flag

Your Answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.