Bug 846221

Summary: Scheduling a kickstart for a VHost could generate ISE
Product: Red Hat Satellite 5 Reporter: Dimitar Yordanov <dyordano>
Component: ProvisioningAssignee: Stephen Herr <sherr>
Status: CLOSED CURRENTRELEASE QA Contact: Lukas Pramuk <lpramuk>
Severity: medium Docs Contact:
Priority: medium    
Version: 550CC: cperry, lpramuk
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: spacewalk-java-1.7.54-92-sat Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-09-21 09:34:56 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 819081    

Description Dimitar Yordanov 2012-08-07 08:22:29 UTC
Description of problem:
 Scheduling a kickstart for a VHost could generate ISE

Version-Release number of selected component (if applicable):
Satellite 550

How reproducible:
100%

Steps to Reproduce:
1.Create two kickstarts
    - Virtualization type "KVM Virtualized Guest"
    - Virtualization type "None"
2. Register a system (VHost) with the following entitlemetns
    - Provisioning 
    - Virtualization
3. cobbler system list
    Empty in my case.
4. Set up a provisioining for VHost but cancel it.
  Systems -> VHost -> Provisioning -> Schedule Kickstart and Finish
  
5.   Cancel Kickstart -> Cancel Kickstart
6. cobbler system list
   vhost_via_proxy_080412-08-45-22:1

7. Shcedule VGuest provitoining on the VHost
   Systems -> VHost -> Virtualizatoin -> Provisioning -> Schedule Kickstart and Finish

8. Cancel Kickstart -> Cancel Kickstart

9. cobbler system list
   vhost_via_proxy_080412-08-45-22:1
   vhost_via_proxy_080412-08-45-22:1:test_1

10. Set up a provisioining for VHost 
    Systems -> VHost -> Provisioning -> Schedule Kickstart and Finish

Actual results:
ISE

Expected results:
Kickstart is scheduled

Additional info:
Workaround:
 cobbler system remove --name=vhost_via_proxy_080412-08-45-22:1
 cobbler system remove --name=vhost_via_proxy_080412-08-45-22:1:test_1


###  /var/log/tomcat*/catalina.out   ##########################################
Tue_Aug_07_2012_04_13_00
2012-08-07 04:13:07,523 [TP-Processor8] WARN  org.apache.struts.action.RequestProcessor - Unhandled Exception thrown: class java.lang.reflect.InvocationTargetException
2012-08-07 04:13:07,523 [TP-Processor8] ERROR com.redhat.rhn.frontend.servlets.SessionFilter - Error during transaction. Rolling back
javax.servlet.ServletException
	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:99)
	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:93)
	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:291)
	at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:775)
	at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:704)
	at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:897)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
	at java.lang.Thread.run(Thread.java:736)
Caused by: 
java.lang.reflect.InvocationTargetException
	at sun.reflect.GeneratedMethodAccessor1204.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
	at java.lang.reflect.Method.invoke(Method.java:611)
	at com.redhat.rhn.frontend.struts.wizard.WizardStep.invoke(WizardStep.java:116)
	at com.redhat.rhn.frontend.struts.wizard.RhnWizardAction.dispatch(RhnWizardAction.java:103)
	at com.redhat.rhn.frontend.struts.wizard.RhnWizardAction.execute(RhnWizardAction.java:89)
	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
	... 40 more
Caused by: 
org.cobbler.XmlRpcException: XmlRpcException calling cobbler.
	at org.cobbler.CobblerConnection.invokeMethod(CobblerConnection.java:120)
	at org.cobbler.CobblerConnection.invokeTokenMethod(CobblerConnection.java:150)
	at org.cobbler.SystemRecord.invokeModify(SystemRecord.java:167)
	at org.cobbler.CobblerObject.modify(CobblerObject.java:149)
	at org.cobbler.SystemRecord.setNetworkInterfaces(SystemRecord.java:377)
	at com.redhat.rhn.manager.kickstart.cobbler.CobblerSystemCreateCommand.processNetworkInterfaces(CobblerSystemCreateCommand.java:364)
	at com.redhat.rhn.manager.kickstart.cobbler.CobblerSystemCreateCommand.store(CobblerSystemCreateCommand.java:257)
	at com.redhat.rhn.manager.kickstart.KickstartScheduleCommand.store(KickstartScheduleCommand.java:613)
	at com.redhat.rhn.frontend.action.kickstart.ScheduleKickstartWizardAction.runThird(ScheduleKickstartWizardAction.java:589)
	... 47 more
