Issue with "Browse" repo functionality

155 views
Skip to first unread message

Bryan

unread,
Nov 29, 2011, 11:38:13 AM11/29/11
to scmmanager
Hello Sebastian--great product! It is really simplifying our
Mercurial setup/management.

I'm having one slight issue with scm-manager. I've got a repo that
doesn't like when I click the "Browse" link (of "Commits, Browse") on
the Repositories tab. scm-manager throws a 500 and spits this out in
the log:

92 11:24:11.845 [qtp355235176-21 - /scm/api/rest/repositories/
c67cdece-30b8-4284-8c09-6a87723b22a2/browse.json?_dc=1322583851609]
ERROR sonia.scm.repository.AbstractHgHandler - could not parse result
93 javax.xml.bind.UnmarshalException: null
94 at
javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(AbstractUnmarshallerImpl.java:
315) ~[na:1.6.0_24]
95 at
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.createUnmarshalException(UnmarshallerImpl.java:
514) ~[jaxb-impl-2.1.13.jar:2.1.13]
96 at
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:
215) ~[jaxb-impl-2.1.13.jar:2.1.13]
97 at
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:
184) ~[jaxb-impl-2.1.13.jar:2.1.13]
98 at
javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:
137) ~[na:1.6.0_24]
99 at
javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:
184) ~[na:1.6.0_24]
100 at
sonia.scm.repository.AbstractHgHandler.getResultFromScript(AbstractHgHandler.java:
339) ~[scm-hg-plugin-1.9.jar:na]
101 at
sonia.scm.repository.HgRepositoryBrowser.getResult(HgRepositoryBrowser.java:
134) [scm-hg-plugin-1.9.jar:na]
102 at
sonia.scm.repository.RepositoryBrowserUtil.getResult(RepositoryBrowserUtil.java:
160) [scm-core-1.9.jar:na]
103 at
sonia.scm.repository.RepositoryBrowserUtil.getResult(RepositoryBrowserUtil.java:
121) [scm-core-1.9.jar:na]
104 at
sonia.scm.api.rest.resources.RepositoryResource.getBrowserResult(RepositoryResource.java:
377) [classes/:na]
105 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method) ~[na:1.6.0_24]
106 at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39) ~[na:1.6.0_24]
107 at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25) ~[na:1.6.0_24]
108 at java.lang.reflect.Method.invoke(Method.java:597)
~[na:1.6.0_24]
109 at
com.sun.jersey.spi.container.JavaMethodInvokerFactory
$1.invoke(JavaMethodInvokerFactory.java:60) [jersey-server-1.10.jar:
1.10]
110 at
com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider
$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:
205) [jersey-server-1.10.jar:1.10]
111 at
com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:
75) [jersey-server-1.10.jar:1.10]
112 at
com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:
288) [jersey-server-1.10.jar:1.10]
113 at
com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:
147) [jersey-server-1.10.jar:1.10]
114 at
com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:
108) [jersey-server-1.10.jar:1.10]
115 at
com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:
147) [jersey-server-1.10.jar:1.10]
116 at
com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:
84) [jersey-server-1.10.jar:1.10]
117 at
com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:
1469) [jersey-server-1.10.jar:1.10]
118 at
com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:
1400) [jersey-server-1.10.jar:1.10]
119 at
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:
1349) [jersey-server-1.10.jar:1.10]
120 at
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:
1339) [jersey-server-1.10.jar:1.10]
121 at
com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:
416) [jersey-bundle-1.10.jar:1.10]
122 at
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:
537) [jersey-bundle-1.10.jar:1.10]
123 at
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:
708) [jersey-bundle-1.10.jar:1.10]
124 at
javax.servlet.http.HttpServlet.service(HttpServlet.java:820) [servlet-
api-2.5.jar:2.5]
125 at
com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:
263) [guice-servlet-3.0.jar:na]
126 at
com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:
178) [guice-servlet-3.0.jar:na]
127 at
com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:
91) [guice-servlet-3.0.jar:na]
128 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
62) [guice-servlet-3.0.jar:na]
129 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]
130 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
131 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]
132 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
133 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]
134 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
135 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]
136 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
137 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]
138 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
139 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]
140 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
141 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]
142 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
143 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]
144 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
145 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]
146 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
147 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]
148 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
149 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]
150 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
151 at
sonia.scm.filter.SecurityFilter.doFilter(SecurityFilter.java:109)
[classes/:na]
152 at
sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102) [scm-
core-1.9.jar:na]
153 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
163) [guice-servlet-3.0.jar:na]
154 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
155 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]
156 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
157 at
sonia.scm.web.filter.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:
143) [scm-core-1.9.jar:na]
158 at
sonia.scm.web.security.ApiBasicAuthenticationFilter.doFilter(ApiBasicAuthenticationFilter.java:
105) [classes/:na]
159 at
sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102) [scm-
core-1.9.jar:na]
160 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
163) [guice-servlet-3.0.jar:na]
161 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
162 at
sonia.scm.filter.GZipFilter.doFilter(GZipFilter.java:78) [classes/:na]
163 at
sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102) [scm-
core-1.9.jar:na]
164 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
163) [guice-servlet-3.0.jar:na]
165 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
166 at
sonia.scm.filter.BaseUrlFilter.doFilter(BaseUrlFilter.java:100)
[classes/:na]
167 at
sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102) [scm-
core-1.9.jar:na]
168 at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
163) [guice-servlet-3.0.jar:na]
169 at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]
170 at
com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:
118) [guice-servlet-3.0.jar:na]
171 at
com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
[guice-servlet-3.0.jar:na]
172 at
sonia.scm.boot.BootstrapFilter.doFilter(BootstrapFilter.java:104)
[classes/:na]
173 at org.eclipse.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1330) [jetty-
servlet-7.5.4.v20111024.jar:7.5.4.v20111024]
174 at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:
478) [jetty-servlet-7.5.4.v20111024.jar:7.5.4.v20111024]
175 at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:
119) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]
176 at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:
520) [jetty-security-7.5.4.v20111024.jar:7.5.4.v20111024]
177 at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:
227) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]
178 at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:
941) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]
179 at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:
409) [jetty-servlet-7.5.4.v20111024.jar:7.5.4.v20111024]
180 at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:
186) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]
181 at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:
875) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]
182 at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:
117) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]
183 at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:
149) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]
184 at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:
110) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]
185 at org.eclipse.jetty.server.Server.handle(Server.java:
345) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]
186 at
org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:
441) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]
187 at org.eclipse.jetty.server.HttpConnection
$RequestHandler.headerComplete(HttpConnection.java:919) [jetty-
server-7.5.4.v20111024.jar:7.5.4.v20111024]
188 at
org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:582)
[jetty-http-7.5.4.v20111024.jar:7.5.4.v20111024]
189 at
org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:218)
[jetty-http-7.5.4.v20111024.jar:7.5.4.v20111024]
190 at
org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:
51) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]
191 at
org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:
586) [jetty-io-7.5.4.v20111024.jar:7.5.4.v20111024]
192 at org.eclipse.jetty.io.nio.SelectChannelEndPoint
$1.run(SelectChannelEndPoint.java:44) [jetty-io-7.5.4.v20111024.jar:
7.5.4.v20111024]
193 at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:
598) [jetty-util-7.5.4.v20111024.jar:7.5.4.v20111024]
194 at org.eclipse.jetty.util.thread.QueuedThreadPool
$3.run(QueuedThreadPool.java:533) [jetty-util-7.5.4.v20111024.jar:
7.5.4.v20111024]
195 at java.lang.Thread.run(Thread.java:662) [na:1.6.0_24]
196 Caused by: org.xml.sax.SAXParseException: An invalid XML
character (Unicode: 0x1b) was found in the element content of the
document.
197 at
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:
195) ~[na:1.6.0_24]
198 at
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:
174) ~[na:1.6.0_24]
199 at
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:
388) ~[na:1.6.0_24]
200 at
com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:
1414) ~[na:1.6.0_24]
201 at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl
$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2894)
~[na:1.6.0_24]
202 at
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:
648) ~[na:1.6.0_24]
203 at
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:
140) ~[na:1.6.0_24]
204 at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:
511) ~[na:1.6.0_24]
205 at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:
808) ~[na:1.6.0_24]
206 at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:
737) ~[na:1.6.0_24]
207 at
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:
119) ~[na:1.6.0_24]
208 at
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:
1205) ~[na:1.6.0_24]
209 at
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl
$JAXPSAXParser.parse(SAXParserImpl.java:522) ~[na:1.6.0_24]
210 at
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:
211) ~[jaxb-impl-2.1.13.jar:2.1.13]
211 ... 99 common frames omitted

