Description of problem: . Version-Release number of selected component (if applicable): Red Hat Network (RHN) Satellite 5.3.0 System architecture(s): Red Hat Enterprise Linux Server release 5.4 (Tikanga) on x86_64 How reproducible: Always - but only with customer's database dump so far. Also, it appears to be session-specific. Steps to Reproduce: 1. Import customer's satellite db dump onto 5.3.0 satellite then - 2. a) Click on "Channels" b) Click on "Manage Software Channels" c) Click on a cloned channel, such as one with name that ends in "WS 4u7 - PROD" d) Click on "Errata" e) Click on "Add" f) Click on "Add Red Hat Errata" g) In "Filter by Synopsis:" enter 'critical' and click "Go" button h) Select the first 25 and click the "Confirm" button i) Click the "Clone Errata" button j) Click "List / Remove" to verify that the errata are listed Actual results: Even though the confirmation said "Succesfully added 112 package(s) and scheduled 25 errata to be cloned to channel", List/Remove page still says there're no errata for this channel. Tomcat log /var/log/catalina.out shows - 2009-10-21 20:29:30,216 [RHN Message Dispatcher] ERROR com.redhat.rhn.common.messaging.ActionExecutor - com.redhat.rhn.common.hibernate.HibernateRuntimeException: HibernateException executing CachedStatement 2009-10-21 20:29:30,216 [RHN Message Dispatcher] ERROR com.redhat.rhn.manager.errata.cache.UpdateErrataCacheCommand - Problem updating cache for servers in channel for errata com.redhat.rhn.common.hibernate.HibernateRuntimeException: HibernateException executing CachedStatement at com.redhat.rhn.common.db.datasource.CachedStatement.execute(CachedStatement.java:469) at com.redhat.rhn.common.db.datasource.CachedStatement.execute(CachedStatement.java:431) at com.redhat.rhn.common.db.datasource.CachedStatement.execute(CachedStatement.java:335) at com.redhat.rhn.common.db.datasource.CachedStatement.executeUpdate(CachedStatement.java:274) at com.redhat.rhn.common.db.datasource.WriteMode.executeUpdate(WriteMode.java:51) at com.redhat.rhn.manager.errata.cache.ErrataCacheManager.insertCacheForChannelPackages(ErrataCacheManager.java:345) at com.redhat.rhn.manager.errata.cache.UpdateErrataCacheCommand.updateErrataCacheForErrata(UpdateErrataCacheCommand.java:155) at com.redhat.rhn.frontend.events.UpdateErrataCacheAction.doExecute(UpdateErrataCacheAction.java:72) at com.redhat.rhn.frontend.events.AbstractDatabaseAction.execute(AbstractDatabaseAction.java:45) at com.redhat.rhn.common.messaging.ActionExecutor.run(ActionExecutor.java:69) at com.redhat.rhn.common.messaging.MessageDispatcher.run(MessageDispatcher.java:58) at java.lang.Thread.run(Thread.java:735) Caused by: org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session: [com.redhat.rhn.domain.channel.ChannelFamily#1000] at org.hibernate.engine.StatefulPersistenceContext.checkUniqueness(StatefulPersistenceContext.java:590) at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performUpdate(DefaultSaveOrUpdateEventListener.java:284) at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsDetached(DefaultSaveOrUpdateEventListener.java:223) at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:89) at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70) at org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:507) at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:499) at org.hibernate.engine.CascadingAction$5.cascade(CascadingAction.java:218) at org.hibernate.engine.Cascade.cascadeToOne(Cascade.java:268) at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:219) at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:169) at org.hibernate.engine.Cascade.cascadeCollectionElements(Cascade.java:296) at org.hibernate.engine.Cascade.cascadeCollection(Cascade.java:242) at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:219) at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:169) at org.hibernate.engine.Cascade.cascade(Cascade.java:130) at org.hibernate.event.def.AbstractFlushingEventListener.cascadeOnFlush(AbstractFlushingEventListener.java:131) at org.hibernate.event.def.AbstractFlushingEventListener.prepareEntityFlushes(AbstractFlushingEventListener.java:122) at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:65) at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:26) at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000) at com.redhat.rhn.common.db.datasource.CachedStatement.stealConnection(CachedStatement.java:853) at com.redhat.rhn.common.db.datasource.CachedStatement.execute(CachedStatement.java:441) ... 11 more Expected results: Errata that's just been added show up under the channel, and no errors in tomcat logs. Additional info: Already being worked with Engineering.
Finally figured this out, committed in spacewalk master : 051fbedd31552ba0458215c65dd6dbbd8d2ad4b2
#VERIFIED Checked the fix with packages: spacewalk-java-0.5.44-50.el[4,5]sat spacewalk-java-lib-0.5.44-50.el[4,5]sat spacewalk-java-config-0.5.44-50.el[4,5]sat spacewalk-taskomatic-0.5.44-50.el[4,5]sat spacewalk-moon-0.5.23-29.el[4,5]sat spacewalk-grail-0.5.23-29.el[4,5]sat spacewalk-base-minimal-0.5.23-29.el[4,5]sat spacewalk-cypress-0.5.23-29.el[4,5]sat spacewalk-html-0.5.23-29.el[4,5]sat spacewalk-base-0.5.23-29.el[4,5]sat spacewalk-sniglets-0.5.23-29.el[4,5]sat spacewalk-pxt-0.5.23-29.el[4,5]sat Checked against satellite installed with rhel5 and rhel4 (platform: i386). Scenario described in issue's description is corrected now.
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/RHBA-2009-1597.html