Caused by: 
redstone.xmlrpc.XmlRpcFault: cobbler.cexceptions.CX:'MAC address duplicated: 00:21:5e:86:0d:70'
	at redstone.xmlrpc.XmlRpcClient.handleResponse(XmlRpcClient.java:443)
	at redstone.xmlrpc.XmlRpcClient.endCall(XmlRpcClient.java:376)
	at redstone.xmlrpc.XmlRpcClient.invoke(XmlRpcClient.java:165)
	at org.cobbler.CobblerConnection.invokeMethod(CobblerConnection.java:117)
	... 55 more
2012-08-07 04:13:07,568 [TP-Processor8] ERROR org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/rhn].[action] - Servlet.service() for servlet action threw exception
redstone.xmlrpc.XmlRpcFault: cobbler.cexceptions.CX:'MAC address duplicated: 00:21:5e:86:0d:70'
	at redstone.xmlrpc.XmlRpcClient.handleResponse(XmlRpcClient.java:443)
	at redstone.xmlrpc.XmlRpcClient.endCall(XmlRpcClient.java:376)
	at redstone.xmlrpc.XmlRpcClient.invoke(XmlRpcClient.java:165)
	at org.cobbler.CobblerConnection.invokeMethod(CobblerConnection.java:117)
	at org.cobbler.CobblerConnection.invokeTokenMethod(CobblerConnection.java:150)
	at org.cobbler.SystemRecord.invokeModify(SystemRecord.java:167)
	at org.cobbler.CobblerObject.modify(CobblerObject.java:149)
	at org.cobbler.SystemRecord.setNetworkInterfaces(SystemRecord.java:377)
	at com.redhat.rhn.manager.kickstart.cobbler.CobblerSystemCreateCommand.processNetworkInterfaces(CobblerSystemCreateCommand.java:364)
	at com.redhat.rhn.manager.kickstart.cobbler.CobblerSystemCreateCommand.store(CobblerSystemCreateCommand.java:257)
	at com.redhat.rhn.manager.kickstart.KickstartScheduleCommand.store(KickstartScheduleCommand.java:613)
	at com.redhat.rhn.frontend.action.kickstart.ScheduleKickstartWizardAction.runThird(ScheduleKickstartWizardAction.java:589)
	at sun.reflect.GeneratedMethodAccessor1204.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
	at java.lang.reflect.Method.invoke(Method.java:611)
	at com.redhat.rhn.frontend.struts.wizard.WizardStep.invoke(WizardStep.java:116)
	at com.redhat.rhn.frontend.struts.wizard.RhnWizardAction.dispatch(RhnWizardAction.java:103)
	at com.redhat.rhn.frontend.struts.wizard.RhnWizardAction.execute(RhnWizardAction.java:89)
	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:237)
	at com.redhat.rhn.frontend.struts.RhnRequestProcessor.process(RhnRequestProcessor.java:99)
	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:93)
	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:291)
	at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:775)
	at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:704)
	at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:897)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
	at java.lang.Thread.run(Thread.java:736)
Tue_Aug_07_2012_04_13_00

