Created attachment 321518 [details] catalina.out Description of problem: * Satellite-5.3.0-RHEL5-re20081024.1 / s390x * registered rhel5 machine When adding a Virtualization / Virtualization platform entitlement to a registered system, I get ISE (full dump in attachment): [TP-Processor7] WARN org.apache.struts.action.RequestProcessor - Unhandled Exception thrown: class com.redhat.rhn.manager.system.IncompatibleArchException [TP-Processor7] ERROR com.redhat.rhn.frontend.servlets.SessionFilter - Error during transaction. Rolling back javax.servlet.ServletException: The server architecture (i686) is incompatible with the channel architecture (IA-32)
Still seeing this on the Satellite-5.3.0-RHEL5-re20081128.0-i386-embedded-oracle ISO. It's blocking any test case that depends on assigning virtualization to a system. ISE text: The following exception occurred while executing this request: POST /rhn/systems/details/Edit.do Date:12/10/08 4:36:32 PM EST Headers: host: fjs-0-01.rhndev.redhat.com user-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.2) Gecko/2008091816 Red Hat/3.0.2-3.el5 Firefox/3.0.2 accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 accept-language: en-us,en;q=0.5 accept-encoding: gzip,deflate accept-charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 300 connection: keep-alive referer: https://fjs-0-01.rhndev.redhat.com/rhn/systems/details/Edit.do?sid=1000010000 cookie: JSESSIONID=49A779CDEADE0802CC303DCF974EEA54; s_cc=true; rh_omni_tc=70160000000H4AjAAK; s_sq=redhatglobaltest%2Credhatqa%3D%2526pid%253Dhttps%25253A//rhn.webqa.redhat.com/rhn/software/channels/All.do%2526oid%253Dfunctiononclick%252528event%252529%25257B%252520%252520toggleRowVisibility%252528%252522id431%252522%252529%25253B%25257D%2526oidt%253D2%2526ot%253DA%26redhatstage%3D%2526pid%253Dhttps%25253A//rhn.stage.redhat.com/rhn/software/channels/All.do%2526oid%253Dfunctiononclick%252528event%252529%25257B%252520%252520toggleRowVisibility%252528%252522id431%252522%252529%25253B%25257D%2526oidt%253D2%2526ot%253DA; s_vi=[CS]v1|4925DB8500002C4F-A3A081A00004693[CE]; rh_sso=0|VryhiBFkftnHT9nBKHYb1xzYeqtclS4NIke; rh_user=jbrownin|Jeff|member; rh_shared_auth=8829cf798189ada21c1f5d82cd5c52ed1bdcd9b0aed0859d6db7448ca5c1b66fb5d2b0dde030f4b0f3917fb8b975485d; pxt-session-cookie=62x33ad5302963e49450d3ac3fe1ed529c6 content-type: application/x-www-form-urlencoded content-length: 410 Max-Forwards: 10 Request: Local Name = fjs-0-01.rhndev.redhat.com Server Name = fjs-0-01.rhndev.redhat.com Requested Session Id came from Cookie Requested Session Valid = true Session = org.apache.catalina.session.StandardSessionFacade@2c9c2c9c[session=StandardSession[49A779CDEADE0802CC303DCF974EEA54]] Protocol = https Request Locale = en_US Request Character Encoding = UTF-8 Attribute Names = rhnActiveLang, javax.servlet.jsp.jstl.fmt.timeZone.request, javax.servlet.request.key_size, __sitemesh__filterapplied, javax.servlet.request.ssl_session, javax.servlet.request.cipher_suite, org.apache.struts.action.MESSAGE, session, systemDetailsForm, org.apache.struts.action.mapping.instance, requestedUri, org.apache.struts.action.MODULE, Form Variables: rack: monitoring_entitled: on building: receive_notifications: on system_name: rlx-0-06.rhndev.redhat.com sid: 1000010000 state: base_entitlement: enterprise_entitled virtualization_host: on include_in_daily_summary: on country: description: Initial Registration Parameters: OS: redhat-release Release: 5Server CPU Arch: i686-redhat-linux submitted: true city: address2: address1: room: provisioning_entitled: on User Information: User admin (id 1, org_id 1) Exception: javax.servlet.ServletException: The server architecture (i686) is incompatible with the channel architecture (IA-32) at org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:535) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:433) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:237) at com.redhat.rhn.frontend.struts.RhnRequestProcessor.process(RhnRequestProcessor.java:82) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.AuthFilter.doFilter(AuthFilter.java:73) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:142) at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:58) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.LocalizedEnvironmentFilter.doFilter(LocalizedEnvironmentFilter.java:67) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.EnvironmentFilter.doFilter(EnvironmentFilter.java:108) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.SessionFilter.doFilter(SessionFilter.java:55) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:97) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703) at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685) at java.lang.Thread.run(Thread.java:735) Caused by: com.redhat.rhn.manager.system.IncompatibleArchException: The server architecture (i686) is incompatible with the channel architecture (IA-32) at com.redhat.rhn.manager.system.SystemManager.subscribeServerToChannel(SystemManager.java:1059) at com.redhat.rhn.manager.system.SystemManager.subscribeServerToChannel(SystemManager.java:1013) at com.redhat.rhn.manager.channel.ChannelManager.subscribeToChildChannelWithPackageName(ChannelManager.java:1294) at com.redhat.rhn.manager.system.SystemManager.setupSystemForVirtualization(SystemManager.java:1463) at com.redhat.rhn.manager.system.SystemManager.entitleServer(SystemManager.java:1404) at com.redhat.rhn.manager.system.SystemManager.entitleServer(SystemManager.java:1361) at com.redhat.rhn.frontend.action.systems.sdc.SystemDetailsEditAction.checkVirtEntitlements(SystemDetailsEditAction.java:256) at com.redhat.rhn.frontend.action.systems.sdc.SystemDetailsEditAction.processSubmission(SystemDetailsEditAction.java:202) at com.redhat.rhn.frontend.action.systems.sdc.SystemDetailsEditAction.execute(SystemDetailsEditAction.java:97) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) ... 40 more
Looks like this completely blocks subscribing to tools channel and hence any operation that needs tools channel (eg: econfig management). Note: I am able to give provisioning entitlement to the system, but not able to subscribe to tools channel. If I try to enable config management through config management menu, I get an ISE.
Created attachment 327547 [details] virt entitlement ise fails devel validation. I see the same symptoms mentioned in comment#1 on the validation build.. assigning virtualization entitlement to registered system causes an ISE. moving back to assigned.
While investigating, what I was seeing is that when we call ChannelArch.isCompatible(ServerArch) that was returning FALSE. Even though the ChannelArch was "IA-32" and the ServerArch was "i686". The database queries looked fine as i686 was a compatible arch for IA-32. What I don't understand is why it would return FALSE. The only thing I can guess is that the equals() method is getting busted by hibernate. But this code hasn't changed in quite a while so something else has changed in this area from Satellite 5.2.
Based on comment #4 above, it looks like the solution implemented for https://bugzilla.redhat.com/show_bug.cgi?id=477530 should also address this BZ. Refer to comment https://bugzilla.redhat.com/show_bug.cgi?id=477530#4 for details. I am no longer seeing this issue after applying the above fix.
Verified with spacewalk-java-0.5.4-1 & java-1.6.0-ibm-1.6.0.1-1jpp.3
Verified in stage -> RELEASE_PENDING. * added a Virtualization / Virtualization platform entitlement * no ISE
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHEA-2009-1434.html