Bug 531091 - clone channels do not display all added erratas
Summary: clone channels do not display all added erratas
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Satellite 5
Classification: Red Hat
Component: WebUI
Version: 530
Hardware: All
OS: Linux
high
high
Target Milestone: ---
Assignee: Justin Sherrill
QA Contact: Garik Khachikyan
URL:
Whiteboard:
Depends On:
Blocks: sat531-blockers
TreeView+ depends on / blocked
 
Reported: 2009-10-26 20:51 UTC by Xixi
Modified: 2018-10-27 15:58 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-11-20 15:37:21 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2009:1597 0 normal SHIPPED_LIVE Red Hat Network Satellite bug fix update 2009-11-20 15:37:02 UTC

Description Xixi 2009-10-26 20:51:47 UTC
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.

Comment 2 Justin Sherrill 2009-10-30 18:25:58 UTC
Finally figured this out, committed in spacewalk master :  051fbedd31552ba0458215c65dd6dbbd8d2ad4b2

Comment 5 Garik Khachikyan 2009-11-19 08:28:26 UTC
#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.

Comment 7 errata-xmlrpc 2009-11-20 15:37:21 UTC
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


Note You need to log in before you can comment on or make changes to this bug.