Does HgLab have a size limit on push?

ninthjarl's Avatar


27 Feb, 2013 06:19 PM

We work in games development so the assets are reasonably huge. We had setup HgLab sucessfuly on one of the servers on LAN. Cloning the repository works fine but when we try to push large files anything in excess of 100MB HgLab returns a HTTP Error: 404 (Not Found).
In the IIS website->Actions->Configure->Limits settings, there is no bandwidth restriction and connection time out is set to 3600 secs. So thats should not be a problem. We modified the Web.config httpRuntime fields to
<httpRuntime enableVersionHeader="false" executionTimeout="3600" maxRequestLength="524300000" maxUrlLength="8192" maxQueryStringLength="8192" />

Has anyone come across this issue? If so? Is there anything else that needs to be changed in the settings?
Thanks for your help.

  1. 1 Posted by ninthjarl on 28 Feb, 2013 10:54 AM

    ninthjarl's Avatar

    Digging into the system log, found this application error when I was trying to perfom a push.
    Log Name: Application
    Source: Application Error
    Date: 2/27/2013 11:57:03 PM
    Event ID: 1000
    Task Category: (100)
    Level: Error
    Keywords: Classic
    User: N/A
    Computer: cube7-PC
    Faulting application name: w3wp.exe, version: 7.5.7601.17514, time stamp: 0x4ce7a5f8
    Faulting module name: clr.dll, version: 4.0.30319.1, time stamp: 0x4ba1d9ef
    Exception code: 0xc0000005
    Fault offset: 0x000d17da
    Faulting process id: 0x1a8
    Faulting application start time: 0x01ce1511da26b79f
    Faulting application path: C:\Windows\SysWOW64\inetsrv\w3wp.exe
    Faulting module path: C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
    Report Id: 47fa6234-810b-11e2-8701-94de80239364
    Event Xml:

    1000 2 100 0x80000000000000 2298 Application cube7-PC w3wp.exe 7.5.7601.17514 4ce7a5f8 clr.dll 4.0.30319.1 4ba1d9ef c0000005 000d17da 1a8 01ce1511da26b79f C:\Windows\SysWOW64\inetsrv\w3wp.exe C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll 47fa6234-810b-11e2-8701-94de80239364

    This morning I am trying to push it is still coming up with the same HTTP Error: 404 (Not Found) but no log in the Event log.

  2. Support Staff 2 Posted by Anton Gogolev on 28 Feb, 2013 02:02 PM

    Anton Gogolev's Avatar


    Can you try pushing via the command line like this:

    hg push <your-hglab-repository-path> --debug

    and post the output here.

  3. 3 Posted by ninthjarl on 28 Feb, 2013 05:56 PM

    ninthjarl's Avatar

    Tried to perform the above step...this is the log. It stops after sending 50% of the data. Here I am trying to push about 300 MB data to the repository.


  4. 4 Posted by ninthjarl on 04 Mar, 2013 11:40 AM

    ninthjarl's Avatar

    Hi Anton,
    Figured out the problem. I think it was to do with maxRequestLength value in httpRuntime in web.config file. These are the values I used.
    <httpRuntime executionTimeout="3600" maxRequestLength="2097151" maxUrlLength="8192" maxQueryStringLength="8192"/>

    It is working now though it seems to ask for authentication again when 50% of the files are uploaded i.e in case of large files. I am still having problems with uploading files >100MB in size so I am pushing them in parts. But it's working and that is what is important.
    I really appreciate the work you guys are putting here. The system was a breeze to install and get it up and running. Very elegant and easy to use. Thanks to all the guys who are involved with this project.

  5. Support Staff 5 Posted by Anton Gogolev on 05 Mar, 2013 07:10 AM

    Anton Gogolev's Avatar


    Are you using largefiles or anything like that or just pushing a particularly large file?

    And thanks for the kind words.

  6. 6 Posted by ninthjarl on 05 Mar, 2013 08:26 AM

    ninthjarl's Avatar

    Hi Anton,

    We are using large files not one large file. We usually work with textures, 3D meshes and animation files which can get quite heavy at times.

  7. Support Staff 7 Posted by Anton Gogolev on 07 Mar, 2013 10:11 AM

    Anton Gogolev's Avatar


    By "largefiles" I mean .

    Anyway, you can try increasing IIS/ASP.NET request limits by editing Web.config:

            maxQueryStringLength="8192" />
            <requestFiltering allowDoubleEscaping="true">
                <requestLimits maxQueryString="8192" maxAllowedContentLength="536870912" />

    maxRequestLength="536870" and maxAllowedContentLength="536870912" are particularly important.

    This increases maximum allows request size to 500+ Mb. While this should theoretically be more than enough for large pushes, HgLab will sometimes choke with OutOfMemoryException when pushing large files. This is something I'm looking into now.

    Thanks and let me know if this helps.

  8. 8 Posted by ninthjarl on 16 Mar, 2013 11:49 AM

    ninthjarl's Avatar

    Hi Anton,
    Sorry, but for some reason I did not get a email so I did not know about your reply. Yes, those are the kind of file formats we use in game development. Lots of .png, .jpg, .fbx and binary files. That is a very helpful link, thanks very much. I will change the settings on mercurial and see if changes anything.
    We are only having problems when setting up exisitng projects as there are already a lot of large files in the project. The work around is that we are breaking the pushes into chunks of 250MB and it works. Setting up any new projects is seamlessly easy.

  9. Anton Gogolev closed this discussion on 21 Mar, 2013 07:26 AM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts


? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac

Recent Discussions

03 Aug, 2022 01:49 PM
05 Jul, 2022 07:01 PM
28 Mar, 2022 04:42 PM
21 Jan, 2022 10:43 AM
20 Jan, 2022 10:45 AM


18 Jan, 2022 10:15 AM
19 Mar, 2021 06:13 PM
01 Mar, 2021 02:51 PM
01 Jan, 2021 02:19 AM
28 Aug, 2020 08:34 AM
23 Jun, 2020 08:29 AM