I dunno what XML document that the error refers to. The unhappy repo
has around 800 changes in it. I can create a new repo and push a
simple change to it and the "Browse" link works fine. Any ideas would
be appreciated.

My configuration is as follows:

Centos 5.6
Python 2.5.6
Hg 2.0
scm-manager 1.9

Thanks again for putting this product out!

Bryan

Sebastian Sdorra

unread,
Nov 29, 2011, 2:15:45 PM11/29/11
to scmma...@googlegroups.com
Hi Bryan,
Could you please test the attached python file.
Insert the values of os.environ['SCM_PYTHON_PATH'] and
os.environ['SCM_REPOSITORY_PATH'] (more information's are in the
comments of the file). After you have inserted the values, execute the
file with python hglog.py. If your commit logs does not contain
private information's please post the xml output.

Sebastian

2011/11/29 Bryan <br...@bryanbush.org>:

hglog.py

Bryan

unread,
Nov 29, 2011, 3:07:18 PM11/29/11
to scmmanager
Sebastian:

Here's the output you requested:

[scmmgr@mercurial ~]$ python hglog.py
Traceback (most recent call last):
File "hglog.py", line 56, in <module>
from mercurial import hg, ui, commands
File "/opt/hg-2.0/lib/python2.7/site-packages/mercurial/hg.py", line
12, in <module>
import localrepo, bundlerepo, httprepo, sshrepo, statichttprepo,
bookmarks
File "/opt/hg-2.0/lib/python2.7/site-packages/mercurial/
httprepo.py", line 11, in <module>
import changegroup, statichttprepo, error, httpconnection, url,
util, wireproto
File "/opt/hg-2.0/lib/python2.7/site-packages/mercurial/
statichttprepo.py", line 11, in <module>
import changelog, byterange, url, error
File "/opt/hg-2.0/lib/python2.7/site-packages/mercurial/url.py",
line 13, in <module>
import httpconnection as httpconnectionmod
File "/opt/hg-2.0/lib/python2.7/site-packages/mercurial/
httpconnection.py", line 16, in <module>
from mercurial import httpclient
File "/opt/hg-2.0/lib/python2.7/site-packages/mercurial/httpclient/
__init__.py", line 48, in <module>
import socketutil
File "/opt/hg-2.0/lib/python2.7/site-packages/mercurial/httpclient/
socketutil.py", line 82, in <module>
class FakeSocket(httplib.FakeSocket):
AttributeError: 'module' object has no attribute 'FakeSocket'

