java/code/src/com/redhat/rhn/frontend/action/kickstart/RenderKickstartFileAction.java | 4 +++- java/code/src/com/redhat/rhn/frontend/strings/jsp/StringResource_en_US.xml | 7 +++++++ java/code/webapp/WEB-INF/struts-config.xml | 3 +++ testfile | 1 + 4 files changed, 14 insertions(+), 1 deletion(-)
New commits: commit a505461fc47ecac6cf2d0541b47cbe95f1791ab8 Merge: 5c717a3... 6db6757... Author: jesus m. rodriguez jesusr@redhat.com Date: Tue Mar 31 17:05:15 2009 -0400
Merge branch 'vader'
commit 6db6757c855d54234a256ec6d715562256ae70dc Author: jesus m. rodriguez jesusr@redhat.com Date: Tue Mar 31 17:03:43 2009 -0400
test commit
diff --git a/testfile b/testfile new file mode 100644 index 0000000..b8802fa --- /dev/null +++ b/testfile @@ -0,0 +1 @@ +just stop the whining
commit 540de1408e8bd35ea8c8baa8e040f4cbbc7bbe4d Author: Justin Sherrill jsherril@redhat.com Date: Tue Mar 31 16:11:31 2009 -0400
unit test fix
diff --git a/java/code/src/com/redhat/rhn/domain/errata/test/ErrataTest.java b/java/code/src/com/redhat/rhn/domain/errata/test/ErrataTest.java index 189343f..2d4c94a 100644 --- a/java/code/src/com/redhat/rhn/domain/errata/test/ErrataTest.java +++ b/java/code/src/com/redhat/rhn/domain/errata/test/ErrataTest.java @@ -225,25 +225,14 @@ public class ErrataTest extends RhnBaseTestCase {
assertEquals(1, e.getChannels().size());
- boolean matched = false; - Iterator i = e.getFiles().iterator(); - while (i.hasNext()) { - PublishedErrataFile f1 = (PublishedErrataFile) i.next(); - if (f1.getId().equals(ef.getId())) { - assertNotNull(f1.getChannels()); - assertTrue(f1.getChannels().size() > 0); - assertTrue(f1.getChannels().contains(c)); - matched = true; - } - } - assertTrue("didnt match the erratafile", matched); +
// Now test clearing it out e.clearChannels(); e = (Errata) TestUtils.saveAndReload(e); assertTrue(e.getChannels() == null || e.getChannels().size() == 0); - i = e.getFiles().iterator(); - matched = false; + Iterator i = e.getFiles().iterator(); + boolean matched = false; while (i.hasNext()) { PublishedErrataFile f1 = (PublishedErrataFile) i.next(); assertNotNull(f1.getChannels());
commit b57158c81011ed32c5a2caf3a88bfb882683c03a Author: Justin Sherrill jsherril@redhat.com Date: Tue Mar 31 15:07:09 2009 -0400
unit test fix
diff --git a/java/code/src/com/redhat/rhn/frontend/action/errata/test/CloneErrataActionTest.java b/java/code/src/com/redhat/rhn/frontend/action/errata/test/CloneErrataActionTest.java index bf78a46..1395d3b 100644 --- a/java/code/src/com/redhat/rhn/frontend/action/errata/test/CloneErrataActionTest.java +++ b/java/code/src/com/redhat/rhn/frontend/action/errata/test/CloneErrataActionTest.java @@ -35,7 +35,7 @@ public class CloneErrataActionTest extends RhnMockStrutsTestCase {
public void setUp() throws Exception { super.setUp(); - setRequestPathInfo("/errata/manage/CloneErrataSubmit"); + setRequestPathInfo("/errata/manage/CloneErrata"); user.getOrg().getEntitlements().add(OrgFactory.getEntitlementEnterprise()); user.getOrg().addRole(RoleFactory.CHANNEL_ADMIN); } @@ -50,7 +50,7 @@ public class CloneErrataActionTest extends RhnMockStrutsTestCase {
request.addParameter("dispatch", "Clone Errata"); actionPerform(); - verifyForwardPath("/errata/manage/CloneErrata.do"); + verifyForwardPath("/WEB-INF/pages/errata/cloneerrata.jsp"); verifyActionMessage("emptyselectionerror"); }
commit b7ec463e5e07c9ab72364a1e83734ab2235573ab Author: Justin Sherrill jsherril@redhat.com Date: Fri Mar 27 10:37:06 2009 -0400
490987 - fixed issue where errata files werent being refreshed, by removing the need for errata files
diff --git a/java/code/src/com/redhat/rhn/common/db/datasource/xml/Channel_queries.xml b/java/code/src/com/redhat/rhn/common/db/datasource/xml/Channel_queries.xml index f0d00b9..fb24cdc 100644 --- a/java/code/src/com/redhat/rhn/common/db/datasource/xml/Channel_queries.xml +++ b/java/code/src/com/redhat/rhn/common/db/datasource/xml/Channel_queries.xml @@ -1125,5 +1125,25 @@ GROUP BY C.id, C.name </query> </mode>
+<mode name="channel_errata_packages" class="com.redhat.rhn.frontend.dto.PackageDto"> + <query params="eid, cid"> + SELECT P.id, P.md5sum, + PN.name || '-' || PE.version + || '-' || PE.release || (CASE WHEN PE.epoch IS NULL THEN '' ELSE ':' || PE.epoch END) + || '-' || PA.label name + from rhnPackage P inner join + rhnChannelPackage CP on P.id = CP.package_id inner join + rhnErrataPackage EP on EP.package_id = CP.package_id inner join + rhnPackageName PN on P.name_id = PN.id inner join + rhnPackageEvr PE on P.evr_id = PE.id inner join + rhnPackageArch PA on P.package_arch_id = PA.id + where CP.channel_id = :cid + and EP.errata_id = :eid + ORDER by name + </query> +</mode> + + + </datasource_modes>
diff --git a/java/code/src/com/redhat/rhn/domain/errata/impl/PublishedErrata.java b/java/code/src/com/redhat/rhn/domain/errata/impl/PublishedErrata.java index 03f1ba9..bf087c4 100644 --- a/java/code/src/com/redhat/rhn/domain/errata/impl/PublishedErrata.java +++ b/java/code/src/com/redhat/rhn/domain/errata/impl/PublishedErrata.java @@ -16,7 +16,6 @@ package com.redhat.rhn.domain.errata.impl;
import com.redhat.rhn.domain.channel.Channel; import com.redhat.rhn.domain.errata.AbstractErrata; -import com.redhat.rhn.manager.errata.ErrataManager; import com.redhat.rhn.domain.errata.Cve;
import org.apache.log4j.Logger; @@ -32,7 +31,7 @@ public class PublishedErrata extends AbstractErrata {
private static Logger log = Logger.getLogger(PublishedErrata.class);
- private Set channels; + private Set channels = new HashSet(); private Set<Cve> cves = new HashSet<Cve>();
/** @@ -58,7 +57,6 @@ public class PublishedErrata extends AbstractErrata { this.channels = new HashSet(); } channels.add(channelIn); - ErrataManager.refreshErrataFiles(channelIn, this); }
/** diff --git a/java/code/src/com/redhat/rhn/frontend/action/errata/ErrataPackagesSetupAction.java b/java/code/src/com/redhat/rhn/frontend/action/errata/ErrataPackagesSetupAction.java index fc6c6b6..3253673 100644 --- a/java/code/src/com/redhat/rhn/frontend/action/errata/ErrataPackagesSetupAction.java +++ b/java/code/src/com/redhat/rhn/frontend/action/errata/ErrataPackagesSetupAction.java @@ -14,20 +14,23 @@ */ package com.redhat.rhn.frontend.action.errata;
-import com.redhat.rhn.common.db.datasource.DataResult; +import com.redhat.rhn.domain.channel.Channel; import com.redhat.rhn.domain.errata.Errata; import com.redhat.rhn.domain.user.User; -import com.redhat.rhn.frontend.dto.ErrataPackageFile; +import com.redhat.rhn.frontend.dto.ChannelOverview; import com.redhat.rhn.frontend.struts.RequestContext; import com.redhat.rhn.frontend.struts.RhnAction; import com.redhat.rhn.frontend.struts.StrutsDelegate; -import com.redhat.rhn.manager.errata.ErrataManager; +import com.redhat.rhn.manager.channel.ChannelManager; +import com.redhat.rhn.manager.user.UserManager;
import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping;
-import java.util.Iterator; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -48,17 +51,23 @@ public class ErrataPackagesSetupAction extends RhnAction {
User user = requestContext.getLoggedInUser(); Errata errata = requestContext.lookupErratum(); - DataResult files = ErrataManager.packages(errata.getId(), user);
- Iterator test = files.iterator(); - while (test.hasNext()) { //remove from filename everything we won't display - ErrataPackageFile next = (ErrataPackageFile)test.next(); - String filename = next.getFilename(); - next.setFilename(filename.substring(filename.lastIndexOf("/") + 1)); + List<ChannelOverview> chans = new ArrayList<ChannelOverview>(); + + for (Channel chan : errata.getChannels()) { + if (UserManager.verifyChannelSubscribable(user, chan)) { + ChannelOverview co = new ChannelOverview(); + co.setName(chan.getName()); + co.setId(chan.getId()); + co.setPackages(ChannelManager.listErrataPackages(chan, errata)); + chans.add(co); + } }
+ Collections.sort(chans); + request.setAttribute("errata", errata); - request.setAttribute("files", files); + request.setAttribute("channels", chans);
return strutsDelegate.forwardParams(mapping.findForward("default"), request.getParameterMap()); diff --git a/java/code/src/com/redhat/rhn/frontend/action/errata/PackagePushAction.java b/java/code/src/com/redhat/rhn/frontend/action/errata/PackagePushAction.java index 504e535..642cded 100644 --- a/java/code/src/com/redhat/rhn/frontend/action/errata/PackagePushAction.java +++ b/java/code/src/com/redhat/rhn/frontend/action/errata/PackagePushAction.java @@ -94,8 +94,6 @@ public class PackagePushAction extends RhnSetAction { } //publish them and the errata to the channel errata = ErrataFactory.publishToChannel(errata, c, user, filePackages); - //not sure what this is here for, but i'm scrared to remove it - ErrataManager.refreshErrataFiles(c, errata);
RhnSet targetChannels = RhnSetDecl.CHANNELS_FOR_ERRATA.get(user); targetChannels.removeElement(cid); diff --git a/java/code/src/com/redhat/rhn/frontend/action/errata/RemovePackagesAction.java b/java/code/src/com/redhat/rhn/frontend/action/errata/RemovePackagesAction.java index 4511656..e1de4bd 100644 --- a/java/code/src/com/redhat/rhn/frontend/action/errata/RemovePackagesAction.java +++ b/java/code/src/com/redhat/rhn/frontend/action/errata/RemovePackagesAction.java @@ -17,8 +17,6 @@ package com.redhat.rhn.frontend.action.errata; import com.redhat.rhn.common.db.datasource.DataResult; import com.redhat.rhn.domain.channel.Channel; import com.redhat.rhn.domain.errata.Errata; -import com.redhat.rhn.domain.errata.ErrataFactory; -import com.redhat.rhn.domain.errata.ErrataFile; import com.redhat.rhn.domain.rhnpackage.Package; import com.redhat.rhn.domain.rhnset.RhnSet; import com.redhat.rhn.domain.rhnset.RhnSetElement; @@ -92,23 +90,6 @@ public class RemovePackagesAction extends RhnSetAction { //removed from the errata. packagesRemoved++; } - - //We have to do this round about way of removing errata files - // otherwise we are modifying the set that we are working on - // I really *hate* errata files - List<ErrataFile> efsToRemove = new ArrayList<ErrataFile>(); - for (ErrataFile ef : errata.getFiles()) { - if (ef.getPackages().contains(pkg)) { - efsToRemove.add(ef); - } - } - for (ErrataFile ef : efsToRemove) { - errata.removeFile(ef.getId()); - ef.getPackages().remove(pkg); - if (ef.getPackages().isEmpty()) { - ErrataFactory.removeFile(ef); - } - } } //Save the errata ErrataManager.storeErrata(errata); diff --git a/java/code/src/com/redhat/rhn/frontend/action/errata/test/ErrataPackagesSetupActionTest.java b/java/code/src/com/redhat/rhn/frontend/action/errata/test/ErrataPackagesSetupActionTest.java index 6849b79..1d861b4 100644 --- a/java/code/src/com/redhat/rhn/frontend/action/errata/test/ErrataPackagesSetupActionTest.java +++ b/java/code/src/com/redhat/rhn/frontend/action/errata/test/ErrataPackagesSetupActionTest.java @@ -40,7 +40,7 @@ public class ErrataPackagesSetupActionTest extends RhnBaseTestCase { sah.executeAction();
assertNotNull(sah.getRequest().getAttribute("errata")); - assertNotNull(sah.getRequest().getAttribute("files")); + assertNotNull(sah.getRequest().getAttribute("channels"));
} } diff --git a/java/code/src/com/redhat/rhn/frontend/dto/ChannelOverview.java b/java/code/src/com/redhat/rhn/frontend/dto/ChannelOverview.java index 793185f..d0ce40b 100644 --- a/java/code/src/com/redhat/rhn/frontend/dto/ChannelOverview.java +++ b/java/code/src/com/redhat/rhn/frontend/dto/ChannelOverview.java @@ -16,6 +16,9 @@ package com.redhat.rhn.frontend.dto;
import org.apache.commons.lang.builder.ToStringBuilder;
+import java.util.ArrayList; +import java.util.List; + /** * ChannelOverview * @version $Rev$ @@ -31,6 +34,7 @@ public class ChannelOverview extends BaseDto implements Comparable { private String url; private Long relevantPackages; private Long originalId; + private List<PackageDto> packages = new ArrayList<PackageDto>();
/** @@ -225,4 +229,24 @@ public class ChannelOverview extends BaseDto implements Comparable { return hasSubscription; }
+ + + /** + * @return Returns the packages. + */ + public List<PackageDto> getPackages() { + return packages; + } + + + + /** + * @param packagesIn The packages to set. + */ + public void setPackages(List<PackageDto> packagesIn) { + this.packages = packagesIn; + } + + + } diff --git a/java/code/src/com/redhat/rhn/frontend/events/CloneErrataAction.java b/java/code/src/com/redhat/rhn/frontend/events/CloneErrataAction.java index f270ffc..9221b59 100644 --- a/java/code/src/com/redhat/rhn/frontend/events/CloneErrataAction.java +++ b/java/code/src/com/redhat/rhn/frontend/events/CloneErrataAction.java @@ -21,7 +21,6 @@ import com.redhat.rhn.domain.errata.Errata; import com.redhat.rhn.domain.errata.ErrataFactory; import com.redhat.rhn.domain.errata.impl.PublishedClonedErrata; import com.redhat.rhn.frontend.action.channel.manage.PublishErrataHelper; -import com.redhat.rhn.manager.errata.ErrataManager; import com.redhat.rhn.manager.errata.cache.ErrataCacheManager;
import org.apache.log4j.Logger; @@ -63,7 +62,6 @@ public class CloneErrataAction Errata published = PublishErrataHelper.cloneErrataFast(errata, msg.getUser().getOrg()); published.setChannels(channelSet); - ErrataManager.refreshErrataFiles(currChan, published);
} ErrataCacheManager.insertCacheForChannelErrata(cids, errata); diff --git a/java/code/src/com/redhat/rhn/manager/channel/ChannelManager.java b/java/code/src/com/redhat/rhn/manager/channel/ChannelManager.java index c4e2039..d573a1a 100644 --- a/java/code/src/com/redhat/rhn/manager/channel/ChannelManager.java +++ b/java/code/src/com/redhat/rhn/manager/channel/ChannelManager.java @@ -2404,6 +2404,20 @@ public class ChannelManager extends BaseManager { ErrataCacheManager.deleteCacheEntriesForChannelErrata(chan.getId(), ids); }
+ /** + * List packages that are contained in an errata and in a channel + * @param chan The channel + * @param errata the Errata + * @return A list of PackageDto that are in the channel and errata + */ + public static List<PackageDto> listErrataPackages(Channel chan, Errata errata) { + Map params = new HashMap(); + params.put("cid", chan.getId()); + params.put("eid", errata.getId());
+ SelectMode mode = ModeFactory.getMode( + "Channel_queries", "channel_errata_packages"); + return (List<PackageDto>) mode.execute(params); + }
} diff --git a/java/code/src/com/redhat/rhn/manager/channel/test/ChannelManagerTest.java b/java/code/src/com/redhat/rhn/manager/channel/test/ChannelManagerTest.java index 44aea87..4f52632 100644 --- a/java/code/src/com/redhat/rhn/manager/channel/test/ChannelManagerTest.java +++ b/java/code/src/com/redhat/rhn/manager/channel/test/ChannelManagerTest.java @@ -30,6 +30,8 @@ import com.redhat.rhn.domain.errata.ErrataFactory; import com.redhat.rhn.domain.errata.test.ErrataFactoryTest; import com.redhat.rhn.domain.org.Org; import com.redhat.rhn.domain.org.OrgFactory; +import com.redhat.rhn.domain.rhnpackage.Package; +import com.redhat.rhn.domain.rhnpackage.test.PackageTest; import com.redhat.rhn.domain.rhnset.RhnSet; import com.redhat.rhn.domain.role.RoleFactory; import com.redhat.rhn.domain.server.Server; @@ -40,6 +42,7 @@ import com.redhat.rhn.domain.user.User; import com.redhat.rhn.frontend.dto.ChannelOverview; import com.redhat.rhn.frontend.dto.ErrataOverview; import com.redhat.rhn.frontend.dto.EssentialChannelDto; +import com.redhat.rhn.frontend.dto.PackageDto; import com.redhat.rhn.frontend.dto.PackageOverview; import com.redhat.rhn.frontend.dto.SystemsPerChannelDto; import com.redhat.rhn.frontend.xmlrpc.NoSuchChannelException; @@ -713,4 +716,35 @@ public class ChannelManagerTest extends BaseTestCaseWithUser { c = ChannelManager.lookupByLabel(user.getOrg(), c.getLabel()); assertFalse(c.getErratas().contains(eids)); } + + public void testListErrataPackages() throws Exception { + + Channel c = ChannelFactoryTest.createBaseChannel(user); + Errata e = ErrataFactoryTest.createTestErrata(user.getOrg().getId()); + + Package bothP = PackageTest.createTestPackage(); + Package channelP = PackageTest.createTestPackage(); + Package errataP = PackageTest.createTestPackage(); + + + c.addPackage(bothP); + e.addPackage(bothP); + + c.addPackage(channelP); + e.addPackage(errataP); + + c.addErrata(e); + + c = (Channel) TestUtils.saveAndReload(c); + e = (Errata) TestUtils.saveAndReload(e); + + bothP = (Package) TestUtils.saveAndReload(bothP); + + + List<PackageDto> list = ChannelManager.listErrataPackages(c, e); + assertEquals(list.size(), 1); + assertEquals(list.get(0).getId(), (bothP.getId())); + + + } } diff --git a/java/code/src/com/redhat/rhn/manager/errata/ErrataManager.java b/java/code/src/com/redhat/rhn/manager/errata/ErrataManager.java index 2a48b22..6a0070c 100644 --- a/java/code/src/com/redhat/rhn/manager/errata/ErrataManager.java +++ b/java/code/src/com/redhat/rhn/manager/errata/ErrataManager.java @@ -31,8 +31,6 @@ import com.redhat.rhn.domain.errata.Errata; import com.redhat.rhn.domain.errata.ErrataFactory; import com.redhat.rhn.domain.errata.ErrataFile; import com.redhat.rhn.domain.errata.ErrataFileType; -import com.redhat.rhn.domain.errata.impl.PublishedErrataFile; -import com.redhat.rhn.domain.rhnpackage.Package; import com.redhat.rhn.domain.rhnset.RhnSet; import com.redhat.rhn.domain.rhnset.RhnSetFactory; import com.redhat.rhn.domain.role.RoleFactory; @@ -56,7 +54,6 @@ import java.util.ArrayList; import java.util.Collection; import java.util.Date; import java.util.HashMap; -import java.util.HashSet; import java.util.Iterator; import java.util.LinkedList; import java.util.List; @@ -913,51 +910,6 @@ public class ErrataManager extends BaseManager { public static List lookupByOriginal(User user, Errata original) { return ErrataFactory.lookupByOriginal(user.getOrg(), original); } - - /** - * Refresh the ErrataFiles associated with this Errata and the passed in Channel. - * @param channelIn to refresh errata files. - * @param errata of Errata you want to refresh. - */ - public static void refreshErrataFiles(Channel channelIn, Errata errata) { - if (log.isDebugEnabled()) { - log.debug("files? " + (errata.getFiles() != null) + " packages: " + - (channelIn.getPackages() != null)); - } - if (errata.getFiles() != null && channelIn.getPackages() != null) { - log.debug("This errata has files and the channel has packages."); - Set addedPackages = new HashSet(); - Iterator i = errata.getFiles().iterator(); - while (i.hasNext()) { - log.debug("loop 2."); - PublishedErrataFile ef = (PublishedErrataFile) i.next(); - if (log.isDebugEnabled()) { - log.debug("Working with ef: " + ef.getFileName() + - " id: " + ef.getId() + " cs: " + ef.getChecksum()); - } - if (ef.getPackages() != null) { - Iterator j = ef.getPackages().iterator(); - while (j.hasNext()) { - Package p = (Package) j.next(); - if (log.isDebugEnabled()) { - log.debug("Package: " + p.getPackageName().getName() + - " arch: " + p.getPackageArch().getLabel()); - log.debug("added packages: " + addedPackages); - } - if (channelIn.getPackages().contains(p) && - !addedPackages.contains(p)) { - if (log.isDebugEnabled()) { - log.debug("ChannelHasPackage, adding to ef"); - } - ef.addChannel(channelIn); - addedPackages.add(p); - } - } - } - } - } - - }
/** * Lookup packages that are associated with errata in the RhnSet "errata_list" diff --git a/java/code/webapp/WEB-INF/pages/errata/erratapackages.jsp b/java/code/webapp/WEB-INF/pages/errata/erratapackages.jsp index 69d9864..69b42b3 100644 --- a/java/code/webapp/WEB-INF/pages/errata/erratapackages.jsp +++ b/java/code/webapp/WEB-INF/pages/errata/erratapackages.jsp @@ -14,31 +14,28 @@
<h2><bean:message key="packagelist.jsp.header.packages"/></h2>
- <c:if test="${empty files}"> - <div class="page-summary"> - <bean:message key="details.jsp.none"/> - </div> - </c:if>
- <c:forEach items="${files}" var="current"> + + <c:forEach items="${channels}" var="current"> <div class="page-summary"> + <b><c:out value="${current.name}"/> </b> + <br/>
- <c:if test="${previousChannel != current.channelName}"> - <br/><b>${current.channelName}:</b> <br/> - </c:if> - - <tt>${current.md5sum}</tt> - - <c:if test="${not empty current.packageId}"> - <a href="/rhn/software/packages/Details.do?pid=${current.packageId}">${current.filename}</a> - </c:if> - <c:if test="${empty current.packageId}"> - ${current.filename} - </c:if> - <br/> + <c:if test="${empty current.packages}"> + <div class="page-summary"> + <bean:message key="details.jsp.none"/> + </div> + </c:if>
+ <c:forEach items="${current.packages}" var="pack"> + <tt>${pack.md5sum}</tt> + <a href="/rhn/software/packages/Details.do?pid=${pack.id}"> + <c:out value="${pack.name}"/> + </a> + <br/> + </c:forEach> + <br/> </div> - <c:set var="previousChannel" value="${current.channelName}" /> </c:forEach> </body> </html>
commit 27584de051ab77765c930be917917ae8655d857a Author: Justin Sherrill jsherril@redhat.com Date: Tue Mar 31 14:14:25 2009 -0400
adding missing index for errata cache\
between spacewalk 0.4 and 0.5 an index was added to the upgrade sql scripts but was mistakenly left out of the base schema. This commit puts it in the base, and adds it to the 0.5 -> 0.6 upgrade scripts.
diff --git a/schema/spacewalk/rhnsat/tables/rhnServerNeededCache_indexes.sql b/schema/spacewalk/rhnsat/tables/rhnServerNeededCache_indexes.sql index be40c5f..2776ce8 100644 --- a/schema/spacewalk/rhnsat/tables/rhnServerNeededCache_indexes.sql +++ b/schema/spacewalk/rhnsat/tables/rhnServerNeededCache_indexes.sql @@ -31,3 +31,8 @@ create index rhn_snc_eid_idx tablespace [[128m_tbs]] nologging;
+create index rhn_snc_speid_idx + on rhnServerNeededCache(server_id, package_id, errata_id) + parallel + tablespace [[128m_tbs]] + nologging; diff --git a/schema/spacewalk/upgrade/spacewalk-schema-0.5-to-spacewalk-schema-0.6/100-rhnServerNeededCache_indexes.sql b/schema/spacewalk/upgrade/spacewalk-schema-0.5-to-spacewalk-schema-0.6/100-rhnServerNeededCache_indexes.sql new file mode 100644 index 0000000..e46acff --- /dev/null +++ b/schema/spacewalk/upgrade/spacewalk-schema-0.5-to-spacewalk-schema-0.6/100-rhnServerNeededCache_indexes.sql @@ -0,0 +1,5 @@ +create index rhn_snc_speid_idx + on rhnServerNeededCache(server_id, package_id, errata_id) + parallel + tablespace [[128m_tbs]] + nologging;
commit 53366661765ffef5a4edf3e24dbd8766066167f0 Author: Justin Sherrill jsherril@redhat.com Date: Tue Mar 31 16:44:23 2009 -0400
458838 - changing kickstart download 404s to have a descriptive message
diff --git a/java/code/src/com/redhat/rhn/frontend/action/kickstart/RenderKickstartFileAction.java b/java/code/src/com/redhat/rhn/frontend/action/kickstart/RenderKickstartFileAction.java index f314659..9f50bc5 100644 --- a/java/code/src/com/redhat/rhn/frontend/action/kickstart/RenderKickstartFileAction.java +++ b/java/code/src/com/redhat/rhn/frontend/action/kickstart/RenderKickstartFileAction.java @@ -15,6 +15,7 @@ package com.redhat.rhn.frontend.action.kickstart;
import com.redhat.rhn.domain.kickstart.KickstartData; +import com.redhat.rhn.frontend.xmlrpc.NoSuchKickstartException; import com.redhat.rhn.manager.kickstart.KickstartManager;
import org.apache.log4j.Logger; @@ -66,7 +67,8 @@ public class RenderKickstartFileAction extends Action { log.error("No kickstart filecontents found for: " + url + " params: " + params + " ksdata: " + ksdata); // send 404 to the user since we don't have a kickstart profile match - response.sendError(HttpServletResponse.SC_NOT_FOUND); + //response.sendError(HttpServletResponse.SC_NOT_FOUND); + throw new NoSuchKickstartException(); } if (log.isDebugEnabled()) { log.debug("fileContents: " + fileContents); diff --git a/java/code/src/com/redhat/rhn/frontend/strings/jsp/StringResource_en_US.xml b/java/code/src/com/redhat/rhn/frontend/strings/jsp/StringResource_en_US.xml index a661dfe..6d00c09 100644 --- a/java/code/src/com/redhat/rhn/frontend/strings/jsp/StringResource_en_US.xml +++ b/java/code/src/com/redhat/rhn/frontend/strings/jsp/StringResource_en_US.xml @@ -21035,6 +21035,13 @@ given channel.</source> <context context-type="sourcefile">/rhn/systems/details/ErrataList.do</context> </context-group> </trans-unit> + <trans-unit id="unknown.kickstart"> + <source>Kickstart Not Found</source> + </trans-unit> + <trans-unit id="unknown.kickstart.message"> + <source>The requested kickstart file could not be found. + If you are requesting an organizational default kickstart, ensure that a kickstart has been selected as the "Organization Default".</source> + </trans-unit>
</body> </file> diff --git a/java/code/webapp/WEB-INF/struts-config.xml b/java/code/webapp/WEB-INF/struts-config.xml index 243e45d..2caf809 100644 --- a/java/code/webapp/WEB-INF/struts-config.xml +++ b/java/code/webapp/WEB-INF/struts-config.xml @@ -995,6 +995,9 @@ <exception type="com.redhat.rhn.frontend.xmlrpc.NoSuchPackageException" path="/WEB-INF/pages/common/errors/nosuchpkg.jsp" key="date" handler="com.redhat.rhn.common.errors.NoSuchPackageExceptionHandler"/> + <exception type="com.redhat.rhn.frontend.xmlrpc.NoSuchKickstartException" + path="/WEB-INF/pages/common/errors/nosuchkickstart.jsp" key="date" + handler="com.redhat.rhn.common.errors.NoSuchKickstartExceptionHandler"/> </global-exceptions>
<!--
commit ada539ca65d7533e9e90bb55e36452ff58f230cc Author: Partha Aji paji@redhat.com Date: Tue Mar 31 14:05:45 2009 -0400
removed jasper5* from run time dependencies and made them build time instead. Tomcat 5.5 doesn;t know how to deal with the arcane versions of the these files provided in ivy.xml
diff --git a/java/buildconf/build-props.xml b/java/buildconf/build-props.xml index 8270027..9e29092 100644 --- a/java/buildconf/build-props.xml +++ b/java/buildconf/build-props.xml @@ -53,7 +53,7 @@ value="bcel cglib commons-beanutils commons-cli commons-codec commons-collections commons-configuration commons-digester commons-discovery commons-el commons-lang commons-logging commons-validator hibernate3 - mailapi smtp jasper5-compiler jasper5-runtime jdom jpam + mailapi smtp jdom jpam jspapi log4j oro redstone-xmlrpc-client redstone-xmlrpc servletapi5 struts bcprov bcpg jcommon stringtree-json jfreechart taglibs-core logdriver quartz @@ -66,7 +66,7 @@
<property name="build.jar.dependencies" value="ant ant-junit ant-contrib antlr - ${common.jar.dependencies} tanukiwrapper + ${common.jar.dependencies} tanukiwrapper jasper5-compiler jasper5-runtime concurrent" />
<property name="run.jar.dependencies"
spacewalk-commits@lists.fedorahosted.org