Description of problem: When I create multiple Distribution Channel Mappings for a single channel, I receive an error (traceback at bottom) when I try to view that channel in the spacewalk interface. If I remove one of the mappings so that only one mapping remains the error goes away. Version-Release number of selected component (if applicable): 1.8 x86_64 installed on Scientific Linux 6.3 with a Postgres database How reproducible: 100% Steps to Reproduce: 1. Add new distribution channel mapping so that centos-release version 5.1 IA-32 is mapped to the centos5-i386 (or any other) channel. 2. Add a second mapping for centos-release version 5.2 IA-32 to the same channel as step 1. 3. Return to the main software channels list and attempt to view the channel that the mappings were created for Actual results: Error (traceback below) Expected results: View channel info Additional info: Error (traceback below) The following exception occurred while executing this request: GET /rhn/channels/ChannelDetail.do Date:1/17/13 9:27:06 AM EST Headers: host: spacewalk.domain.org connection: keep-alive user-agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11 accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 referer: https://spacewalk.domain.org/rhn/software/channels/All.do accept-encoding: gzip,deflate,sdch accept-language: en-US,en;q=0.8 accept-charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3 cookie: JSESSIONID=REMOVED; cookiecrisp="REMOVED"; pxt-session-cookie=REMOVED Request: Local Name = spacewalk.domain.org Server Name = spacewalk.domain.org Requested Session Id came from Cookie Requested Session Valid = true Session = org.apache.catalina.session.StandardSessionFacade@74c676b7[session=StandardSession[REMOVED]] Protocol = https Request Locale = en_US Request Character Encoding = UTF-8 Attribute Names = rhnActiveLang, channel_name, javax.servlet.jsp.jstl.fmt.timeZone.request, javax.servlet.request.key_size, channelDetailForm, globally, requestedUri, javax.servlet.request.ssl_session, org.apache.struts.action.MESSAGE, session, systems_subscribed, javax.servlet.request.cipher_suite, org.apache.struts.action.mapping.instance, channel, channel_last_modified, pack_size, org.apache.struts.action.MODULE, User Information: User testuser (id 2, org_id 1) Exception: javax.servlet.ServletException: com.redhat.rhn.common.hibernate.HibernateRuntimeException: Executing query DistChannelMap.findByChannel with params {channel=com.redhat.rhn.domain.channel.Channel@4e71047[id=323,label=scientific63-i386]} failed at org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:520) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:427) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228) at com.redhat.rhn.frontend.struts.RhnRequestProcessor.process(RhnRequestProcessor.java:99) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449) at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.redhat.rhn.frontend.servlets.AuthFilter.doFilter(AuthFilter.java:93) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129) at com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.redhat.rhn.frontend.servlets.LocalizedEnvironmentFilter.doFilter(LocalizedEnvironmentFilter.java:67) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.redhat.rhn.frontend.servlets.EnvironmentFilter.doFilter(EnvironmentFilter.java:108) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.redhat.rhn.frontend.servlets.SessionFilter.doFilter(SessionFilter.java:55) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.redhat.rhn.frontend.servlets.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:97) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:769) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:698) at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:891) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) at java.lang.Thread.run(Thread.java:679) Caused by: com.redhat.rhn.common.hibernate.HibernateRuntimeException: Executing query DistChannelMap.findByChannel with params {channel=com.redhat.rhn.domain.channel.Channel@4e71047[id=323,label=scientific63-i386]} failed at com.redhat.rhn.common.hibernate.HibernateFactory.lookupObjectByNamedQuery(HibernateFactory.java:188) at com.redhat.rhn.common.hibernate.HibernateFactory.lookupObjectByNamedQuery(HibernateFactory.java:158) at com.redhat.rhn.domain.channel.ChannelFactory.lookupDistChannelMap(ChannelFactory.java:902) at com.redhat.rhn.domain.channel.Channel.isChannelRepodataRequired(Channel.java:833) at com.redhat.rhn.frontend.action.channel.ChannelDetailsAction.execute(ChannelDetailsAction.java:90) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425) ... 40 more Caused by: org.hibernate.NonUniqueResultException: query did not return a unique result: 2 at org.hibernate.impl.AbstractQueryImpl.uniqueElement(AbstractQueryImpl.java:820) at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:811) at com.redhat.rhn.common.hibernate.HibernateFactory.lookupObjectByNamedQuery(HibernateFactory.java:182) ... 45 more
spacewalk.git: 525eb9b116a99815bf1437e50584500f660bdf85 09371cc6fbaed01f57428c0b1845a96824c55e60
Fix for this bug is present in Spacewalk 2.0, closing this bug as CURRENTRELEASE.