Based on doing some research on the error message, it seems like
there's a problem with Mercurial, Python and SSL (which I'm not using
at this time). Apparently the FakeSocket class was revamped in Python
2.6's httplib and Mercurial is still referencing it even though it is
deprecated. I was getting a few other Python errors with this machine
(Centos 5.6 is pretty married to Python 2.4.3) so I rolled my own
Python 2.7.2 from source and built Mercurial 2.0 against that.

I dunno if you (or anyone out there) have run across this before or
have any suggestions? It doesn't seem like an scm-manager problem
really, but a Mercurial issue.

What versions of Mercurial/Python are you coding against?

Thanks,
Bryan

> ...
>
> read more »
>
>  hglog.py
> 8KViewDownload

Sebastian Sdorra

unread,
Nov 29, 2011, 3:20:43 PM11/29/11
to scmma...@googlegroups.com
I use python 2.6.x and mercurial 2.0 at the moment.
But you wrote in the message before that you could view a smaller
repository with scm-manager, than it could not be a general python
issue.
I think the error 500 comes from a xml encoding problem in a commit
message, author name or a path of your bigger repository.
Could you see some python errors in the log of scm-manager when you
try to access the repository browser of your bigger repository?

Sebastian

2011/11/29 Bryan <br...@bryanbush.org>:

Bryan

unread,
Nov 29, 2011, 3:35:10 PM11/29/11
to scmmanager
I guess I should have clarified---I can do that when I back off to
Python 2.5.6--not with 2.7.2. With 2.7.2, I get the same FakeSocket
error with my tiny repository as with the larger one. My apologies
for not stating that earlier--I've been flipping back and forth
between Pythons so much trying to figure this out I feel like a snake
handler! The errors in the scm-manager log are identical to those
that hglog.py generated.

Bryan

> ...
>
> read more »

Sebastian Sdorra

unread,
Nov 29, 2011, 3:42:54 PM11/29/11
to scmma...@googlegroups.com
Could you post the error from python2.5.6 hglog.py?

Sebastian


On Tuesday, November 29, 2011 at 21:35, Bryan wrote:

> I guess I should have clarified---I can do that when I back off to
> Python 2.5.6--not with 2.7.2. With 2.7.2, I get the same FakeSocket
> error with my tiny repository as with the larger one. My apologies
> for not stating that earlier--I've been flipping back and forth
> between Pythons so much trying to figure this out I feel like a snake
> handler! The errors in the scm-manager log are identical to those
> that hglog.py generated.
>
> Bryan
>

