novice - how to enable large files on hg repository

714 views
Skip to first unread message

Felix Nielsen

unread,
Nov 8, 2017, 6:04:02 PM11/8/17
to scmmanager
Hi

New to scm-manager, how do I enable large file on my hg repos - running on Ubuntu

Thanks
Felix

Felix Nielsen

unread,
Nov 8, 2017, 6:14:27 PM11/8/17
to scmmanager
Hi

added the "extenstion" to "xxxx/.hg/hgrc" - but now I get this error when trying to push my repos to scm-manager :

searching for changes
abort: HTTP Error 413: FULL head


Any clues, Thanks

Felix

Felix Nielsen

unread,
Nov 8, 2017, 6:37:29 PM11/8/17
to scmmanager
Modified "server-config.xml" -> "reuestHeaderSize" - but now I get this error:

searching for changes
abort: remote error:
Mercurial/Python process ends with return code 1

(I am doing hg push from a windows to linux)

Thanks
Felix

Felix Nielsen

unread,
Nov 11, 2017, 12:49:45 AM11/11/17
to scmmanager
Not much going on here on this list :(

Gintas Grigelionis

unread,
Nov 12, 2017, 6:20:04 AM11/12/17
to scmmanager
Could you please be more specific? Are you talking about largefiles extension?

Felix Nielsen

unread,
Nov 12, 2017, 10:48:23 AM11/12/17
to scmma...@googlegroups.com
Yes

I am trying to push a quite big repos with largefiles and got to a step now where I get this error :

--
You received this message because you are subscribed to a topic in the Google Groups "scmmanager" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/scmmanager/NLVSHsH5g8A/unsubscribe.
To unsubscribe from this group and all its topics, send an email to scmmanager+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Sebastian Sdorra

unread,
Nov 12, 2017, 4:07:59 PM11/12/17
to scmma...@googlegroups.com
Hi,
Could you please post the scm-manager server log?

Sebastian

--
You received this message because you are subscribed to the Google Groups "scmmanager" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scmmanager+unsubscribe@googlegroups.com.

Felix Nielsen

unread,
Nov 12, 2017, 5:11:54 PM11/12/17
to scmma...@googlegroups.com
Hi

I seem to to have some permission issues, I tried to manually create the ".cache" folder and chown -R root:root 

2017-11-12 22:10:17.422 [qtp1221555852-32] TRACE sonia.scm.web.cgi.DefaultCGIExecutor - process servlet input

2017-11-12 22:10:17.900 [cgi-pool-2] WARN  sonia.scm.web.cgi.DefaultCGIExecutor - Traceback (most recent call last):

  File "/var/lib/scm/lib/python/hgweb.py", line 42, in <module>

    wsgicgi.launch(application)

  File "/usr/lib/python2.7/dist-packages/mercurial/hgweb/wsgicgi.py", line 87, in launch

    for chunk in content:

  File "/usr/lib/python2.7/dist-packages/mercurial/hgweb/hgweb_mod.py", line 306, in run_wsgi

    for r in self._runwsgi(req, repo):

  File "/usr/lib/python2.7/dist-packages/mercurial/hgweb/hgweb_mod.py", line 346, in _runwsgi

    return protocol.call(rctx.repo, req, cmd)

  File "/usr/lib/python2.7/dist-packages/mercurial/hgweb/protocol.py", line 88, in call

    rsp = wireproto.dispatch(repo, p, cmd)

  File "/usr/lib/python2.7/dist-packages/mercurial/wireproto.py", line 481, in dispatch

    return func(repo, proto, *args)

  File "/usr/lib/python2.7/dist-packages/hgext/largefiles/proto.py", line 39, in putlfile

    lfutil.linktousercache(repo, sha)

  File "/usr/lib/python2.7/dist-packages/hgext/largefiles/lfutil.py", line 256, in linktousercache

    link(storepath(repo, hash), path)

  File "/usr/lib/python2.7/dist-packages/hgext/largefiles/lfutil.py", line 42, in link

    util.makedirs(os.path.dirname(dest))

  File "/usr/lib/python2.7/dist-packages/mercurial/util.py", line 1413, in makedirs

    makedir(name, notindexed)

  File "/usr/lib/python2.7/dist-packages/mercurial/posix.py", line 497, in makedir

    os.mkdir(path)

OSError: [Errno 13] Permission denied: '/root/.cache/largefiles'


2017-11-12 22:10:17.900 [qtp1221555852-32] TRACE sonia.scm.web.cgi.DefaultCGIExecutor - handle status code 1 with statusCodeHandler, there are 0 bytes written to outputstream

2017-11-12 22:10:17.900 [qtp1221555852-32] WARN  sonia.scm.web.HgCGIExceptionHandler - Mercurial/Python process ends with return code 1


2017-11-12 22:10:17.903 [qtp1221555852-32] DEBUG sonia.scm.web.HgCGIServlet - mercurial request finished in 482.5 ms



Sebastian Sdorra

unread,
Nov 14, 2017, 4:07:45 AM11/14/17
to scmma...@googlegroups.com
Do you have enabled the largefile extension on server and client side? Does SCM-Manager run as root?

Sebastian

Felix Nielsen

unread,
Nov 14, 2017, 4:13:24 AM11/14/17
to scmma...@googlegroups.com
Hi

Yes scm-manager is running as root - client has largefiles and is being pushed from a server that pulls daily from our HG repository runnning today.

On the server I did this :

added "extenstion" to "xxxx/.hg/hgrc"

I also tried to create .cache/largefiles manually and adding chmod 0777 and chown root:root and also tried scm:root

But the error is the same :(

Thanks
Felix

Felix Nielsen

unread,
Nov 15, 2017, 3:57:29 AM11/15/17
to scmmanager
Hi

Got a little further:

1. updated "xxxx/Shadow/.hg/hgrc" ->


[extensions]
largefiles =

[largefiles]
usercache = /srv/largefiles


2. mkdir /srv/largefiles

3. chmod -R 0777 /srv/largefiles

4. push ->

searching for changes
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: transaction abort!
remote: rollback completed
remote: stream ended unexpectedly (got 0 bytes, expected 4)
abort: push failed on remote

5. scm log ->

2017-11-15 08:35:20.763 [qtp1221555852-31] TRACE sonia.scm.web.cgi.DefaultCGIExecutor - process servlet input
2017-11-15 08:37:20.432 [qtp1221555852-31] ERROR sonia.scm.web.cgi.DefaultCGIExecutor - could not read from ServletInputStream and write to ProcessOut
putStream
java.io.IOException: Broken pipe
        at java.io.FileOutputStream.writeBytes(Native Method)
        at java.io.FileOutputStream.write(FileOutputStream.java:326)
        at java.io.BufferedOutputStream.write(BufferedOutputStream.java:122)
        at sonia.scm.util.IOUtil.copy(IOUtil.java:203)

Any clues?

Thanks
Felix

Felix Nielsen

unread,
Nov 15, 2017, 9:40:22 AM11/15/17
to scmmanager
It seems to be related to HTTP_CONTENT_LENGTH= being too high

-> HTTP_CONTENT_LENGTH=6314297259

Any hints

Felix

Gintas Grigelionis

unread,
Nov 16, 2017, 3:58:06 AM11/16/17
to scmmanager
Looks like https://bz.mercurial-scm.org/show_bug.cgi?id=4616

Which version of mercurial do you run?

Gintas

Felix Nielsen

unread,
Nov 16, 2017, 4:06:13 AM11/16/17
to scmma...@googlegroups.com
Mercurial Distributed SCM (version 3.7.3)

(see https://mercurial-scm.org for more information)


Copyright (C) 2005-2016 Matt Mackall and others

This is free software; see the source for copying conditions. There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Felix Nielsen

unread,
Nov 16, 2017, 4:28:08 AM11/16/17
to scmmanager
I am running Mercurial 4.4.1 now and still fails the same step ->



  HTTP_CONTENT_LENGTH=6314297259
  SCM_HOME=/var/lib/scm
  USER=scm
  REMOTE_USER=fn
  HTTP_X_HGARG_1=heads=666f726365
  HTTP_HOST=192.168.183.21:8080
  QUERY_STRING=cmd=unbundle
  HTTP_ACCEPT=application/mercurial-0.1
  NLSPATH=/usr/dt/lib/nls/msg/%L/%N.cat
  HTTP_ACCEPT_ENCODING=identity
  HOME=/root
2017-11-16 09:23:07.663 [qtp1221555852-32] TRACE sonia.scm.web.cgi.DefaultCGIExecutor - process servlet input
2017-11-16 09:25:10.418 [qtp1221555852-32] ERROR sonia.scm.web.cgi.DefaultCGIExecutor - could not read from ServletInputStream and write to ProcessOutputStream
java.io.IOException: Broken pipe
        at java.io.FileOutputStream.writeBytes(Native Method)
        at java.io.FileOutputStream.write(FileOutputStream.java:326)
        at java.io.BufferedOutputStream.write(BufferedOutputStream.java:122)
        at sonia.scm.util.IOUtil.copy(IOUtil.java:203)
        at sonia.scm.web.cgi.DefaultCGIExecutor.processServletInput(DefaultCGIExecutor.java:554)
        at sonia.scm.web.cgi.DefaultCGIExecutor.execute(DefaultCGIExecutor.java:402)
        at sonia.scm.web.cgi.DefaultCGIExecutor.execute(DefaultCGIExecutor.java:194)
        at sonia.scm.web.HgCGIServlet.process(HgCGIServlet.java:294)
        at sonia.scm.web.HgCGIServlet.handleRequest(HgCGIServlet.java:210)
        at sonia.scm.web.HgCGIServlet.service(HgCGIServlet.java:179)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
        at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
        at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at sonia.scm.web.filter.PermissionFilter.doFilter(PermissionFilter.java:168)
        at sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at sonia.scm.web.filter.BasicAuthenticationFilter.processRequest(BasicAuthenticationFilter.java:423)
        at sonia.scm.web.filter.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:214)
        at sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at sonia.scm.filter.MDCFilter.doFilter(MDCFilter.java:110)
        at sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at sonia.scm.web.filter.AutoLoginFilter.doFilter(AutoLoginFilter.java:85)
        at sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at sonia.scm.filter.BaseUrlFilter.doFilter(BaseUrlFilter.java:117)
        at sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
        at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
        at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
        at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
        at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
        at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
        at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
        at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
        at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
        at sonia.scm.boot.BootstrapFilter.doFilter(BootstrapFilter.java:119)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1288)
        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:443)
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
        at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:556)
        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1044)
        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:372)
        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:189)
        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:978)
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
        at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
        at org.eclipse.jetty.server.Server.handle(Server.java:369)
        at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:464)
        at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:924)
        at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:985)
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:861)
        at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:231)
        at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
        at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:667)
        at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
        at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
        at java.lang.Thread.run(Thread.java:748)
