Modify

Opened 16 years ago

Closed 16 years ago

Last modified 14 years ago

#5355 closed defect (invalid)

HTTP 500 error when timeline clicked

Reported by: Andrew Fitzpatrick Owned by: roadrunner
Priority: normal Component: HudsonTracPlugin
Severity: major Keywords:
Cc: Trac Release: 0.11

Description

I have installed the Hudson plugin for track and configured to use my feed URLs etc, when I try to view the timeline I receive the following error:

Hudson Builds event provider (HudsonTracPlugin) failed:
HTTPError: HTTP Error 500: Internal Server Error

My Hudson instance is running within its bundled Winstone app server, howerver I have tried it with Jetty and receive exactly same result. In the app server window an error is thrown when I try to access the time line, this is as follows:

[webapp 2009/06/10 07:30:27] - Error while serving http://192.168.2.128:8080/job/HelloWorld/11//api/json
java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:176)
        at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:92)
        at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:53)
        at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:73)
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:486)
        at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:143)
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:486)
        at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:309)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:486)
        at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:179)
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:486)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:404)
        at org.kohsuke.stapler.Stapler.service(Stapler.java:117)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
        at winstone.ServletConfiguration.execute(ServletConfiguration.java:249)
        at winstone.RequestDispatcher.forward(RequestDispatcher.java:335)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378)
        at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:91)
        at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:83)
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
        at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
        at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
        at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:155)
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
        at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
        at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:244)
        at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: Failed to write user
        at org.kohsuke.stapler.export.Property.writeTo(Property.java:87)
        at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:142)
        at org.kohsuke.stapler.export.Property.writeValue(Property.java:171)
        at org.kohsuke.stapler.export.Property.writeValue(Property.java:127)
        at org.kohsuke.stapler.export.Property.writeValue(Property.java:97)
        at org.kohsuke.stapler.export.Property.writeTo(Property.java:81)
        at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:142)
        at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:139)
        at org.kohsuke.stapler.export.Property.writeValue(Property.java:171)
        at org.kohsuke.stapler.export.Property.writeValue(Property.java:97)
        at org.kohsuke.stapler.export.Property.writeTo(Property.java:81)
        at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:142)
        at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:139)
        at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:139)
        at org.kohsuke.stapler.export.Model.writeTo(Model.java:133)
        at org.kohsuke.stapler.ResponseImpl.serveExposedBean(ResponseImpl.java:155)
        at hudson.model.Api.doJson(Api.java:170)
        ... 37 more
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.kohsuke.stapler.export.MethodProperty.getValue(MethodProperty.java:43)
        at org.kohsuke.stapler.export.Property.writeTo(Property.java:81)
        ... 53 more
Caused by: java.lang.NullPointerException
        at hudson.scm.SubversionChangeLogSet$LogEntry.getUser(SubversionChangeLogSet.java:208)
        ... 59 more

[Winstone 2009/06/10 07:30:27] - Untrapped Error in Servlet
java.io.IOException: Failed to write user
        at org.kohsuke.stapler.export.Property.writeTo(Property.java:87)
        at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:142)
        at org.kohsuke.stapler.export.Property.writeValue(Property.java:171)
        at org.kohsuke.stapler.export.Property.writeValue(Property.java:127)
        at org.kohsuke.stapler.export.Property.writeValue(Property.java:97)
        at org.kohsuke.stapler.export.Property.writeTo(Property.java:81)
        at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:142)
        at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:139)
        at org.kohsuke.stapler.export.Property.writeValue(Property.java:171)
        at org.kohsuke.stapler.export.Property.writeValue(Property.java:97)
        at org.kohsuke.stapler.export.Property.writeTo(Property.java:81)
        at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:142)
        at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:139)
        at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:139)
        at org.kohsuke.stapler.export.Model.writeTo(Model.java:133)
        at org.kohsuke.stapler.ResponseImpl.serveExposedBean(ResponseImpl.java:155)
        at hudson.model.Api.doJson(Api.java:170)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:176)
        at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:92)
        at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:53)
        at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:73)
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:486)
        at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:143)
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:486)
        at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:309)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:486)
        at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:179)
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:486)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:404)
        at org.kohsuke.stapler.Stapler.service(Stapler.java:117)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
        at winstone.ServletConfiguration.execute(ServletConfiguration.java:249)
        at winstone.RequestDispatcher.forward(RequestDispatcher.java:335)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378)
        at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:91)
        at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:83)
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
        at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
        at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
        at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:155)
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
        at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
        at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:244)
        at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.kohsuke.stapler.export.MethodProperty.getValue(MethodProperty.java:43)
        at org.kohsuke.stapler.export.Property.writeTo(Property.java:81)
        ... 53 more