> On Nov 29, 3:20 pm, Sebastian Sdorra <s.sdo...@gmail.com (http://gmail.com)> wrote:
> > I use python 2.6.x and mercurial 2.0 at the moment.
> > But you wrote in the message before that you could view a smaller
> > repository with scm-manager, than it could not be a general python
> > issue.
> > I think the error 500 comes from a xml encoding problem in a commit
> > message, author name or a path of your bigger repository.
> > Could you see some python errors in the log of scm-manager when you
> > try to access the repository browser of your bigger repository?
> >
> > Sebastian
> >

> > 2011/11/29 Bryan <br...@bryanbush.org (http://bryanbush.org)>:

> > > > 2011/11/29 Bryan <br...@bryanbush.org (http://bryanbush.org)>:

Bryan

unread,
Nov 29, 2011, 4:13:09 PM11/29/11
to scmmanager
It doesn't generate any errors with Python 2.5.6. The change log
spits out fine.

Bryan

> ...
>
> read more »

Sebastian Sdorra

unread,
Nov 29, 2011, 4:17:50 PM11/29/11
to scmma...@googlegroups.com
Could you post the output, with your bigger repository? because i
think the error 500 comes from a encoding error. I've the changelog
contains private information's, please verify the xml with a xml
validator (like http://www.w3schools.com/xml/xml_validator.asp).

Sebastian

2011/11/29 Bryan <br...@bryanbush.org>:

Bryan

unread,
Nov 29, 2011, 4:32:12 PM11/29/11
to scmmanager
With 2.5.6, it validates error free using the link you provided. With
2.7.2 of course it doesn't generate any output.

So with:

- Python 2.5.6, the Activities viewer works, the Commits viewer works
but the Source viewer link does not (on the larger repo). It does on
the smaller repo.
- Python 2.7.2, none of the above works.

This isn't a showstopper because if you follow the URL, you can see
all of the changes and browse the files, I just thought I'd report it
and see if there was a solution.

Bryan

On Nov 29, 4:17 pm, Sebastian Sdorra <s.sdo...@gmail.com> wrote:
> Could you post the output, with your bigger repository? because i
> think the error 500 comes from a encoding error. I've the changelog
> contains private information's, please verify the xml with a xml

> validator (likehttp://www.w3schools.com/xml/xml_validator.asp).

> ...
>
> read more »

Sebastian Sdorra

unread,
Nov 29, 2011, 4:42:37 PM11/29/11
to scmma...@googlegroups.com
Could you edit the attached hgbrowse.py the same as with the hglog.py,
test with python 2.5.6 and post the output. I will test with mercurial
2.0 and python 2.7 later this week.

Sebastian

2011/11/29 Bryan <br...@bryanbush.org>:

hgbrowse.py

Bryan

unread,
Nov 29, 2011, 5:43:07 PM11/29/11
to scmmanager
Ok, I've fixed the first part of the 2.7.2 problem. My 2.7.2 wasn't
building properly with SSL support, so I rebuilt Python 2.7.2 and
Mercurial 2.0 against that, and now the Activity Plugin and the
Commits link works. The Source link still throws the 500.

Here's the output of hgbrowse.py using the above configuration:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<browser-result>
<revision>tip</revision>
<files>
<file>
<name>src</name>
<path>src/</path>
<directory>true</directory>
</file>
<file>
<name>lib</name>
<path>lib/</path>
<directory>true</directory>
</file>
<file>
<name>.idea</name>
<path>.idea/</path>
<directory>true</directory>
</file>
<file>
<name>.hgtags</name>
<path>.hgtags</path>
<directory>false</directory>
<length>532</length>
<lastModified>1313764427000</lastModified>
<description>Added tag-m, Able to proxy all formats now -- tested
on Windows, Linux, iPad, and Android for changeset 7655f0eccc03</
description>
</file>
<file>
<name>.hgignore</name>
<path>.hgignore</path>
<directory>false</directory>
<length>217</length>
<lastModified>1321561933000</lastModified>
<description>ignore netbeans project junk</description>
</file>
<file>
<name>build.xml</name>
<path>build.xml</path>
<directory>false</directory>
<length>7201</length>
<lastModified>1321647733000</lastModified>
<description>fixed up Jenkins build target</description>
</file>
</files>
</browser-result>

It seems to validate fine using the link you sent me earlier. Here's
the scm-manager.log output (no Python errors now):

16:57:33.949 [qtp433064372-19 - /scm/api/rest/repositories/
c67cdece-30b8-4284-8c09-6a87723b22a2/browse.json?_dc=1322603853663]


ERROR sonia.scm.repository.AbstractHgHandler - could not parse result

javax.xml.bind.UnmarshalException: null


at
javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(AbstractUnmarshallerImpl.java:
315) ~[na:1.6.0_24]

at
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.createUnmarshalException(UnmarshallerImpl.java:
514) ~[jaxb-impl-2.1.13.jar:2.1.13]

at
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:
215) ~[jaxb-impl-2.1.13.jar:2.1.13]

at
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:
184) ~[jaxb-impl-2.1.13.jar:2.1.13]

at
javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:
137) ~[na:1.6.0_24]

at
javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:
184) ~[na:1.6.0_24]

at
sonia.scm.repository.AbstractHgHandler.getResultFromScript(AbstractHgHandler.java:
339) ~[scm-hg-plugin-1.9.jar:na]

at
sonia.scm.repository.HgRepositoryBrowser.getResult(HgRepositoryBrowser.java:
134) [scm-hg-plugin-1.9.jar:na]

at
sonia.scm.repository.RepositoryBrowserUtil.getResult(RepositoryBrowserUtil.java:
160) [scm-core-1.9.jar:na]

at
sonia.scm.repository.RepositoryBrowserUtil.getResult(RepositoryBrowserUtil.java:
121) [scm-core-1.9.jar:na]

at
sonia.scm.api.rest.resources.RepositoryResource.getBrowserResult(RepositoryResource.java:
377) [classes/:na]

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:
1.6.0_24]

