Bug 157852 - No notes in Errata Action yields exception in ActionDetails.do
Summary: No notes in Errata Action yields exception in ActionDetails.do
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Network
Classification: Retired
Component: RHN/R&D
Version: RHN Devel
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Ken Ganong
QA Contact: Michael Bowman
URL: /rhn/schedule/ActionDetails.do
Whiteboard:
Depends On:
Blocks: 147875
TreeView+ depends on / blocked
 
Reported: 2005-05-16 14:34 UTC by Ken Ganong
Modified: 2007-04-18 17:25 UTC (History)
1 user (show)

Fixed In Version: RHN 4.0.0
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2005-09-01 02:48:17 UTC
Embargoed:


Attachments (Terms of Use)

Description Ken Ganong 2005-05-16 14:34:49 UTC
Errata Action Formatter incorrectly dealt with empty notes.

The following exception occured while executing this request:
GET /rhn/schedule/ActionDetails.do

Date:
5/11/05 3:15:42 PM EDT

Headers:
accept:
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
accept-charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
accept-encoding: gzip,deflate
accept-language: en-us,en;q=0.5
connection: close
cookie: JSESSIONID=273D22DD3A78649363D9D5767673FED2;
rh_auth_token=567785:1115838937x4092c33daf2448f2d83d0d687b22c8d1;
pxt-session-cookie=1503555932xe7a2c32c3c6738911ee08ebf345edb1d
host: rhn.webqa.redhat.com
referer: https://rhn.webqa.redhat.com/rhn/schedule/FailedActions.do
user-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.7) Gecko/20050416 Red
Hat/1.0.3-1.4.1 Firefox/1.0.3
via: 1.1 rhn.webqa.redhat.com
x-env-https: on
x-forwarded-for: 172.16.50.21
x-host: rhn.webqa.redhat.com
x-proxy-forwarded-for: 172.16.50.21
x-proxy-forwarded-host: rhn.webqa.redhat.com
x-proxy-forwarded-server: rhn.webqa.redhat.com
x-replace-content-active: 1
x-server-hostname: rhn.webqa.redhat.com
content-length: 0

Request:
com.redhat.rhn.frontend.servlets.RhnHttpServletRequest@61e6737e

User Information:
User LethalLemur (id 567785, org_id 1197809)

Exception:
java.lang.ArrayIndexOutOfBoundsException: 0
 
com.redhat.rhn.domain.action.errata.ErrataActionFormatter.getNotesBody(ErrataActionFormatter.java:43)
  com.redhat.rhn.domain.action.ActionFormatter.getNotes(ActionFormatter.java:97)
 
com.redhat.rhn.frontend.action.schedule.ActionDetailsSetupAction.execute(ActionDetailsSetupAction.java:46)
 
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
  org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
 
com.redhat.rhn.frontend.struts.RhnRequestProcessor.process(RhnRequestProcessor.java:48)
  org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
  org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
  javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
  javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
  com.redhat.rhn.frontend.servlets.AuthFilter.doFilter(AuthFilter.java:118)
 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
  com.redhat.rhn.frontend.servlets.ContextFilter.doFilter(ContextFilter.java:87)
 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
  com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:142)
  com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:58)
 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
  com.redhat.rhn.frontend.servlets.SessionFilter.doFilter(SessionFilter.java:41)
 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
 
com.redhat.rhn.frontend.servlets.EnvironmentFilter.doFilter(EnvironmentFilter.java:69)
 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
 
com.redhat.rhn.frontend.servlets.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:97)
 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
  org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
 
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
  org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
  org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
  org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
  org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:535)
 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
  org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
  org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
  org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
  org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
  org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
  org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
  org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
  org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
  org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
  org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
  org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
  java.lang.Thread.run(Thread.java:568)

Comment 1 Todd Warner 2005-05-16 17:59:02 UTC
mass move to ON_QA

Comment 2 Ken Ganong 2005-05-16 20:24:41 UTC
Don't QA!  This one isn't actually ON_QA yet.  Still ON_DEV.

Comment 3 Ken Ganong 2005-05-17 14:43:28 UTC
Alright.  Now its ON_QA (I hope)

Comment 4 Vlady Zlatkin 2005-07-08 22:09:14 UTC
testplan?  do have an errata id that has no notes?

Comment 5 Ken Ganong 2005-07-11 15:39:01 UTC
Actually, it is not the Errata that must have no notes.  It is the Errata Action
that must have no notes.  The only way this can happen is if the Errata Action
also has no errata associated to it.  I'm not sure exactly how to reproduce
this, but people trying the 'Errata Update: RHBA-2004:539-10 - Updated guile
package' seems to be the most recent time this has happened.  Not suprisingly,
everywhere I've seen this action listed, systems have failed it.

Get an Errata Update Action with no errata associated with it (according to
database).
Go to the Action Details page.
Expected Results: Notes should say (none) and there should not be a 500 error.

Here are some queries that could be of some use.

To find all of the errata update actions in your org that have no errata
associated with them (note: action_type 5 is errata update)
select *
from rhnAction A
where A.action_type=5
and A.org_id=:myorg
and not exists(select AEU.errata_id from rhnActionErrataUpdate AEU where
AEU.action_id = A.id)

It might be useful for you to create an errata action and then delete the
association to an erratum.
delete from rhnActionErrataUpdate where action_id=:myaid

Comment 6 Michael Bowman 2005-08-01 14:09:34 UTC
Looks good on QA. I created a new errata update action, removed the association
between the errata update and the errata, and got (none) for the notes section
of the errata update action details.


Note You need to log in before you can comment on or make changes to this bug.