Caused by: java.lang.NullPointerException
        at hudson.scm.SubversionChangeLogSet$LogEntry.getUser(SubversionChangeLogSet.java:208)
        ... 59 more

javax.servlet.ServletException: Failed to write user
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:498)
        at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:143)
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:486)
        at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:309)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:486)
        at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:179)
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:486)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:404)
        at org.kohsuke.stapler.Stapler.service(Stapler.java:117)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
        at winstone.ServletConfiguration.execute(ServletConfiguration.java:249)
        at winstone.RequestDispatcher.forward(RequestDispatcher.java:335)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378)
        at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:91)
        at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:83)
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
        at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
        at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
        at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:155)
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
        at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
        at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:244)
        at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
        at java.lang.Thread.run(Unknown Source)

I have also turned on the debugging in trac to see if i can get some more log/pointers to the error, at the time when I try to access the Timeline I have the following error thrown:

2009-06-10 07:57:23,499 Trac[main] DEBUG: Dispatching <Request "GET u'/timeline'">
2009-06-10 07:57:23,499 Trac[session] DEBUG: Retrieving session for ID '5f166c23136c0c59a5850b23'
2009-06-10 07:57:23,529 Trac[chrome] DEBUG: Prepare chrome data for request
2009-06-10 07:57:23,749 Trac[web_ui] ERROR: Timeline event provider HudsonTracPlugin failed
Traceback (most recent call last):
  File "C:\Program Files\Python25\lib\site-packages\trac\timeline\web_ui.py", line 160, in process_request
    filters):
  File "build\bdist.win32\egg\HudsonTrac\HudsonTracPlugin.py", line 115, in get_timeline_events
    line = self.url_opener.open(url).readline()
  File "C:\Program Files\Python25\lib\urllib2.py", line 387, in open
    response = meth(req, response)
  File "C:\Program Files\Python25\lib\urllib2.py", line 498, in http_response
    'http', request, response, code, msg, hdrs)
  File "C:\Program Files\Python25\lib\urllib2.py", line 425, in error
    return self._call_chain(*args)
  File "C:\Program Files\Python25\lib\urllib2.py", line 360, in _call_chain
    result = func(*args)
  File "C:\Program Files\Python25\lib\urllib2.py", line 506, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 500: Internal Server Error
2009-06-10 07:57:23,796 Trac[main] WARNING: 500 Trac Error (<p class="message">Hudson Builds event provider (<tt>HudsonTracPlugin</tt>) failed:<br/>HTTPError: HTTP Error 500: Internal Server Error</p><p>You may want to see the other kind of events from the a href="/wiki/timeline?ticket=on&amp;changeset=on&amp;milestone=on&amp;wiki=on">Timeline</a></p>)

The system I have is as follows:

  • Trac 0.11.2.1
  • Hudson build 1.309
  • feedparser 4.1
  • hudonsontrac 0.10
  • Python 2.5.4
  • tracd 0.11.2.1

Attachments (0)

Change History (4)

comment:1 Changed 16 years ago by roadrunner

Can you view the rss feed directly? I.e. what happens when you point your browser the feed url you configured? I'm assuming you'll get the same error, i.e. this looks like a hudson configuration issue.

A quick google search indicates somebody else has seen this issue too: http://markmail.org/message/hbdup64gzwlqb4dn .

comment:2 Changed 16 years ago by roadrunner

Oh, I just realized this is happening while trying to retrieve the build descriptions rather than while retrieving the feed itself. It certainly looks like a bug in Hudson, but you could comment out the lines around line 115 of the plugin and set 'json' to {"description":None} .

comment:3 Changed 16 years ago by Andrew Fitzpatrick

Resolution: invalid
Status: newclosed

Thanks for the swift response.

I can access the feeds directly, i've been able to view them in Opera, I've also confirmed that feedparser is working correctly using the Python command line.

One thing I just tried was running my hudson instance on a seperate machine, when tracd and hudson are on seperate machines this appears to work fine and timeline shows the build history. The issue seems to be if tracd and hudson are being served from the same machine, and regardless of the appserver running Hudson. Agree that this is more likely a Hudson issue so I'll set this to resolved - invalid.

I'll try to comment out those lines and see if it makes a difference when both servers are on the same machine.

Thanks

comment:4 Changed 16 years ago by roadrunner

Btw., I just checked in a change (r6007) so you can now disable the retrieval of the build descriptions via a config option.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain roadrunner.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.