at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39) ~[na:1.6.0_24]

at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25) ~[na:1.6.0_24]

at java.lang.reflect.Method.invoke(Method.java:597) ~[na:1.6.0_24]

at com.sun.jersey.spi.container.JavaMethodInvokerFactory
$1.invoke(JavaMethodInvokerFactory.java:60) [jersey-server-1.10.jar:
1.10]

at
com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider
$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:
205) [jersey-server-1.10.jar:1.10]

at
com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:
75) [jersey-server-1.10.jar:1.10]

at
com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:
288) [jersey-server-1.10.jar:1.10]

at
com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:
147) [jersey-server-1.10.jar:1.10]

at
com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:
108) [jersey-server-1.10.jar:1.10]

at
com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:
147) [jersey-server-1.10.jar:1.10]

at
com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:
84) [jersey-server-1.10.jar:1.10]

at
com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:
1469) [jersey-server-1.10.jar:1.10]

at
com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:
1400) [jersey-server-1.10.jar:1.10]

at
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:
1349) [jersey-server-1.10.jar:1.10]

at
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:
1339) [jersey-server-1.10.jar:1.10]

at
com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:
416) [jersey-bundle-1.10.jar:1.10]

at
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:
537) [jersey-bundle-1.10.jar:1.10]

at
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:
708) [jersey-bundle-1.10.jar:1.10]

at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
[servlet-api-2.5.jar:2.5]


at
com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:
263) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:
178) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:
91) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
62) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at sonia.scm.filter.SecurityFilter.doFilter(SecurityFilter.java:109)
[classes/:na]

at sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102) [scm-
core-1.9.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
163) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
168) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
sonia.scm.web.filter.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:
143) [scm-core-1.9.jar:na]

at
sonia.scm.web.security.ApiBasicAuthenticationFilter.doFilter(ApiBasicAuthenticationFilter.java:
105) [classes/:na]

at sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102) [scm-
core-1.9.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
163) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at sonia.scm.filter.GZipFilter.doFilter(GZipFilter.java:78)
[classes/:na]

at sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102) [scm-
core-1.9.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
163) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at sonia.scm.filter.BaseUrlFilter.doFilter(BaseUrlFilter.java:100)
[classes/:na]

at sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102) [scm-
core-1.9.jar:na]

at
com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
163) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:
58) [guice-servlet-3.0.jar:na]

at
com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:
118) [guice-servlet-3.0.jar:na]

at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:
113) [guice-servlet-3.0.jar:na]

at sonia.scm.boot.BootstrapFilter.doFilter(BootstrapFilter.java:104)
[classes/:na]

at org.eclipse.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1330) [jetty-
servlet-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:
478) [jetty-servlet-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:
119) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:
520) [jetty-security-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:
227) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:
941) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:
409) [jetty-servlet-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:
186) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:
875) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:
117) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:
149) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:
110) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]

at org.eclipse.jetty.server.Server.handle(Server.java:345) [jetty-
server-7.5.4.v20111024.jar:7.5.4.v20111024]


at
org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:
441) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]

at org.eclipse.jetty.server.HttpConnection
$RequestHandler.headerComplete(HttpConnection.java:919) [jetty-
server-7.5.4.v20111024.jar:7.5.4.v20111024]

at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:582)
[jetty-http-7.5.4.v20111024.jar:7.5.4.v20111024]

at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:
218) [jetty-http-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:
51) [jetty-server-7.5.4.v20111024.jar:7.5.4.v20111024]

at
org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:
586) [jetty-io-7.5.4.v20111024.jar:7.5.4.v20111024]

at org.eclipse.jetty.io.nio.SelectChannelEndPoint
$1.run(SelectChannelEndPoint.java:44) [jetty-io-7.5.4.v20111024.jar:
7.5.4.v20111024]