###  /var/log/cobbler/cobbler.log   ##########################################
Tue_Aug_07_2012_04_13_00
Tue Aug  7 04:13:06 2012 - INFO | REMOTE find_items(profile); criteria({'uid': 'MTM0NDA5MDcyNy41NDMwNDU5NTUuOTY5NDI'}); sort(None); user(?)
Tue Aug  7 04:13:06 2012 - INFO | find_items; ['profile']
Tue Aug  7 04:13:06 2012 - INFO | REMOTE find_items(profile); criteria({'uid': 'MTM0NDA5MDcyNy41NDMwNDU5NTUuOTY5NDI'}); sort(None); user(?)
Tue Aug  7 04:13:06 2012 - INFO | find_items; ['profile']
Tue Aug  7 04:13:07 2012 - INFO | REMOTE find_items(profile); criteria({'uid': 'MTM0NDA5MDcyNy41NDMwNDU5NTUuOTY5NDI'}); sort(None); user(?)
Tue Aug  7 04:13:07 2012 - INFO | find_items; ['profile']
Tue Aug  7 04:13:07 2012 - INFO | REMOTE find_items(profile); criteria({'uid': 'MTM0NDA5MDcyNy41NDMwNDU5NTUuOTY5NDI'}); sort(None); user(?)
Tue Aug  7 04:13:07 2012 - INFO | find_items; ['profile']
Tue Aug  7 04:13:07 2012 - INFO | REMOTE find_items(profile); criteria({'uid': 'MTM0NDA5MDcyNy41NDMwNDU5NTUuOTY5NDI'}); sort(None); user(?)
Tue Aug  7 04:13:07 2012 - INFO | find_items; ['profile']
Tue Aug  7 04:13:07 2012 - INFO | REMOTE get_item(profile,ks_test_el6:1:RHNSatelliteteam); user(?)
Tue Aug  7 04:13:07 2012 - DEBUG | get_item; ['profile', 'ks_test_el6:1:RHNSatelliteteam']
Tue Aug  7 04:13:07 2012 - INFO | REMOTE find_items(system); criteria({'uid': 'MTM0NDMyNzA0MS42ODUwMTIxMDYuNzg4MjU'}); sort(None); user(?)
Tue Aug  7 04:13:07 2012 - INFO | find_items; ['system']
Tue Aug  7 04:13:07 2012 - INFO | REMOTE version; user(?)
Tue Aug  7 04:13:07 2012 - DEBUG | get_item; ['system', 'vhost_via_proxy_080412-08-45-22:1:test_1']
Tue Aug  7 04:13:07 2012 - INFO | REMOTE modify_item(system); user(admin); object_id(system::vhost_via_proxy_080412-08-45-22:1:test_1); attribute(modify_interface)
Tue Aug  7 04:13:07 2012 - DEBUG | get_item; ['system', 'vhost_via_proxy_080412-08-45-22:1:test_1']
Tue Aug  7 04:13:07 2012 - DEBUG | authorize; ['admin', 'modify_system', <cobbler.item_system.System instance at 0x986f518>, 'modify_interface', True]
Tue Aug  7 04:13:07 2012 - DEBUG | REMOTE admin authorization result: True; user(?)
Tue Aug  7 04:13:07 2012 - INFO | find_items; ['system']
Tue Aug  7 04:13:07 2012 - INFO | Exception occured: cobbler.cexceptions.CX
Tue Aug  7 04:13:07 2012 - INFO | Exception value: 'MAC address duplicated: 00:21:5e:86:0d:70'
Tue Aug  7 04:13:07 2012 - INFO | Exception Info:
  File "/usr/lib/python2.4/site-packages/cobbler/remote.py", line 1758, in _dispatch
    return method_handle(*params)
   File "/usr/lib/python2.4/site-packages/cobbler/remote.py", line 765, in modify_system
    return self.modify_item("system",object_id,attribute,arg,token)
   File "/usr/lib/python2.4/site-packages/cobbler/remote.py", line 758, in modify_item
    return method(arg)
   File "/usr/lib/python2.4/site-packages/cobbler/item_system.py", line 579, in modify_interface
    if field == "macaddress"          : self.set_mac_address(value, interface)
   File "/usr/lib/python2.4/site-packages/cobbler/item_system.py", line 318, in set_mac_address
    raise CX("MAC address duplicated: %s" % address)

Tue_Aug_07_2012_04_13_00

Comment 7 Clifford Perry 2012-09-21 09:34:56 UTC
This issue is resolved with the release of RHN Satellite 5.5. 

As of September 20th 2012, RHN Satellite 5.5 has been generally available. 

Release Notes and other 5.5 documentation can be found here:

 https://access.redhat.com/knowledge/docs/Red_Hat_Network_Satellite/

The associated Errata for the 5.5 release are:

5.5 Satellite GA Errata
 - http://rhn.redhat.com/errata/RHEA-2012-1296.html

5.5 Upgrade Errata
 - http://rhn.redhat.com/errata/RHEA-2012-1298.html

5.5 RHN Proxy GA Errata
 - http://rhn.redhat.com/errata/RHEA-2012-1297.html

5.5 RHN Tools GA Errata
 - http://rhn.redhat.com/errata/RHEA-2012-1299.html

Regards,
Clifford
- Engineering Manager, Satellite