You can subscribe to this list here.
2007 |
Jan
|
Feb
|
Mar
(927) |
Apr
(419) |
May
(352) |
Jun
(431) |
Jul
(463) |
Aug
(345) |
Sep
(304) |
Oct
(596) |
Nov
(466) |
Dec
(414) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(348) |
Feb
(313) |
Mar
(665) |
Apr
(688) |
May
(434) |
Jun
(311) |
Jul
(540) |
Aug
(554) |
Sep
(467) |
Oct
(341) |
Nov
(365) |
Dec
(272) |
2009 |
Jan
(386) |
Feb
(293) |
Mar
(279) |
Apr
(239) |
May
(229) |
Jun
(199) |
Jul
(186) |
Aug
(111) |
Sep
(196) |
Oct
(146) |
Nov
(116) |
Dec
(140) |
2010 |
Jan
(170) |
Feb
(159) |
Mar
(151) |
Apr
(161) |
May
(90) |
Jun
(56) |
Jul
(28) |
Aug
(22) |
Sep
(5) |
Oct
|
Nov
(23) |
Dec
(12) |
2011 |
Jan
(8) |
Feb
(8) |
Mar
(22) |
Apr
(24) |
May
(4) |
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
2012 |
Jan
(5) |
Feb
(1) |
Mar
|
Apr
(1) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <bo...@hy...> - 2010-03-11 09:24:21
|
Author: bob Date: 2010-03-11 01:24:11 -0800 (Thu, 11 Mar 2010) New Revision: 14370 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14370 Modified: trunk/etc/version.properties Log: Release 4.3.0 build #1374 Modified: trunk/etc/version.properties =================================================================== --- trunk/etc/version.properties 2010-03-10 22:14:08 UTC (rev 14369) +++ trunk/etc/version.properties 2010-03-11 09:24:11 UTC (rev 14370) @@ -1,3 +1,3 @@ -#Wed Mar 10 00:24:48 PST 2010 +#Thu Mar 11 00:26:26 PST 2010 version=4.3.0 -build=1373 +build=1374 |
From: <rm...@hy...> - 2010-03-10 22:14:18
|
Author: rmorgan Date: 2010-03-10 14:14:08 -0800 (Wed, 10 Mar 2010) New Revision: 14369 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14369 Modified: branches/HQ_4_2_0_PATCH/etc/version.properties Log: Bump to 4.2.0.6 Modified: branches/HQ_4_2_0_PATCH/etc/version.properties =================================================================== --- branches/HQ_4_2_0_PATCH/etc/version.properties 2010-03-10 09:17:26 UTC (rev 14368) +++ branches/HQ_4_2_0_PATCH/etc/version.properties 2010-03-10 22:14:08 UTC (rev 14369) @@ -1,3 +1,3 @@ #Thu Feb 11 12:51:23 PST 2010 -version=4.2.0.5 +version=4.2.0.6 build=1281 |
From: <bo...@hy...> - 2010-03-10 09:17:34
|
Author: bob Date: 2010-03-10 01:17:26 -0800 (Wed, 10 Mar 2010) New Revision: 14368 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14368 Modified: trunk/etc/version.properties Log: Release 4.3.0 build #1373 Modified: trunk/etc/version.properties =================================================================== --- trunk/etc/version.properties 2010-03-10 01:21:44 UTC (rev 14367) +++ trunk/etc/version.properties 2010-03-10 09:17:26 UTC (rev 14368) @@ -1,3 +1,3 @@ -#Tue Mar 09 00:22:38 PST 2010 +#Wed Mar 10 00:24:48 PST 2010 version=4.3.0 -build=1372 +build=1373 |
From: <pn...@hy...> - 2010-03-10 01:21:51
|
Author: pnguyen Date: 2010-03-09 17:21:44 -0800 (Tue, 09 Mar 2010) New Revision: 14367 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14367 Modified: trunk/src/org/hyperic/hq/authz/server/session/ResourceGroupDAO.java Log: [HQ-1309] Use "join" instead of "join fetch" so that the roles are lazy loaded. Modified: trunk/src/org/hyperic/hq/authz/server/session/ResourceGroupDAO.java =================================================================== --- trunk/src/org/hyperic/hq/authz/server/session/ResourceGroupDAO.java 2010-03-10 01:02:45 UTC (rev 14366) +++ trunk/src/org/hyperic/hq/authz/server/session/ResourceGroupDAO.java 2010-03-10 01:21:44 UTC (rev 14367) @@ -332,7 +332,7 @@ public Collection findByRoleIdAndSystem_orderName(Integer roleId, boolean system, boolean asc) { - String sql = "select g from ResourceGroup g join fetch g.roles r " + + String sql = "select g from ResourceGroup g join g.roles r " + "where r.id = ? and g.system = ? " + "order by g.resource.sortName " + (asc ? "asc" : "desc"); return getSession().createQuery(sql) |
From: <dcr...@hy...> - 2010-03-10 01:02:53
|
Author: dcrutchf Date: 2010-03-09 17:02:45 -0800 (Tue, 09 Mar 2010) New Revision: 14366 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14366 Modified: trunk/web/resource/common/inventory/ChangeResourceOwnerForm.jsp Log: [HHQ-3602] - Resource owner change - UI flow doesn't display the list of available users Modified: trunk/web/resource/common/inventory/ChangeResourceOwnerForm.jsp =================================================================== --- trunk/web/resource/common/inventory/ChangeResourceOwnerForm.jsp 2010-03-09 22:51:01 UTC (rev 14365) +++ trunk/web/resource/common/inventory/ChangeResourceOwnerForm.jsp 2010-03-10 01:02:45 UTC (rev 14366) @@ -4,6 +4,7 @@ <%@ taglib uri="http://struts.apache.org/tags-html-el" prefix="html" %> <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> +<%@ taglib uri="/WEB-INF/tld/display.tld" prefix="display" %> <%-- NOTE: This copyright does *not* cover user programs that use HQ |
From: <no...@gi...> - 2010-03-10 00:23:52
|
Branch: refs/heads/hqapi-2.x Home: http://github.com/hyperic/hqapi Commit: 97d8d3f45c044efca2b277c01bc6882d74ef63f9 http://github.com/hyperic/hqapi/commit/97d8d3f45c044efca2b277c01bc6882d74ef63f9 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-09 (Tue, 09 Mar 2010) Changed paths: M ChangeLog M hqu/hqapi1/app/AlertdefinitionController.groovy M hqu/hqapi1/app/ResourceController.groovy M src/org/hyperic/hq/hqapi1/AlertDefinitionApi.java M src/org/hyperic/hq/hqapi1/ResourceApi.java M src/org/hyperic/hq/hqapi1/test/AlertDefinitionGetByResource_test.java M src/org/hyperic/hq/hqapi1/test/ResourceFind_test.java M src/org/hyperic/hq/hqapi1/test/WADLAlertDefinition_test.java M src/org/hyperic/hq/hqapi1/test/WADLMetric_test.java M src/org/hyperic/hq/hqapi1/test/WADLResource_test.java M src/org/hyperic/hq/hqapi1/tools/AlertDefinitionCommand.java M xsd/HQApi1.wadl Log Message: ----------- Add APIs for listing resources by description and finding alert definitions by resource. Commit: a94f905d02e24172cac0d8daef1cbb03ec8cebd3 http://github.com/hyperic/hqapi/commit/a94f905d02e24172cac0d8daef1cbb03ec8cebd3 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-09 (Tue, 09 Mar 2010) Changed paths: A src/org/hyperic/hq/hqapi1/test/AlertDefinitionGetByResources_test.java Log Message: ----------- Add test for AlertDefinitionApi.getAlertDefinitions(List<Resource>) |
From: <no...@gi...> - 2010-03-10 00:23:52
|
Branch: refs/heads/master Home: http://github.com/hyperic/hqapi Commit: 97d8d3f45c044efca2b277c01bc6882d74ef63f9 http://github.com/hyperic/hqapi/commit/97d8d3f45c044efca2b277c01bc6882d74ef63f9 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-09 (Tue, 09 Mar 2010) Changed paths: M ChangeLog M hqu/hqapi1/app/AlertdefinitionController.groovy M hqu/hqapi1/app/ResourceController.groovy M src/org/hyperic/hq/hqapi1/AlertDefinitionApi.java M src/org/hyperic/hq/hqapi1/ResourceApi.java M src/org/hyperic/hq/hqapi1/test/AlertDefinitionGetByResource_test.java M src/org/hyperic/hq/hqapi1/test/ResourceFind_test.java M src/org/hyperic/hq/hqapi1/test/WADLAlertDefinition_test.java M src/org/hyperic/hq/hqapi1/test/WADLMetric_test.java M src/org/hyperic/hq/hqapi1/test/WADLResource_test.java M src/org/hyperic/hq/hqapi1/tools/AlertDefinitionCommand.java M xsd/HQApi1.wadl Log Message: ----------- Add APIs for listing resources by description and finding alert definitions by resource. Commit: 260a477c113ab759271f95cbc76fbc0b0b0be410 http://github.com/hyperic/hqapi/commit/260a477c113ab759271f95cbc76fbc0b0b0be410 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-09 (Tue, 09 Mar 2010) Changed paths: M ChangeLog M hqu/hqapi1/app/AlertdefinitionController.groovy M hqu/hqapi1/app/ResourceController.groovy M src/org/hyperic/hq/hqapi1/AlertDefinitionApi.java M src/org/hyperic/hq/hqapi1/ResourceApi.java M src/org/hyperic/hq/hqapi1/test/AlertDefinitionGetByResource_test.java M src/org/hyperic/hq/hqapi1/test/ResourceFind_test.java M src/org/hyperic/hq/hqapi1/test/WADLAlertDefinition_test.java M src/org/hyperic/hq/hqapi1/test/WADLMetric_test.java M src/org/hyperic/hq/hqapi1/test/WADLResource_test.java M src/org/hyperic/hq/hqapi1/tools/AlertDefinitionCommand.java M xsd/HQApi1.wadl Log Message: ----------- Fix conflicts. Commit: a94f905d02e24172cac0d8daef1cbb03ec8cebd3 http://github.com/hyperic/hqapi/commit/a94f905d02e24172cac0d8daef1cbb03ec8cebd3 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-09 (Tue, 09 Mar 2010) Changed paths: A src/org/hyperic/hq/hqapi1/test/AlertDefinitionGetByResources_test.java Log Message: ----------- Add test for AlertDefinitionApi.getAlertDefinitions(List<Resource>) Commit: 98cbb581176f7364e81a5871fdf2a2d552978fcc http://github.com/hyperic/hqapi/commit/98cbb581176f7364e81a5871fdf2a2d552978fcc Author: Ryan Morgan <rm...@hy...> Date: 2010-03-09 (Tue, 09 Mar 2010) Changed paths: A src/org/hyperic/hq/hqapi1/test/AlertDefinitionGetByResources_test.java Log Message: ----------- Merge branch 'hqapi-2.x' |
From: <dcr...@hy...> - 2010-03-09 22:51:10
|
Author: dcrutchf Date: 2010-03-09 14:51:01 -0800 (Tue, 09 Mar 2010) New Revision: 14365 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14365 Modified: trunk/src/org/hyperic/hq/authz/server/session/AuthzSubjectManagerEJBImpl.java Log: [HHQ-3780] - Security, auth and permisions holes with users in view only role (including guest) Modified: trunk/src/org/hyperic/hq/authz/server/session/AuthzSubjectManagerEJBImpl.java =================================================================== --- trunk/src/org/hyperic/hq/authz/server/session/AuthzSubjectManagerEJBImpl.java 2010-03-09 22:12:41 UTC (rev 14364) +++ trunk/src/org/hyperic/hq/authz/server/session/AuthzSubjectManagerEJBImpl.java 2010-03-09 22:51:01 UTC (rev 14365) @@ -124,12 +124,8 @@ String phone, String sms, Boolean useHtml) throws PermissionException { - PermissionManager pm = PermissionManagerFactory.getInstance(); - if(!whoami.getId().equals(target.getId())) { - pm.check(whoami.getId(), getRootResourceType().getId(), - AuthzConstants.rootResourceId, - AuthzConstants.perm_viewSubject); + checkModifyUsers(whoami); } if (active != null && target.getActive() != active.booleanValue()) { @@ -206,6 +202,20 @@ AuthzConstants.subjectOpModifySubject); } + /** + * Check if a subject can modify users + * @ejb:interface-method + */ + public void checkCreateUsers(AuthzSubject caller) + throws PermissionException + { + PermissionManager pm = PermissionManagerFactory.getInstance(); + pm.check(caller.getId(), + getRootResourceType(), + AuthzConstants.rootResourceId, + AuthzConstants.subjectOpCreateSubject); + } + /** * Delete the specified subject. * |
From: <dcr...@hy...> - 2010-03-09 22:12:50
|
Author: dcrutchf Date: 2010-03-09 14:12:41 -0800 (Tue, 09 Mar 2010) New Revision: 14364 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14364 Modified: trunk/web/WEB-INF/jsp/login.jsp Log: UI tweak Modified: trunk/web/WEB-INF/jsp/login.jsp =================================================================== --- trunk/web/WEB-INF/jsp/login.jsp 2010-03-09 19:52:20 UTC (rev 14363) +++ trunk/web/WEB-INF/jsp/login.jsp 2010-03-09 22:12:41 UTC (rev 14364) @@ -101,10 +101,14 @@ <c:if test="${guestEnabled}"> dojo.connect(dojo.byId("guestLoginLink"), "onclick", function() { var username = dojo.byId("usernameInput"); - + var password = dojo.byId("passwordInput"); + username.value = "<c:out value="${guestUsername}" />"; - + document.forms["loginForm"]["submit"].click(); + + username.disabled = true; + password.disabled = true; }); </c:if> }); |
From: <sc...@hy...> - 2010-03-09 19:52:29
|
Author: scottmf Date: 2010-03-09 11:52:20 -0800 (Tue, 09 Mar 2010) New Revision: 14363 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14363 Modified: trunk/src/org/hyperic/hibernate/Util.java trunk/src/org/hyperic/hq/escalation/server/session/EscalationManagerEJBImpl.java trunk/src/org/hyperic/hq/escalation/server/session/EscalationRuntime.java trunk/src/org/hyperic/hq/events/server/session/AlertConditionsSatisfiedListener.java trunk/src/org/hyperic/hq/events/server/session/ClassicEscalatableCreator.java trunk/src/org/hyperic/hq/galerts/processor/EventListener.java trunk/src/org/hyperic/hq/zevents/BufferedListener.java Log: [HQ-1905] [HHQ-3783] [HHQ-3784] fixed deadlock bug while processing escalations Modified: trunk/src/org/hyperic/hibernate/Util.java =================================================================== --- trunk/src/org/hyperic/hibernate/Util.java 2010-03-09 18:47:14 UTC (rev 14362) +++ trunk/src/org/hyperic/hibernate/Util.java 2010-03-09 19:52:20 UTC (rev 14363) @@ -42,6 +42,7 @@ import javax.management.ObjectName; import javax.naming.InitialContext; import javax.naming.NamingException; +import javax.transaction.RollbackException; import net.sf.ehcache.Cache; import net.sf.ehcache.CacheManager; @@ -52,6 +53,7 @@ import org.hibernate.Hibernate; import org.hibernate.Interceptor; import org.hibernate.SessionFactory; +import org.hibernate.StaleStateException; import org.hibernate.cfg.Configuration; import org.hibernate.cfg.Environment; import org.hibernate.dialect.Dialect; @@ -411,4 +413,18 @@ } return healths; } + + public static boolean tranRolledBack(Throwable t) { + if (t == null) { + return false; + } + Throwable tmp = t; + do { + if (tmp instanceof StaleStateException || + tmp instanceof RollbackException) { + return true; + } + } while ((tmp = tmp.getCause()) != null); + return false; + } } Modified: trunk/src/org/hyperic/hq/escalation/server/session/EscalationManagerEJBImpl.java =================================================================== --- trunk/src/org/hyperic/hq/escalation/server/session/EscalationManagerEJBImpl.java 2010-03-09 18:47:14 UTC (rev 14362) +++ trunk/src/org/hyperic/hq/escalation/server/session/EscalationManagerEJBImpl.java 2010-03-09 19:52:20 UTC (rev 14363) @@ -545,19 +545,14 @@ try { EscalationAlertType type = s.getAlertType(); - // Escalation state change - AuthzSubject overlord = - AuthzSubjectManagerEJBImpl.getOne().getOverlordPojo(); - type.changeAlertState(esc, overlord, - EscalationStateChange.ESCALATED); - - ActionExecutionInfo execInfo = - new ActionExecutionInfo(esc.getShortReason(), - esc.getLongReason(), - esc.getAuxLogs()); - + // HHQ-3784 to avoid deadlocks use the this table order when updating/inserting: + // 1) EAM_ESCALATION_STATE, 2) EAM_ALERT, 3) EAM_ALERT_ACTION_LOG + AuthzSubject overlord = AuthzSubjectManagerEJBImpl.getOne().getOverlordPojo(); + ActionExecutionInfo execInfo = new ActionExecutionInfo( + esc.getShortReason(), esc.getLongReason(), esc.getAuxLogs()); String detail = action.executeAction(esc.getAlertInfo(), execInfo); + type.changeAlertState(esc, overlord, EscalationStateChange.ESCALATED); type.logActionDetails(esc, action, detail, null); } catch(Exception exc) { log.error("Unable to execute action [" + @@ -800,6 +795,7 @@ boolean suppressNotification) throws PermissionException { + final boolean debug = log.isDebugEnabled(); Integer alertId = esc.getAlertInfo().getId(); boolean acknowledged = !fixed; @@ -820,22 +816,24 @@ // HQ-1295: Does user have sufficient permissions? // ...check if user can fix/acknowledge this alert... + // HHQ-3784 to avoid deadlocks use the this table order when updating/inserting: + // 1) EAM_ESCALATION_STATE, 2) EAM_ALERT, 3) EAM_ALERT_ACTION_LOG SessionBase.canFixAcknowledgeAlerts(subject, esc.getDefinition().getDefinitionInfo()); if (fixed) { - if (moreInfo == null || moreInfo.trim().length() == 0) + if (moreInfo == null || moreInfo.trim().length() == 0) { moreInfo = "(Fixed by " + subject.getFullName() + ")"; - - log.debug(subject.getFullName() + " has fixed alertId=" + alertId); + } + if (debug) log.debug(subject.getFullName() + " has fixed alertId=" + alertId); + if (state != null) { + endEscalation(state); + } type.changeAlertState(esc, subject, EscalationStateChange.FIXED); type.logActionDetails(esc, null, moreInfo, subject); - if (state != null) - endEscalation(state); } else { if (moreInfo == null || moreInfo.trim().length() == 0) { moreInfo = ""; } - if (state.getAcknowledgedBy() != null) { log.warn(subject.getFullName() + " attempted to acknowledge "+ type + " alert=" + alertId + " but it was already "+ @@ -843,19 +841,14 @@ state.getAcknowledgedBy().getFullName()); return; } - log.debug(subject.getFullName() + " has acknowledged alertId=" + - alertId); - type.changeAlertState(esc, subject, - EscalationStateChange.ACKNOWLEDGED); - type.logActionDetails(esc, null, - subject.getFullName() + " acknowledged " + - "the alert" + moreInfo, subject); - + if (debug) log.debug(subject.getFullName() + " has acknowledged alertId=" + alertId); state.setAcknowledgedBy(subject); + type.changeAlertState(esc, subject, EscalationStateChange.ACKNOWLEDGED); + String msg = subject.getFullName() + " acknowledged " + "the alert" + moreInfo; + type.logActionDetails(esc, null, msg, subject); } - if (!suppressNotification - && AlertRegulator.getInstance().alertNotificationsAllowed()) { + if (!suppressNotification && AlertRegulator.getInstance().alertNotificationsAllowed()) { if (state != null) { sendNotifications(state, esc, subject, state.getEscalation().isNotifyAll(), fixed, Modified: trunk/src/org/hyperic/hq/escalation/server/session/EscalationRuntime.java =================================================================== --- trunk/src/org/hyperic/hq/escalation/server/session/EscalationRuntime.java 2010-03-09 18:47:14 UTC (rev 14362) +++ trunk/src/org/hyperic/hq/escalation/server/session/EscalationRuntime.java 2010-03-09 19:52:20 UTC (rev 14363) @@ -35,6 +35,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.hyperic.hibernate.Util; import org.hyperic.hq.application.HQApp; import org.hyperic.hq.application.TransactionListener; import org.hyperic.hq.escalation.shared.EscalationManagerLocal; @@ -104,7 +105,22 @@ } public void run() { - runEscalation(_stateId); + int maxRetries = 3; + for (int i=0; i<maxRetries; i++) { + try { + runEscalation(_stateId); + break; + } catch (Throwable e) { + if ((i+1) < maxRetries && Util.tranRolledBack(e)) { + String times = (maxRetries - i == 1) ? "time" : "times"; + _log.warn("Warning, exception occurred while running escalation. will retry " + + (maxRetries - (i+1)) + " more " + times + ". errorMsg: " + e); + continue; + } else { + _log.error("Exception occurred, runEscalation() will not be retried",e); + } + } + } } } Modified: trunk/src/org/hyperic/hq/events/server/session/AlertConditionsSatisfiedListener.java =================================================================== --- trunk/src/org/hyperic/hq/events/server/session/AlertConditionsSatisfiedListener.java 2010-03-09 18:47:14 UTC (rev 14362) +++ trunk/src/org/hyperic/hq/events/server/session/AlertConditionsSatisfiedListener.java 2010-03-09 19:52:20 UTC (rev 14363) @@ -3,6 +3,9 @@ import java.util.Iterator; import java.util.List; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.hyperic.hibernate.Util; import org.hyperic.hq.events.shared.AlertManagerLocal; import org.hyperic.hq.measurement.server.session.AlertConditionsSatisfiedZEvent; import org.hyperic.hq.zevents.ZeventListener; @@ -14,14 +17,37 @@ * */ public class AlertConditionsSatisfiedListener implements ZeventListener { + + private static final int MAX_RETRIES = 3; + private final Log _log = LogFactory.getLog(AlertConditionsSatisfiedListener.class); public void processEvents(List events) { AlertManagerLocal am = AlertManagerEJBImpl.getOne(); - for (Iterator i=events.iterator(); i.hasNext(); ) { - AlertConditionsSatisfiedZEvent z = (AlertConditionsSatisfiedZEvent)i.next(); - am.fireAlert(z); + for (Iterator it=events.iterator(); it.hasNext(); ) { + AlertConditionsSatisfiedZEvent z = (AlertConditionsSatisfiedZEvent)it.next(); + // HQ-1905 need to retry due to potential StaleStateExceptions + for (int ii=0; ii<MAX_RETRIES; ii++) { + try { + am.fireAlert(z); + break; + } catch (Throwable e) { + if ((ii+1) < MAX_RETRIES && Util.tranRolledBack(e)) { + String times = (MAX_RETRIES - ii == 1) ? "time" : "times"; + _log.warn("Warning, exception occurred while running fireAlert. will retry " + + (MAX_RETRIES - (ii+1)) + " more " + times + ". errorMsg: " + e); + continue; + } else { + _log.error("fireAlert threw an Exception, will not be retried",e); + break; + } + } + } } } + + public String toString() { + return "AlertConditionsSatisfiedListener"; + } } Modified: trunk/src/org/hyperic/hq/events/server/session/ClassicEscalatableCreator.java =================================================================== --- trunk/src/org/hyperic/hq/events/server/session/ClassicEscalatableCreator.java 2010-03-09 18:47:14 UTC (rev 14362) +++ trunk/src/org/hyperic/hq/events/server/session/ClassicEscalatableCreator.java 2010-03-09 19:52:20 UTC (rev 14363) @@ -33,6 +33,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.hyperic.hibernate.Util; import org.hyperic.hq.appdef.shared.AppdefEntityID; import org.hyperic.hq.application.HQApp; import org.hyperic.hq.application.TransactionListener; @@ -156,6 +157,10 @@ alertMan.logActionDetail(alert, act, detail, null); } catch(Exception e) { + // HQ-1905 want to recover cleanly from a rollback at the top level + if (Util.tranRolledBack(e)) { + throw new RuntimeException(e); + } // For any exception, just log it. We can't afford not // letting the other actions go un-processed. _log.warn("Error executing action [" + act + "]", e); @@ -163,20 +168,29 @@ } } - private void registerAlertFiredEvent(final Integer alertId, final AlertConditionsSatisfiedZEventPayload payload) { + private void registerAlertFiredEvent(final Integer alertId, + final AlertConditionsSatisfiedZEventPayload payload) { try { HQApp.getInstance().addTransactionListener(new TransactionListener() { public void afterCommit(boolean success) { if(success) { - messenger.publishMessage(EventConstants.EVENTS_TOPIC,new AlertFiredEvent(alertId, _def.getId(), new AppdefEntityID(_def.getResource()),_def.getName(),payload.getTimestamp(), - payload.getMessage())); + messenger.publishMessage( + EventConstants.EVENTS_TOPIC, + new AlertFiredEvent(alertId, _def.getId(), new AppdefEntityID(_def.getResource()), + _def.getName(),payload.getTimestamp(), payload.getMessage())); } } public void beforeCommit() { } }); } catch (Throwable t) { - _log.error("Error registering to send an AlertFiredEvent on transaction commit. The alert will be fired, but the event will not be sent. This could cause a future recovery alert not to fire.", t); + // HQ-1905 want to recover cleanly from a rollback at the top level + if (Util.tranRolledBack(t)) { + throw new RuntimeException(t); + } + _log.error("Error registering to send an AlertFiredEvent on transaction commit. " + + "The alert will be fired, but the event will not be sent. " + + "This could cause a future recovery alert not to fire.", t); } } Modified: trunk/src/org/hyperic/hq/galerts/processor/EventListener.java =================================================================== --- trunk/src/org/hyperic/hq/galerts/processor/EventListener.java 2010-03-09 18:47:14 UTC (rev 14362) +++ trunk/src/org/hyperic/hq/galerts/processor/EventListener.java 2010-03-09 19:52:20 UTC (rev 14363) @@ -27,19 +27,26 @@ import java.util.List; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.hyperic.hq.zevents.ZeventListener; class EventListener implements ZeventListener { private final GalertProcessor _aProc; + private final Log _log = LogFactory.getLog(EventListener.class); EventListener(GalertProcessor aProc) { _aProc = aProc; } public void processEvents(List events) { - _aProc.processEvents(events); + try { + _aProc.processEvents(events); + } catch (Throwable e) { + _log.error(e,e); + } } public String toString() { Modified: trunk/src/org/hyperic/hq/zevents/BufferedListener.java =================================================================== --- trunk/src/org/hyperic/hq/zevents/BufferedListener.java 2010-03-09 18:47:14 UTC (rev 14362) +++ trunk/src/org/hyperic/hq/zevents/BufferedListener.java 2010-03-09 19:52:20 UTC (rev 14363) @@ -26,6 +26,7 @@ package org.hyperic.hq.zevents; import java.util.List; +import java.util.concurrent.BlockingQueue; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; @@ -65,7 +66,15 @@ } public void processEvents(List events) { - execute(new BufferedEventRunnable(events, _target)); + try { + execute(new BufferedEventRunnable(events, _target)); + } catch (Throwable e) { + _log.error(e,e); + } + int size = getQueue().size(); + if (_log.isDebugEnabled() && size != 0 && (size % 100) == 0) { + _log.debug("obj=" + this.toString() + ", queue size=" + size); + } } public boolean equals(Object obj) { |
From: <sc...@hy...> - 2010-03-09 18:47:23
|
Author: scottmf Date: 2010-03-09 10:47:14 -0800 (Tue, 09 Mar 2010) New Revision: 14362 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14362 Modified: trunk/src/org/hyperic/hq/events/server/session/AlertManagerEJBImpl.java Log: add check for async delete Modified: trunk/src/org/hyperic/hq/events/server/session/AlertManagerEJBImpl.java =================================================================== --- trunk/src/org/hyperic/hq/events/server/session/AlertManagerEJBImpl.java 2010-03-09 18:39:54 UTC (rev 14361) +++ trunk/src/org/hyperic/hq/events/server/session/AlertManagerEJBImpl.java 2010-03-09 18:47:14 UTC (rev 14362) @@ -661,8 +661,11 @@ */ public String getShortReason(Alert alert) { AlertDefinition def = alert.getAlertDefinition(); - AppdefEntityID aeid = - new AppdefEntityID(def.getResource()); + Resource r = def.getResource(); + if (r == null || r.isInAsyncDeleteState()) { + return "alertid=" + alert.getId() + " is associated with an invalid or deleted resource"; + } + AppdefEntityID aeid = new AppdefEntityID(r); AppdefEntityValue aev = new AppdefEntityValue( aeid, AuthzSubjectManagerEJBImpl.getOne().getOverlordPojo()); |
From: <sc...@hy...> - 2010-03-09 18:40:03
|
Author: scottmf Date: 2010-03-09 10:39:54 -0800 (Tue, 09 Mar 2010) New Revision: 14361 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14361 Modified: trunk/src/org/hyperic/hq/bizapp/server/session/MeasurementBossEJBImpl.java Log: added null check Modified: trunk/src/org/hyperic/hq/bizapp/server/session/MeasurementBossEJBImpl.java =================================================================== --- trunk/src/org/hyperic/hq/bizapp/server/session/MeasurementBossEJBImpl.java 2010-03-09 17:51:18 UTC (rev 14360) +++ trunk/src/org/hyperic/hq/bizapp/server/session/MeasurementBossEJBImpl.java 2010-03-09 18:39:54 UTC (rev 14361) @@ -2963,6 +2963,9 @@ public double getAvailability(AuthzSubject subj, AppdefEntityID id) throws AppdefEntityNotFoundException, PermissionException { + if (id == null) { + return MeasurementConstants.AVAIL_UNKNOWN; + } final Map measCache = getMetricManager().getAvailMeasurements(Collections.singleton(id)); Map availCache = null; |
From: <gla...@hy...> - 2010-03-09 17:51:27
|
Author: glaullon Date: 2010-03-09 09:51:18 -0800 (Tue, 09 Mar 2010) New Revision: 14360 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14360 Modified: trunk/src/org/hyperic/hq/product/ServerDetector.java Log: [HQ-2007] Embedded ActiveMQ server is not being Autodiscovered when embedded in spring app running on tcserver (6.0.20.C) [HPD-50] Modified: trunk/src/org/hyperic/hq/product/ServerDetector.java =================================================================== --- trunk/src/org/hyperic/hq/product/ServerDetector.java 2010-03-09 17:43:44 UTC (rev 14359) +++ trunk/src/org/hyperic/hq/product/ServerDetector.java 2010-03-09 17:51:18 UTC (rev 14360) @@ -26,7 +26,9 @@ package org.hyperic.hq.product; import java.io.File; +import java.io.FileFilter; import java.io.FileInputStream; +import java.io.FilenameFilter; import java.io.IOException; import java.io.InputStream; @@ -40,6 +42,8 @@ import java.util.Map; import java.util.Properties; import java.util.Set; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; @@ -68,6 +72,7 @@ import org.hyperic.sigar.ptql.ProcessFinder; import org.w3c.dom.Document; import org.w3c.dom.Node; +import sun.security.krb5.internal.ccache.FileCCacheConstants; /** * Encapsulate the know-how to determine all kinds of @@ -447,6 +452,20 @@ } } + private File findVersionFile(File dir, String verFile) { + File res = null; + File[] files = dir.listFiles(new RegExprFilenameFilter(verFile)); + if (files.length == 0) { + File[] dirs = dir.listFiles(new DirFilter()); + for (int i = 0; ((i < dirs.length) && (res==null)); i++) { + res = findVersionFile(dirs[i], verFile); + } + } else { + res = files[0]; + } + return res; + } + /** * Test if server type version filters apply: * VERSION_FILE - Return true if given file exists within installpath @@ -460,23 +479,39 @@ String installPathMatch = getTypeProperty(INSTALLPATH_MATCH); String installPathNoMatch = getTypeProperty(INSTALLPATH_NOMATCH); - if (versionFile != null) { - File instPath = new File(installpath); - if (instPath.isFile() && !instPath.isDirectory()) { - instPath = instPath.getParentFile(); - } - File file = (instPath != null) ? new File(instPath, versionFile) : - new File(installpath, versionFile); - if (!file.exists()) { - String[] expanded = PluginLoader.expand(file); - if ((expanded == null) || (expanded.length == 0)) { - getLog().debug(file + " does not exist, skipping"); + if(versionFile.startsWith("**/")){ // recursive & regexpr + versionFile=versionFile.substring(3); + File f=findVersionFile(new File(installpath),versionFile); + if(f==null) + return false; + getLog().debug(VERSION_FILE + "=" + versionFile + " matches -> " + f); + Matcher m = Pattern.compile(versionFile).matcher(f.getAbsolutePath()); + m.find(); + if(m.groupCount()!=0){ // have version group + if(!getTypeInfo().getVersion().equals(m.group(1))){ + getLog().debug(installpath + " not a match for version " + getTypeInfo().getVersion() + ", skipping"); return false; } - else { - getLog().debug(VERSION_FILE + "=" + versionFile + - " matches -> " + expanded[0]); + } + }else{ + if (versionFile != null) { + File instPath = new File(installpath); + if (instPath.isFile() && !instPath.isDirectory()) { + instPath = instPath.getParentFile(); } + File file = (instPath != null) ? new File(instPath, versionFile) : + new File(installpath, versionFile); + if (!file.exists()) { + String[] expanded = PluginLoader.expand(file); + if ((expanded == null) || (expanded.length == 0)) { + getLog().debug(file + " does not exist, skipping"); + return false; + } + else { + getLog().debug(VERSION_FILE + "=" + versionFile + + " matches -> " + expanded[0]); + } + } } } @@ -1059,4 +1094,23 @@ return ((AutoinventoryPluginManager)getManager()). getServiceConfigs(type); } + + private class DirFilter implements FileFilter{ + public boolean accept(File file) { + return file.isDirectory(); + } + + } + + private class RegExprFilenameFilter implements FileFilter{ + Pattern pattern; + public RegExprFilenameFilter(String regexp){ + pattern=Pattern.compile(regexp); + } + + public boolean accept(File file) { + return pattern.matcher(file.getAbsolutePath()).find(); + } + + } } |
From: <gla...@hy...> - 2010-03-09 17:43:53
|
Author: glaullon Date: 2010-03-09 09:43:44 -0800 (Tue, 09 Mar 2010) New Revision: 14359 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14359 Modified: trunk/plugins/xml/activemq-plugin.xml trunk/src/org/hyperic/hq/product/jmx/MxServerDetector.java Log: [HQ-2007] Embedded ActiveMQ server is not being Autodiscovered when embedded in spring app running on tcserver (6.0.20.C) [HPD-50] Modified: trunk/plugins/xml/activemq-plugin.xml =================================================================== --- trunk/plugins/xml/activemq-plugin.xml 2010-03-09 09:17:03 UTC (rev 14358) +++ trunk/plugins/xml/activemq-plugin.xml 2010-03-09 17:43:44 UTC (rev 14359) @@ -247,9 +247,9 @@ value="var/activemq.log"/> <property name="VERSION_FILE" - value="lib/activemq-core-4.*.jar"/> + value="**/lib/.*activemq-core-4.\d*.*.jar"/> - <config include="jmx"> + <config> <option name="process.query" description="Process Query"/> </config> @@ -362,24 +362,44 @@ <server name="ActiveMQ" version="5.0" include="4.0"> + <property name="VERSION_FILE" + value="**/.*activemq-core-(5.\d*).*.jar"/> +</server> - <property name="VERSION_FILE" - value="lib/activemq-core-5.0.*.jar"/> - </server> - <server name="ActiveMQ" version="5.1" include="5.0"> + </server> - <property name="VERSION_FILE" - value="lib/activemq-core-5.1.*.jar"/> + <server name="ActiveMQ" + version="5.2" + include="5.1"> </server> <server name="ActiveMQ" + version="5.3" + include="5.2"> + </server> + + <server name="ActiveMQ Embeeded" + version="5.0" + include="ActiveMQ 5.0"> + <property name="PROC_HOME_PROPERTY" + value="catalina.base"/> + </server> + <server name="ActiveMQ Embeeded" + version="5.1" + include="ActiveMQ 5.1"> + <property name="PROC_HOME_PROPERTY" + value="catalina.base"/> + </server> + <server name="ActiveMQ Embeeded" version="5.2" include="5.1"> + </server> + <server name="ActiveMQ Embeeded" + version="5.3" + include="5.2"> + </server> - <property name="VERSION_FILE" - value="lib/activemq-core-5.2.*.jar"/> - </server> </plugin> Modified: trunk/src/org/hyperic/hq/product/jmx/MxServerDetector.java =================================================================== --- trunk/src/org/hyperic/hq/product/jmx/MxServerDetector.java 2010-03-09 09:17:03 UTC (rev 14358) +++ trunk/src/org/hyperic/hq/product/jmx/MxServerDetector.java 2010-03-09 17:43:44 UTC (rev 14359) @@ -254,7 +254,7 @@ List procs = new ArrayList(); long[] pids = getPids(getProcQuery()); log.debug(getProcQuery() + " matched " + pids.length + " processes"); - + String homeProp = getProcHomeProperty(); final boolean isMatch = isMatch(homeProp); if (isMatch) { |
From: <bo...@hy...> - 2010-03-09 09:17:12
|
Author: bob Date: 2010-03-09 01:17:03 -0800 (Tue, 09 Mar 2010) New Revision: 14358 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14358 Modified: trunk/etc/version.properties Log: Release 4.3.0 build #1372 Modified: trunk/etc/version.properties =================================================================== --- trunk/etc/version.properties 2010-03-08 23:37:50 UTC (rev 14357) +++ trunk/etc/version.properties 2010-03-09 09:17:03 UTC (rev 14358) @@ -1,3 +1,3 @@ -#Mon Mar 08 00:24:48 PST 2010 +#Tue Mar 09 00:22:38 PST 2010 version=4.3.0 -build=1371 +build=1372 |
From: <no...@gi...> - 2010-03-09 00:22:45
|
Branch: refs/heads/master Home: http://github.com/hyperic/hqapi Commit: b417716eb5db4805de6ffb3b9f94b676562357a6 http://github.com/hyperic/hqapi/commit/b417716eb5db4805de6ffb3b9f94b676562357a6 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-08 (Mon, 08 Mar 2010) Changed paths: M ChangeLog M hqu/hqapi1/app/AlertdefinitionController.groovy M src/org/hyperic/hq/hqapi1/AlertDefinitionApi.java A src/org/hyperic/hq/hqapi1/test/AlertDefinitionGetByResource_test.java M src/org/hyperic/hq/hqapi1/tools/AlertDefinitionCommand.java M xsd/HQApi1.wadl Log Message: ----------- [HHQ-3231,HHQ-3786] Allow alert definitions to be listed by platform. Commit: 172d9afa897ffcdfa2f1de6483f496d17a6bc237 http://github.com/hyperic/hqapi/commit/172d9afa897ffcdfa2f1de6483f496d17a6bc237 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-08 (Mon, 08 Mar 2010) Changed paths: M ChangeLog M hqu/hqapi1/app/AlertdefinitionController.groovy M src/org/hyperic/hq/hqapi1/AlertDefinitionApi.java A src/org/hyperic/hq/hqapi1/test/AlertDefinitionGetByResource_test.java M src/org/hyperic/hq/hqapi1/tools/AlertDefinitionCommand.java M xsd/HQApi1.wadl Log Message: ----------- Fix merge confict. |
From: <no...@gi...> - 2010-03-09 00:22:44
|
Branch: refs/heads/hqapi-2.x Home: http://github.com/hyperic/hqapi Commit: b417716eb5db4805de6ffb3b9f94b676562357a6 http://github.com/hyperic/hqapi/commit/b417716eb5db4805de6ffb3b9f94b676562357a6 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-08 (Mon, 08 Mar 2010) Changed paths: M ChangeLog M hqu/hqapi1/app/AlertdefinitionController.groovy M src/org/hyperic/hq/hqapi1/AlertDefinitionApi.java A src/org/hyperic/hq/hqapi1/test/AlertDefinitionGetByResource_test.java M src/org/hyperic/hq/hqapi1/tools/AlertDefinitionCommand.java M xsd/HQApi1.wadl Log Message: ----------- [HHQ-3231,HHQ-3786] Allow alert definitions to be listed by platform. |
From: <pn...@hy...> - 2010-03-08 23:38:00
|
Author: pnguyen Date: 2010-03-08 15:37:50 -0800 (Mon, 08 Mar 2010) New Revision: 14357 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14357 Modified: trunk/src/org/hyperic/hq/appdef/server/session/ConfigManagerEJBImpl.java Log: [HHQ-3731] Fix ClassCastException caused by Iterator "typo" Modified: trunk/src/org/hyperic/hq/appdef/server/session/ConfigManagerEJBImpl.java =================================================================== --- trunk/src/org/hyperic/hq/appdef/server/session/ConfigManagerEJBImpl.java 2010-03-08 17:53:37 UTC (rev 14356) +++ trunk/src/org/hyperic/hq/appdef/server/session/ConfigManagerEJBImpl.java 2010-03-08 23:37:50 UTC (rev 14357) @@ -572,7 +572,7 @@ Server s = (Server)i.next(); events.add(new ResourceUpdatedZevent(subject, s.getEntityId())); for (Iterator it = s.getServices().iterator(); it.hasNext();) { - Service svc = (Service)i.next(); + Service svc = (Service)it.next(); events.add(new ResourceUpdatedZevent(subject, svc.getEntityId())); } } |
From: <no...@gi...> - 2010-03-08 21:03:13
|
Branch: refs/heads/master Home: http://github.com/hyperic/hqapi Commit: 5c8734d9b73c1be01e2bbefe1d1c46c551e74427 http://github.com/hyperic/hqapi/commit/5c8734d9b73c1be01e2bbefe1d1c46c551e74427 Author: Ryan Morgan <rm...@hy...> Date: 2010-02-24 (Wed, 24 Feb 2010) Changed paths: M hqu/hqapi1/app/AlertdefinitionController.groovy M src/org/hyperic/hq/hqapi1/tools/AlertDefinitionCommand.java Log Message: ----------- [HHQ-3745] Clear session after each definition is processed to prevent exponential slowdown. A more general solution to this issue is needed. Commit: efc28bf4eb10b12f730eae24c0c50d8ac948c165 http://github.com/hyperic/hqapi/commit/efc28bf4eb10b12f730eae24c0c50d8ac948c165 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-08 (Mon, 08 Mar 2010) Changed paths: M hqu/hqapi1/plugin.properties Log Message: ----------- Bump to 3.2. Commit: e688e1ed6e16c5a3bb86d2bdda20d0f2dd9c1059 http://github.com/hyperic/hqapi/commit/e688e1ed6e16c5a3bb86d2bdda20d0f2dd9c1059 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-08 (Mon, 08 Mar 2010) Changed paths: M ChangeLog Log Message: ----------- Bump to 3.2. Commit: fea2fa5335e794304ea7293afad50e303297a8e9 http://github.com/hyperic/hqapi/commit/fea2fa5335e794304ea7293afad50e303297a8e9 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-08 (Mon, 08 Mar 2010) Changed paths: M ChangeLog M src/org/hyperic/hq/hqapi1/tools/AlertDefinitionCommand.java Log Message: ----------- [HHQ-3785] Add command lines options to alertdefinition sync command to allow for escalations and alert actions to be set and reset. Commit: c8698eab14427141ec3c5f4c23d11d4b41e1348a http://github.com/hyperic/hqapi/commit/c8698eab14427141ec3c5f4c23d11d4b41e1348a Author: Ryan Morgan <rm...@hy...> Date: 2010-03-08 (Mon, 08 Mar 2010) Changed paths: M ChangeLog M src/org/hyperic/hq/hqapi1/tools/AlertDefinitionCommand.java Log Message: ----------- Merge branch 'hqapi-2.x' Commit: c10564fc606c249078eb789c0b08153c7b0a11ae http://github.com/hyperic/hqapi/commit/c10564fc606c249078eb789c0b08153c7b0a11ae Author: Ryan Morgan <rm...@hy...> Date: 2010-03-08 (Mon, 08 Mar 2010) Changed paths: M ChangeLog M src/org/hyperic/hq/hqapi1/tools/GroupCommand.java Log Message: ----------- [HHQ-3768] Add --id and --name options to the group list CLI command. Commit: 05d5beb8b17dfb9f24e59d3dcc0a5f08fb5b8a94 http://github.com/hyperic/hqapi/commit/05d5beb8b17dfb9f24e59d3dcc0a5f08fb5b8a94 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-08 (Mon, 08 Mar 2010) Changed paths: M ChangeLog M src/org/hyperic/hq/hqapi1/tools/GroupCommand.java Log Message: ----------- Merge branch 'hqapi-2.x' |
From: <no...@gi...> - 2010-03-08 21:03:11
|
Branch: refs/heads/hqapi-2.x Home: http://github.com/hyperic/hqapi Commit: fea2fa5335e794304ea7293afad50e303297a8e9 http://github.com/hyperic/hqapi/commit/fea2fa5335e794304ea7293afad50e303297a8e9 Author: Ryan Morgan <rm...@hy...> Date: 2010-03-08 (Mon, 08 Mar 2010) Changed paths: M ChangeLog M src/org/hyperic/hq/hqapi1/tools/AlertDefinitionCommand.java Log Message: ----------- [HHQ-3785] Add command lines options to alertdefinition sync command to allow for escalations and alert actions to be set and reset. Commit: c10564fc606c249078eb789c0b08153c7b0a11ae http://github.com/hyperic/hqapi/commit/c10564fc606c249078eb789c0b08153c7b0a11ae Author: Ryan Morgan <rm...@hy...> Date: 2010-03-08 (Mon, 08 Mar 2010) Changed paths: M ChangeLog M src/org/hyperic/hq/hqapi1/tools/GroupCommand.java Log Message: ----------- [HHQ-3768] Add --id and --name options to the group list CLI command. |
From: <bo...@hy...> - 2010-03-08 17:53:45
|
Author: bob Date: 2010-03-08 09:53:37 -0800 (Mon, 08 Mar 2010) New Revision: 14356 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14356 Modified: tags/HQ_4_2_0_GA/etc/version.properties Log: Release 4.2.0 build #1263 Modified: tags/HQ_4_2_0_GA/etc/version.properties =================================================================== --- tags/HQ_4_2_0_GA/etc/version.properties 2010-03-08 13:50:23 UTC (rev 14355) +++ tags/HQ_4_2_0_GA/etc/version.properties 2010-03-08 17:53:37 UTC (rev 14356) @@ -1,3 +1,3 @@ -#Fri Jan 22 00:27:54 PST 2010 +#Mon Mar 08 09:23:06 PST 2010 version=4.2.0 -build=1262 +build=1263 |
From: <bo...@hy...> - 2010-03-08 13:50:32
|
Author: bob Date: 2010-03-08 05:50:23 -0800 (Mon, 08 Mar 2010) New Revision: 14355 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14355 Modified: branches/HQ_4_2/etc/version.properties Log: Release 4.2.1 build #1283 Modified: branches/HQ_4_2/etc/version.properties =================================================================== --- branches/HQ_4_2/etc/version.properties 2010-03-08 09:21:32 UTC (rev 14354) +++ branches/HQ_4_2/etc/version.properties 2010-03-08 13:50:23 UTC (rev 14355) @@ -1,3 +1,3 @@ -#Thu Jan 21 14:47:22 PST 2010 +#Mon Mar 08 05:10:58 PST 2010 version=4.2.1 -build=1282 +build=1283 |
From: <bo...@hy...> - 2010-03-08 09:21:41
|
Author: bob Date: 2010-03-08 01:21:32 -0800 (Mon, 08 Mar 2010) New Revision: 14354 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14354 Modified: trunk/etc/version.properties Log: Release 4.3.0 build #1371 Modified: trunk/etc/version.properties =================================================================== --- trunk/etc/version.properties 2010-03-08 03:58:08 UTC (rev 14353) +++ trunk/etc/version.properties 2010-03-08 09:21:32 UTC (rev 14354) @@ -1,3 +1,3 @@ -#Sun Mar 07 00:29:16 PST 2010 +#Mon Mar 08 00:24:48 PST 2010 version=4.3.0 -build=1370 +build=1371 |
From: <sc...@hy...> - 2010-03-08 03:58:19
|
Author: scottmf Date: 2010-03-07 19:58:08 -0800 (Sun, 07 Mar 2010) New Revision: 14353 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14353 Modified: trunk/src/org/hyperic/hq/galerts/processor/GalertProcessor.java Log: [HHQ-3747] changed so that each event is processed in its own session. Not doing it this way causes backups in the queue when one of the first events in the batch gets put into readwrite mode. Under heavy load it would consistly bring the server down due to OOM. Modified: trunk/src/org/hyperic/hq/galerts/processor/GalertProcessor.java =================================================================== --- trunk/src/org/hyperic/hq/galerts/processor/GalertProcessor.java 2010-03-07 09:26:52 UTC (rev 14352) +++ trunk/src/org/hyperic/hq/galerts/processor/GalertProcessor.java 2010-03-08 03:58:08 UTC (rev 14353) @@ -86,33 +86,15 @@ * Entry point to the processor from the {@link EventListener} * * @param events A list of {@link Zevent}s to process - * - * TODO: This needs to be optimized so that the EventListener buffers - * up many events and calls this method. The overhead of creating - * and checking session existance is too high on a per-event - * basis. */ void processEvents(final List events) { - try { - SessionManager.runInSession(new SessionRunner() { - public String getName() { - return "Event Processor"; - } - - public void run() throws Exception { - for (Iterator i=events.iterator(); i.hasNext(); ) { - Zevent z = (Zevent)i.next(); - - processEvent(z); - } - } - }); - } catch(Exception e) { - _log.warn("Error processing events", e); + for (Iterator i=events.iterator(); i.hasNext(); ) { + Zevent z = (Zevent)i.next(); + processEvent(z); } } - private void processEvent(Zevent event) { + private void processEvent(final Zevent event) { ZeventSourceId source = event.getSourceId(); Set listenerDupe; @@ -126,12 +108,23 @@ } for (Iterator i=listenerDupe.iterator(); i.hasNext(); ) { - Gtrigger t = (Gtrigger)i.next(); + final Gtrigger t = (Gtrigger)i.next(); // Synchronize around all event processing for a trigger, since // they keep state and will need to be flushed synchronized(t) { - t.processEvent(event); + try { + SessionManager.runInSession(new SessionRunner() { + public String getName() { + return "Event Processor"; + } + public void run() throws Exception { + t.processEvent(event); + } + }); + } catch (Exception e) { + _log.warn("Error processing events", e); + } } } } |
From: <bo...@hy...> - 2010-03-07 09:27:03
|
Author: bob Date: 2010-03-07 01:26:52 -0800 (Sun, 07 Mar 2010) New Revision: 14352 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14352 Modified: trunk/etc/version.properties Log: Release 4.3.0 build #1370 Modified: trunk/etc/version.properties =================================================================== --- trunk/etc/version.properties 2010-03-06 09:21:40 UTC (rev 14351) +++ trunk/etc/version.properties 2010-03-07 09:26:52 UTC (rev 14352) @@ -1,3 +1,3 @@ -#Sat Mar 06 00:27:08 PST 2010 +#Sun Mar 07 00:29:16 PST 2010 version=4.3.0 -build=1369 +build=1370 |