2017-11-16 09:25:10.420 [qtp1221555852-32] TRACE sonia.scm.web.cgi.DefaultCGIExecutor -   Status: 200 Script output follows
2017-11-16 09:25:10.420 [qtp1221555852-32] DEBUG sonia.scm.web.cgi.DefaultCGIExecutor - CGI returned with status 200
2017-11-16 09:25:10.420 [qtp1221555852-32] TRACE sonia.scm.web.cgi.DefaultCGIExecutor -   Content-Type: application/mercurial-0.1
2017-11-16 09:25:10.421 [qtp1221555852-32] TRACE sonia.scm.web.cgi.DefaultCGIExecutor - handle status code 0 with statusCodeHandler, there are 261 bytes written to outputstream
2017-11-16 09:25:10.421 [qtp1221555852-32] DEBUG sonia.scm.web.HgCGIExceptionHandler - mercurial process ends successfully
2017-11-16 09:25:10.421 [qtp1221555852-32] DEBUG sonia.scm.web.HgCGIServlet - mercurial request finished in 2.046 min




Den torsdag den 16. november 2017 kl. 10.06.13 UTC+1 skrev Felix Nielsen:
Mercurial Distributed SCM (version 3.7.3)

(see https://mercurial-scm.org for more information)


Copyright (C) 2005-2016 Matt Mackall and others

This is free software; see the source for copying conditions. There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Gintas Grigelionis

unread,
Nov 16, 2017, 1:56:52 PM11/16/17
to scmmanager
Hmm, maybe the following would provide some clues

https://github.com/tornadoweb/tornado/issues/245
https://www.mercurial-scm.org/pipermail/mercurial/2016-May/049577.html

Looks like SCM servlet cannot pipe all data to mercurial process, because mercurial process thinks it has done whatever it has to do and exits.

Gintas

Felix Nielsen

unread,
Nov 18, 2017, 5:23:58 PM11/18/17
to scmmanager
Not sure what to do here :(

Felix

Gintas Grigelionis

unread,
Nov 19, 2017, 5:02:44 AM11/19/17
to scmmanager
If you suggest that the content length is incorrect, I'd suggest logging what happens in wsgi in order to understand why Python thinks it did the job, but the servlet still holds data that it ries to pass to Python.

Gintas

Felix Nielsen

unread,
Nov 19, 2017, 6:21:20 AM11/19/17
to scmma...@googlegroups.com
I don't think the content length is wrong - just too big? - it is quite big and I am pushing an current repository and it seems that the big numbers are not handled correctly 

makes sense?

Felix 

Sent from my iPhone
--
You received this message because you are subscribed to a topic in the Google Groups "scmmanager" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/scmmanager/NLVSHsH5g8A/unsubscribe.
To unsubscribe from this group and all its topics, send an email to scmmanager+...@googlegroups.com.

Sebastian Sdorra

unread,
Nov 19, 2017, 9:43:37 AM11/19/17
to scmma...@googlegroups.com
Hi,
Felix the content length header show a size of nearly 6GB which exceeds integer space. Perhaps there is a problem with files, which are bigger than 4GB. Can you try to push a file below 4 GB and one above 4GB?

Sebastian

To unsubscribe from this group and all its topics, send an email to scmmanager+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "scmmanager" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scmmanager+unsubscribe@googlegroups.com.

Sebastian Sdorra

unread,
Nov 19, 2017, 10:19:33 AM11/19/17
to scmma...@googlegroups.com
I was not able to reproduce the issue. I was able to push and clone a 6gb file with the largefiles extension.
But there is part in the code of the cgi handling, which could make trouble with a file over 4GB:


Sebastian

Sebastian Sdorra

unread,
Nov 19, 2017, 10:26:25 AM11/19/17
to scmma...@googlegroups.com
Please enable trace logging, before you do the push?

Sebastian

Felix Nielsen

unread,
Nov 19, 2017, 2:05:31 PM11/19/17
to scmmanager
Yes TRACE is on 

felix@scm:~$ sudo tail /var/log/scm/scm-manager.log -f -n 200

  HTTP_X_HGARG_22=tlfile+sha%3D60dd90b7ec0a0a9f34ed02342db8d6baf0bf73e6%3Bstatlfile+sha%3D34699211e3c3fbe785a338691450df86238161c9%3Bstatlfile+sha%3D8d4d3cfb42768db733848ecbe65556acb5ecff0f%3Bstatlfile+sha%3Dfe19beb4f59e811ce7772a5618f6f47b00f81f3c%3Bstatlfile+sha%3D3a787e04b354ecf7ae66b4c975f56776203c584b%3Bstatlfile+sha%3De25591be3ef82fc37c3c50b740170b0e35ff70f2%3Bstatlfile+sha%3D1c441cad651a30e25a0049f5a22f2d51b34e71a6%3Bstatlfile+sha%3Da39b311b82146dfdcaba3f7f935464600b36e891%3Bstatlfile+sha%3D4d53f211d6eea18371ca87cada467091252257e4%3Bstatlfile+sha%3D8f19592d00fa74539aee3f87446c9045b82c8058%3Bstatlfile+sha%3D76a6686c886bb6ac2cce3710b31783d069049c93%3Bstatlfile+sha%3Dd4d093c65f976a1cabf75f0a1ad45ead6ab84c07%3Bstatlfile+sha%3D530490527c0d259a392416dff6cd661c8953ebb9%3Bstatlfile+sha%3D95f5781f935a99c4548ba04fcf33feedd7e9b799%3Bstatlfile+sha%3D55e8a906450bf7027808e6cdff259bafd1844306%3Bstatlfile+sha%3D7053bbe4e93ffebd21c4df21ebf1e29c1a578f19%3Bstatlfile+sha%3D68c9aac5cbbfcac200e5f24702445c8dbc94c1fa%3Bstatlfile

  HTTP_X_HGARG_21=%3Bstatlfile+sha%3Dd58eab340838a1f8bc918dd629e7bc41f429e9c7%3Bstatlfile+sha%3Dd9937b0b22465c5ab63448a9c6c582b38b142333%3Bstatlfile+sha%3D6221217884f4d5464e7c3891f0f776641bb9f913%3Bstatlfile+sha%3D764225f074e9516ef081a35a239f359a3cd3657f%3Bstatlfile+sha%3Ddc8ad6d89dba86f951e405878d158a4a83c83428%3Bstatlfile+sha%3Df595f8bb6d02ac043e0e72237aaca43d0260d965%3Bstatlfile+sha%3De11ee23f8915d65f3f1a60c9fa6e922935336daf%3Bstatlfile+sha%3D76daa43342e7658d0d0b85c2a488f5c24ddb4e52%3Bstatlfile+sha%3Dcac88025790c9d28770d755f4fd59760eba47829%3Bstatlfile+sha%3D0b6c94cca2f2276755264758305a62395c8dd6da%3Bstatlfile+sha%3D14bf763e38d5cddc7b218c2d3b264c639084a1b1%3Bstatlfile+sha%3D02f5839b729e0bf211ab897ab50b25ad00743fe8%3Bstatlfile+sha%3Defa675f308a567e1383d6aad48080c34961690c4%3Bstatlfile+sha%3D001a4d384c3816776db0ed8d84e74f2a675d786a%3Bstatlfile+sha%3Dd7492f08ea763b7d1c9fea4276a0b5d56fc0135e%3Bstatlfile+sha%3Dc220725c0bca41aca14df33d7f07b4dc8577c7b9%3Bstatlfile+sha%3D76b9cb95dfd12ddafa36c108a361d976449557e3%3Bsta

  HTTP_X_HGARG_20=3b22fb%3Bstatlfile+sha%3D2bd9144396ed427535c32b4c7235976951722944%3Bstatlfile+sha%3Df2d2b83c4a98a38ea7639675d12a4460378a96df%3Bstatlfile+sha%3D126af5083e47cda3d4921451950f763f53154e20%3Bstatlfile+sha%3D61781d2a709db4bc93f41285e347f1ef725d58e7%3Bstatlfile+sha%3D638094aeaf7485e6004918ec1ca31a1619d2b8a4%3Bstatlfile+sha%3Dc2af5477cb6f8e091041c15f00a73522d1d89ca0%3Bstatlfile+sha%3D0009b8e2560318b0a50a4a0a82387f9289c380a8%3Bstatlfile+sha%3D3a0c0e2df4e48a2ea4d37b28eea6939bca569efa%3Bstatlfile+sha%3Dda143d02ec58880b4364fbbdc25c1627e02bd650%3Bstatlfile+sha%3D178487cce5a3cde7a8f12a776c88802dc9b7ea4f%3Bstatlfile+sha%3D106167f81396aae1385968ab1bbe93f36bf71a52%3Bstatlfile+sha%3Df37be6d60718581573da6ff431d1d09b7a741d6a%3Bstatlfile+sha%3D6fa8d0fd5cdce513f06a5e3538dbff00ae157920%3Bstatlfile+sha%3D9eea5fc906eccd0a11c9c36e1717a82a3f73c9ba%3Bstatlfile+sha%3Dc1f2e4a58ea20fd4316e75a4240c69bae095ac3c%3Bstatlfile+sha%3D3d82ad696361d867851fea5f8d4f3a94a383214d%3Bstatlfile+sha%3Ded72c4c735e348bdce344ac4972b591c13960249

  HOME=/home/felix

2017-11-19 18:50:23.210 [qtp1221555852-33] TRACE sonia.scm.web.cgi.DefaultCGIExecutor - process servlet input

2017-11-19 18:50:23.377 [qtp1221555852-33] TRACE sonia.scm.web.cgi.DefaultCGIExecutor -   Status: 200 Script output follows

2017-11-19 18:50:23.377 [qtp1221555852-33] DEBUG sonia.scm.web.cgi.DefaultCGIExecutor - CGI returned with status 200

2017-11-19 18:50:23.377 [qtp1221555852-33] TRACE sonia.scm.web.cgi.DefaultCGIExecutor -   Content-Type: application/mercurial-0.1

2017-11-19 18:50:23.377 [qtp1221555852-33] TRACE sonia.scm.web.cgi.DefaultCGIExecutor -   Content-Length: 2075

2017-11-19 18:50:23.392 [qtp1221555852-33] TRACE sonia.scm.web.cgi.DefaultCGIExecutor - handle status code 0 with statusCodeHandler, there are 2075 bytes written to outputstream

2017-11-19 18:50:23.393 [qtp1221555852-33] DEBUG sonia.scm.web.HgCGIExceptionHandler - mercurial process ends successfully

2017-11-19 18:50:23.393 [qtp1221555852-33] DEBUG sonia.scm.web.HgCGIServlet - mercurial request finished in 220.5 ms

2017-11-19 18:53:37.473 [qtp1221555852-30] TRACE sonia.scm.web.filter.BasicAuthenticationFilter - found basic authorization header, start authentication

2017-11-19 18:53:37.473 [qtp1221555852-30] TRACE sonia.scm.web.UserAgentParser - return user-agent UserAgent{name=Mercurial, browser=false, basicAuthenticationCharset=US-ASCII} for mercurial/proto-1.0 (Mercurial 4.1.3)

2017-11-19 18:53:37.473 [qtp1221555852-30] TRACE sonia.scm.web.filter.BasicAuthenticationFilter - try to authenticate user fn

2017-11-19 18:53:37.473 [qtp1221555852-30] TRACE sonia.scm.security.ConfigurableLoginAttemptHandler - LoginAttemptHandler is disabled

2017-11-19 18:53:37.473 [qtp1221555852-30] TRACE sonia.scm.web.security.ChainAuthenticatonManager - no authentication result for user fn found in cache

2017-11-19 18:53:37.473 [qtp1221555852-30] TRACE sonia.scm.web.security.ChainAuthenticatonManager - start authentication chain for user fn

2017-11-19 18:53:37.473 [qtp1221555852-30] TRACE sonia.scm.web.security.ChainAuthenticatonManager - check authenticator class sonia.scm.web.security.DefaultAuthenticationHandler for user fn

2017-11-19 18:53:37.473 [qtp1221555852-30] DEBUG sonia.scm.web.security.DefaultAuthenticationHandler - user fn successfully prepared for login

2017-11-19 18:53:37.473 [qtp1221555852-30] DEBUG sonia.scm.web.security.ChainAuthenticatonManager - authenticator sonia.scm.web.security.DefaultAuthenticationHandler ends with result, user: fn, state: SUCCESS

2017-11-19 18:53:37.473 [qtp1221555852-30] DEBUG sonia.scm.event.GuavaScmEventBus - post AuthenticationEvent{user=User{name=fn, displayName=Felix Nielsen, mail=fe...@playdeadgames.com, password=(not set), admin=false, type=xml, active=true, creationDate=1510180850516, lastModified=1510522870975, properties={}}} to event bus

2017-11-19 18:53:37.474 [qtp1221555852-30] TRACE sonia.scm.security.ConfigurableLoginAttemptHandler - LoginAttemptHandler is disabled

2017-11-19 18:53:37.474 [qtp1221555852-30] DEBUG sonia.scm.security.GroupCollector - user fn is member of _authenticated, shadow_security_rw

2017-11-19 18:53:37.475 [qtp1221555852-30] TRACE sonia.scm.web.filter.BasicAuthenticationFilter - user fn successfully authenticated

2017-11-19 18:53:37.475 [qtp1221555852-30] TRACE sonia.scm.ScmEventBusModule - register subscriber class sonia.scm.repository.RepositoryManagerProvider

2017-11-19 18:53:37.475 [qtp1221555852-30] TRACE sonia.scm.event.GuavaScmEventBus - register sonia.scm.repository.RepositoryManagerProvider@61ce8043 to event bus, async = true

2017-11-19 18:53:37.475 [qtp1221555852-30] TRACE sonia.scm.ScmEventBusModule - register subscriber class sonia.scm.repository.DefaultRepositoryProvider

2017-11-19 18:53:37.475 [qtp1221555852-30] TRACE sonia.scm.event.GuavaScmEventBus - register sonia.scm.repository.DefaultRepositoryProvider@4d57ad53 to event bus, async = true

2017-11-19 18:53:37.475 [qtp1221555852-30] TRACE sonia.scm.web.filter.PermissionFilter - write access to repository Shadow for user fn granted

2017-11-19 18:53:37.475 [qtp1221555852-30] TRACE sonia.scm.repository.RepositoryRequestListenerUtil - no repository request listener defined

2017-11-19 18:53:37.476 [qtp1221555852-30] DEBUG sonia.scm.web.cgi.DefaultCGIExecutor - execute cgi: python /var/lib/scm/lib/python/hgweb.py

2017-11-19 18:53:37.476 [qtp1221555852-30] TRACE sonia.scm.web.cgi.DefaultCGIExecutor - Environment:

  PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin

  REPO_NAME=Shadow

  REMOTE_ADDR=192.168.183.130

  SCM_CREDENTIALS=(is set)

  SUDO_USER=felix

  MAIL=/var/mail/root

  CONTENT_TYPE=application/mercurial-0.1

  LD_LIBRARY_PATH=/usr/lib/jvm/java-8-oracle/jre/lib/amd64/server:/usr/lib/jvm/java-8-oracle/jre/lib/amd64

  REQUEST_METHOD=POST

  USERNAME=root

  HTTP_VARY=X-HgArg-1,X-HgProto-1

  LOGNAME=root

  PWD=/home/felix

  AUTH_TYPE=BASIC

  SERVER_PORT=8080

  PYTHONPATH=/var/lib/scm/lib/python

  SHELL=/bin/bash

  HTTP_X_HGPROTO_1=0.1 0.2 comp=zlib,none,bzip2

  HTTP_CONTENT_TYPE=application/mercurial-0.1

  CONTENT_LENGTH=2019329963

  LC_ALL=C

  SCM_CHALLENGE=(is set)

  HTTP_USER_AGENT=mercurial/proto-1.0 (Mercurial 4.1.3)

  LC_CTYPE=en_US.UTF-8

  LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:

  SHLVL=0

  REMOTE_HOST=192.168.183.130

  SERVER_PROTOCOL=HTTP/1.1

  SCM_REPOSITORY_PATH=/var/lib/scm/repositories/hg/Shadow

  SERVER_SOFTWARE=scm-manager/1.55

  HTTP_AUTHORIZATION=(is set)

  TERM=xterm-256color

  PATH_TRANSLATED=/var/cache/scm/work/webapp/Shadow

  XFILESEARCHPATH=/usr/dt/app-defaults/%L/Dt

  LANG=C

  SUDO_GID=1000

  HTTPS=OFF

  SCRIPT_NAME=/scm/hg

  SERVER_NAME=192.168.183.21

  PATH_INFO=/Shadow

  SUDO_UID=1000

  GATEWAY_INTERFACE=CGI/1.1

  SCRIPT_FILENAME=/var/cache/scm/work/webapp/scm/hg

  HTTP_CONTENT_LENGTH=6314297259

  SCM_HOME=/var/lib/scm

  USER=scm

  SCM_URL=http://192.168.183.21:8080/scm/hook/hg/

  REMOTE_USER=fn

  SUDO_COMMAND=/etc/init.d/scm-server start

  HTTP_X_HGARG_1=heads=666f726365

  HTTP_HOST=192.168.183.21:8080

  QUERY_STRING=cmd=unbundle

  HTTP_ACCEPT=application/mercurial-0.1

  NLSPATH=/usr/dt/lib/nls/msg/%L/%N.cat

  HTTP_ACCEPT_ENCODING=identity

  HOME=/home/felix

2017-11-19 18:53:37.477 [qtp1221555852-30] TRACE sonia.scm.web.cgi.DefaultCGIExecutor - process servlet input

2017-11-19 18:55:20.506 [qtp1221555852-30] ERROR sonia.scm.web.cgi.DefaultCGIExecutor - could not read from ServletInputStream and write to ProcessOutputStream

2017-11-19 18:55:20.507 [qtp1221555852-30] TRACE sonia.scm.web.cgi.DefaultCGIExecutor -   Status: 200 Script output follows

2017-11-19 18:55:20.507 [qtp1221555852-30] DEBUG sonia.scm.web.cgi.DefaultCGIExecutor - CGI returned with status 200

2017-11-19 18:55:20.507 [qtp1221555852-30] TRACE sonia.scm.web.cgi.DefaultCGIExecutor -   Content-Type: application/mercurial-0.1

2017-11-19 18:55:20.507 [qtp1221555852-30] TRACE sonia.scm.web.cgi.DefaultCGIExecutor - handle status code 0 with statusCodeHandler, there are 261 bytes written to outputstream

2017-11-19 18:55:20.507 [qtp1221555852-30] DEBUG sonia.scm.web.HgCGIExceptionHandler - mercurial process ends successfully

2017-11-19 18:55:20.507 [qtp1221555852-30] DEBUG sonia.scm.web.HgCGIServlet - mercurial request finished in 1.717 min



Sebastian Sdorra

unread,
Nov 19, 2017, 2:16:57 PM11/19/17
to scmma...@googlegroups.com
The problem seems to be CONTENT_LENGTH environment variable. The trace output shows HTTP_CONTENT_LENGTH=6314297259 and a CONTENT_LENGTH=2019329963. Both values should be equal, i think the problem is the integer overflow of the CGIExecutor. I will try to fix the issue.

Sebastian
 

Felix Nielsen

unread,
Nov 19, 2017, 2:21:49 PM11/19/17
to scmma...@googlegroups.com
thanks a million :)

Sent from my iPhone
You received this message because you are subscribed to a topic in the Google Groups "scmmanager" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/scmmanager/NLVSHsH5g8A/unsubscribe.
To unsubscribe from this group and all its topics, send an email to scmmanager+...@googlegroups.com.

Sebastian Sdorra

unread,
Nov 19, 2017, 2:23:53 PM11/19/17
to scmma...@googlegroups.com
I've created an issue for the integer overflow:


Sebastian

To unsubscribe from this group and all its topics, send an email to scmmanager+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

Sebastian Sdorra

unread,
Nov 19, 2017, 3:22:11 PM11/19/17
to scmma...@googlegroups.com
Could you please test the version below:


Sebastian

Felix Nielsen

unread,
Nov 19, 2017, 6:23:52 PM11/19/17
to scmma...@googlegroups.com
Hi Sebastian,

BINGO :)


searching for changes
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: added 1787 changesets with 243587 changes to 72851 files (+22 heads)

Thanks
Felix

Reply all
Reply to author
Forward
0 new messages