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)
mass move to ON_QA
Don't QA! This one isn't actually ON_QA yet. Still ON_DEV.
Alright. Now its ON_QA (I hope)
testplan? do have an errata id that has no notes?
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
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.