On 03/13/2013 05:33 PM, Johannes Renner wrote: > attached is a patch that should take care that only kickstartable channels > are actually > returned by the getKickstartableChannels() method in the ChannelFactory class.
Argh, this fixes ConcurrentModificationException, sorry! -- SUSE LINUX Products GmbH, HRB 16746 (AG Nürnberg) GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer
>From acaadc6ee2a54f2e803f33ff5d401559b2e35359 Mon Sep 17 00:00:00 2001 From: Johannes Renner <jren...@suse.de> Date: Thu, 14 Mar 2013 17:52:15 +0100 Subject: [PATCH] Prevent from concurrent modification --- .../code/src/com/redhat/rhn/domain/channel/ChannelFactory.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java b/java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java index 5509f2b..f60cfb4 100644 --- a/java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java +++ b/java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java @@ -35,6 +35,7 @@ import org.hibernate.criterion.CriteriaSpecification; import org.hibernate.criterion.Projections; import org.hibernate.criterion.Restrictions; +import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.HashMap; @@ -631,6 +632,7 @@ public class ChannelFactory extends HibernateFactory { * @return List of Channel objects */ public static List<Channel> getKickstartableChannels(Org org) { + List<Channel> ret = new ArrayList<Channel>(); Map params = new HashMap(); params.put("org_id", org.getId()); List<Channel> channels = singleton.listObjectsByNamedQuery( @@ -639,11 +641,11 @@ public class ChannelFactory extends HibernateFactory { for (Channel c : channels) { List packages = ChannelManager.listLatestPackagesEqual(c.getId(), ConfigDefaults.DEFAULT_ANACONDA_PACKAGE_NAME); - if (packages.size() <= 0) { - channels.remove(c); + if (packages.size() > 0) { + ret.add(c); } } - return channels; + return ret; } /** -- 1.7.10.4
_______________________________________________ Spacewalk-devel mailing list Spacewalk-devel@redhat.com https://www.redhat.com/mailman/listinfo/spacewalk-devel