at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:
598) [jetty-util-7.5.4.v20111024.jar:7.5.4.v20111024]

at org.eclipse.jetty.util.thread.QueuedThreadPool
$3.run(QueuedThreadPool.java:533) [jetty-util-7.5.4.v20111024.jar:
7.5.4.v20111024]

at java.lang.Thread.run(Thread.java:662) [na:1.6.0_24]

Caused by: org.xml.sax.SAXParseException: An invalid XML character
(Unicode: 0x1b) was found in the element content of the document.

at
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:
195) ~[na:1.6.0_24]

at
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:
174) ~[na:1.6.0_24]

at
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:
388) ~[na:1.6.0_24]

at
com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:
1414) ~[na:1.6.0_24]

at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl
$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2894)
~[na:1.6.0_24]

at
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:
648) ~[na:1.6.0_24]

at
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:
140) ~[na:1.6.0_24]

at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:
511) ~[na:1.6.0_24]

at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:
808) ~[na:1.6.0_24]

at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:
737) ~[na:1.6.0_24]

at
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:
119) ~[na:1.6.0_24]

at
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:
1205) ~[na:1.6.0_24]

at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl
$JAXPSAXParser.parse(SAXParserImpl.java:522) ~[na:1.6.0_24]

at
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:
211) ~[jaxb-impl-2.1.13.jar:2.1.13]

... 99 common frames omitted

Nov 29, 2011 4:57:33 PM com.sun.jersey.spi.container.ContainerResponse
mapMappableContainerException
SEVERE: The exception contained within MappableContainerException
could not be mapped to a response, re-throwing to the HTTP container
sonia.scm.repository.RepositoryException: could not parse result
at
sonia.scm.repository.AbstractHgHandler.getResultFromScript(AbstractHgHandler.java:
346)
at
sonia.scm.repository.HgRepositoryBrowser.getResult(HgRepositoryBrowser.java:
134)
at
sonia.scm.repository.RepositoryBrowserUtil.getResult(RepositoryBrowserUtil.java:
160)
at
sonia.scm.repository.RepositoryBrowserUtil.getResult(RepositoryBrowserUtil.java:
121)
at
sonia.scm.api.rest.resources.RepositoryResource.getBrowserResult(RepositoryResource.java:
377)

It seems to be seeing an ESC for some reason?

bb

> ...
>
> read more »
>
>  hgbrowse.py
> 5KViewDownload

Bryan

unread,
Nov 29, 2011, 5:59:57 PM11/29/11
to scmmanager
I found it:

changeset:   477:0a74b639556duser:        User Lastname
<em...@address.net>date:        Fri Aug 19 10:33:47 2011 -0400summary:
    Added tag ^[[D-m, Able to proxy all formats now -- tested on


Windows, Linux, iPad, and Android for changeset 7655f0eccc03

changeset:   476:7655f0eccc03tag:         ^[[D-mtag:         Able to


proxy all formats now -- tested on Windows, Linux, iPad, and

Androiduser:        User Lastname <em...@address.net>date:        Fri
Aug 19 10:29:31 2011 -0400summary:     comment and html tweak
Now I have to figure out how to get rid of it! :)

Thanks again for all of your assistance!

Bryan

> javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(Ab stractUnmarshallerImpl.java:
> 315) ~[na:1.6.0_24]

>         at
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.createUnmarshalEx ception(UnmarshallerImpl.java:
> 514) ~[jaxb-impl-2.1.13.jar:2.1.13]

>         at
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(Unmars hallerImpl.java:
> 215) ~[jaxb-impl-2.1.13.jar:2.1.13]

>         at
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(Unmarsh allerImpl.java:
> 184) ~[jaxb-impl-2.1.13.jar:2.1.13]

>         at
> javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshal lerImpl.java:
> 137) ~[na:1.6.0_24]

>         at
> javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshal lerImpl.java:
> 184) ~[na:1.6.0_24]

>         at
> sonia.scm.repository.AbstractHgHandler.getResultFromScript(AbstractHgHandle r.java:
> 339) ~[scm-hg-plugin-1.9.jar:na]

>         at
> sonia.scm.repository.HgRepositoryBrowser.getResult(HgRepositoryBrowser.java :
> 134) [scm-hg-plugin-1.9.jar:na]
>         at

> sonia.scm.repository.RepositoryBrowserUtil.getResult(RepositoryBrowserUtil. java:
> 160) [scm-core-1.9.jar:na]

>         at
> sonia.scm.repository.RepositoryBrowserUtil.getResult(RepositoryBrowserUtil. java:
> 121) [scm-core-1.9.jar:na]

>         at
> sonia.scm.api.rest.resources.RepositoryResource.getBrowserResult(Repository Resource.java:
> 377) [classes/:na]

>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:
> 1.6.0_24]
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
> 39) ~[na:1.6.0_24]
>         at

> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImp l.java:
> 25) ~[na:1.6.0_24]

>         at java.lang.reflect.Method.invoke(Method.java:597) ~[na:1.6.0_24]
>         at com.sun.jersey.spi.container.JavaMethodInvokerFactory
> $1.invoke(JavaMethodInvokerFactory.java:60) [jersey-server-1.10.jar:
> 1.10]
>         at

> com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDisp atchProvider
> $ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:
> 205) [jersey-server-1.10.jar:1.10]

>         at
> com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatch er.dispatch(ResourceJavaMethodDispatcher.java:
> 75) [jersey-server-1.10.jar:1.10]

>         at
> com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.j ava:
> 288) [jersey-server-1.10.jar:1.10]

>         at
> com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPath Rule.java:
> 147) [jersey-server-1.10.jar:1.10]

>         at
> com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClass Rule.java:
> 108) [jersey-server-1.10.jar:1.10]

>         at
> com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPath Rule.java:
> 147) [jersey-server-1.10.jar:1.10]

>         at
> com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootRes ourceClassesRule.java:
> 84) [jersey-server-1.10.jar:1.10]

>         at
> com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(We bApplicationImpl.java:
> 1469) [jersey-server-1.10.jar:1.10]

>         at
> com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(We bApplicationImpl.java:
> 1400) [jersey-server-1.10.jar:1.10]

>         at
> com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(Web ApplicationImpl.java:
> 1349) [jersey-server-1.10.jar:1.10]

>         at
> com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(Web ApplicationImpl.java:


> 1339) [jersey-server-1.10.jar:1.10]
>         at
> com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java :
> 416) [jersey-bundle-1.10.jar:1.10]
>         at

> com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContai ner.java:
> 537) [jersey-bundle-1.10.jar:1.10]

>         at
> com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContai ner.java:


> 708) [jersey-bundle-1.10.jar:1.10]
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
> [servlet-api-2.5.jar:2.5]
>         at
> com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.jav a:
> 263) [guice-servlet-3.0.jar:na]
>         at
> com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:
> 178) [guice-servlet-3.0.jar:na]
>         at

> com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipe line.java:
> 91) [guice-servlet-3.0.jar:na]

>         at
> com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocat ion.java:

> 58) [guice-servlet-3.0.jar:na]
>         at sonia.scm.filter.SecurityFilter.doFilter(SecurityFilter.java:109)
> [classes/:na]
>         at sonia.scm.web.filter.HttpFilter.doFilter(HttpFilter.java:102) [scm-
> core-1.9.jar:na]
>         at
> com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
> 163) [guice-servlet-3.0.jar:na]
>         at
> com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocat ion.java:

> 58) [guice-servlet-3.0.jar:na]
>         at
> com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:
> 168) [guice-servlet-3.0.jar:na]
>         at

> com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocat ion.java:
> 58) [guice-servlet-3.0.jar:na]

>         at
> sonia.scm.web.filter.BasicAuthenticationFilter.doFilter(BasicAuthentication Filter.java:
> 143) [scm-core-1.9.jar:na]
>         at
> sonia.scm.web.security.ApiBasicAuthenticationFilter.doFilter(ApiBasicAuthen ticationFilter.java:

> com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocat ion.java:
> 58) [guice-servlet-3.0.jar:na]

>         at
> com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipel ine.java:

Sebastian Sdorra

unread,
Nov 30, 2011, 2:31:23 AM11/30/11
to scmma...@googlegroups.com

Bryan

unread,
Nov 30, 2011, 2:15:06 PM11/30/11
to scmmanager
Sebastian:

Sorry for the late response, have been busy this AM so I just got
around to testing the version you sent me.

Anyways, it does not seem to fix the issue. The log output appears
the same as in 1.9.

I have found a Mercurial extension that can edit summary fields so I
can remove the character, but one of them is a tag so I am not sure
what to do there nor have I had time to try the extension yet.

Thanks,
Bryan

On Nov 30, 2:31 am, Sebastian Sdorra <s.sdo...@gmail.com> wrote:
> Hi,

> I created a ticket for this bughttps://bitbucket.org/sdorra/scm-manager/issue/75/missing-escape-for-....

> ...
>
> read more »

Sebastian Sdorra

unread,
Dec 1, 2011, 2:37:50 AM12/1/11
to scmma...@googlegroups.com
Hi,
Please keep a copy from the original repository, because i have to fix
this issue in scm-manager. I've done some more escaping, have a look
at branch issue-75
(https://bitbucket.org/sdorra/scm-manager/changesets/tip/branch%28%22issue-75%22%29).

Could you please test this version
http://download.scm-manager.org/issues/75/scm-server-app-2011120101.zip.

Sebastian

2011/11/30 Bryan <br...@bryanbush.org>:

Bryan

unread,
Dec 2, 2011, 10:38:52 AM12/2/11
to scmmanager
Sebastian:

I get the same error from the latest build that you provided.

I've also discovered that attempting to browse past a certain point in
the "Commits repository" tab (opened by clicking on the "Commits" link
on the repository properties page) just stops and throws the same
error.

One of the invalid characters is in a tag field and one is in a
description field.

bb

On Dec 1, 2:37 am, Sebastian Sdorra <s.sdo...@gmail.com> wrote:
> Hi,

> Please keep a copy from the original repository, because i have to fix
> this issue in scm-manager. I've done some more escaping, have a look
> at branch issue-75

> (https://bitbucket.org/sdorra/scm-manager/changesets/tip/branch%28%22i...).
> Could you please test this versionhttp://download.scm-manager.org/issues/75/scm-server-app-2011120101.zip.

> ...
>
> read more »

Sebastian Sdorra

unread,
Dec 2, 2011, 10:48:22 AM12/2/11
to scmma...@googlegroups.com
Hi Bryan,
Could you please send me the output of the following command as attachment:
hg -v --debug log -r badrevision

Sebastian

2011/12/2 Bryan <br...@bryanbush.org>:

Bryan

unread,
Dec 2, 2011, 11:08:13 AM12/2/11
to scmmanager
Here's the output for the two revisions in question. 476 has is in
the tag field and 477 has it in the description field.

[scmmgr@mercurial video-proxy.experimental]$ hg -v --debug log -r 476
changeset: 476:7655f0eccc0359cdeca116974fd5ef16613629c7
tag: -m
tag: Able to proxy all formats now -- tested on Windows,
Linux, iPad, and Android
parent: 475:9fa501ed480035cbda8ab7ba12fa583f6366553f
parent: -1:0000000000000000000000000000000000000000
manifest: 476:377c8288ba7109241bc7bf27837f1fac33ed5917
user: David Parsons <dpar...@host.net>


date: Fri Aug 19 10:29:31 2011 -0400

files: src/main/java/com/aebn/application/proxy/
HttpClientFactory.java src/main/web/demo/flash-noproxy.html
extra: branch=default
description:
comment and html tweak


[scmmgr@mercurial video-proxy.experimental]$ hg -v --debug log -r 477
changeset: 477:0a74b639556d7d0902709be851813154f0ed0bf5
parent: 476:7655f0eccc0359cdeca116974fd5ef16613629c7
parent: -1:0000000000000000000000000000000000000000
manifest: 477:dc7fa568559369bfc9e3e9d4347431c29ae34674
user: David Parsons <dpar...@host.net>


date: Fri Aug 19 10:33:47 2011 -0400

files: .hgtags
extra: branch=default


description:
Added tag-m, Able to proxy all formats now -- tested on Windows,
Linux, iPad, and Android for changeset 7655f0eccc03

bb

> ...
>
> read more »

Sebastian Sdorra

unread,
Dec 2, 2011, 3:25:53 PM12/2/11
to scmma...@googlegroups.com
I could not reproduce this error. I've created a bundle with improved
and enabled trace logging:

http://download.scm-manager.org/issues/75/scm-server-app-2011120201.zip

Please goto your scm-home folder (mostly .scm in your home folder) and
rename the old logfile (logs/scm-manager). Start the new bundle and
reproduce the error. Please post the whole new log file as attachment.

Sebastian

2011/12/2 Bryan <br...@bryanbush.org>:

Bryan Bush

unread,
Dec 2, 2011, 3:44:36 PM12/2/11
to scmma...@googlegroups.com
Sebastian:

The requested log is attached.

Thanks,
Bryan
scm-manager.log

Bryan

unread,
Dec 2, 2011, 3:47:38 PM12/2/11
to scmmanager
The bad character is on line # 1084 of the log.

Bryan

>  scm-manager.log
> 86KViewDownload

Sebastian Sdorra

unread,
Dec 13, 2011, 2:27:00 AM12/13/11
to scmma...@googlegroups.com
Hi,
Sorry for the long delay, but i could not reproduce this problem. I
could not create a commit message with a wrong character in it. Have
you specified a encoding in one of your .hgrc files or have you set
the environment variable HGENCODING?

To fix the problem i have started the integration of hg4j
(http://code.google.com/p/hg4j/) earlier as planned. This should fix
the issue and bring much more performance to source and commit view,
but the integration would take a lot of time.

Sebastian

2011/12/2 Bryan <br...@bryanbush.org>:

Reply all
Reply to author
Forward
0 new messages