You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by he...@apache.org on 2014/07/03 11:42:14 UTC
[4/6] git commit: Merge remote-tracking branch
'aledsage/feature/PersistenceExceptionHandler'
Merge remote-tracking branch 'aledsage/feature/PersistenceExceptionHandler'
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/311aed15
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/311aed15
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/311aed15
Branch: refs/heads/master
Commit: 311aed1569d426e0f7188a6237673deb693bebcb
Parents: 7ddca72 648eb8f
Author: Alex Heneveld <al...@cloudsoftcorp.com>
Authored: Thu Jul 3 10:16:42 2014 +0100
Committer: Alex Heneveld <al...@cloudsoftcorp.com>
Committed: Thu Jul 3 10:16:42 2014 +0100
----------------------------------------------------------------------
.../rebind/PersistenceExceptionHandler.java | 32 +++
.../brooklyn/entity/rebind/RebindContext.java | 3 +-
.../entity/rebind/RebindExceptionHandler.java | 15 ++
.../brooklyn/entity/rebind/RebindManager.java | 2 +
.../mementos/BrooklynMementoPersister.java | 7 +-
.../entity/rebind/BasicEntityRebindSupport.java | 18 +-
.../rebind/ImmediateDeltaChangeListener.java | 22 ++-
.../rebind/PeriodicDeltaChangeListener.java | 24 +--
.../rebind/PersistenceExceptionHandlerImpl.java | 102 ++++++++++
.../entity/rebind/RebindContextImpl.java | 21 +-
.../rebind/RebindExceptionHandlerImpl.java | 196 +++++++++++++++++--
.../entity/rebind/RebindManagerImpl.java | 54 ++++-
.../AbstractBrooklynMementoPersister.java | 5 +-
.../BrooklynMementoPersisterInMemory.java | 22 ++-
.../BrooklynMementoPersisterToFile.java | 9 +-
.../BrooklynMementoPersisterToMultiFile.java | 19 +-
.../BrooklynMementoPersisterToObjectStore.java | 55 +++---
.../internal/BrooklynFeatureEnablement.java | 2 +
.../NonDeploymentManagementContext.java | 6 +
.../entity/rebind/RebindFailuresTest.java | 78 ++++++++
.../brooklyn/entity/rebind/RebindTestUtils.java | 8 +-
.../rebind/RecordingRebindExceptionHandler.java | 2 +-
.../BrooklynMementoPersisterTestFixture.java | 2 +-
...BrooklynMementoPersisterToMultiFileTest.java | 3 +-
.../HighAvailabilityManagerSplitBrainTest.java | 3 +-
.../ha/HighAvailabilityManagerTestFixture.java | 3 +-
.../AbstractWebAppFixtureIntegrationTest.java | 5 +-
.../brooklyn/launcher/BrooklynLauncher.java | 5 +-
28 files changed, 610 insertions(+), 113 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/311aed15/core/src/main/java/brooklyn/entity/rebind/BasicEntityRebindSupport.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/311aed15/core/src/main/java/brooklyn/entity/rebind/persister/BrooklynMementoPersisterToObjectStore.java
----------------------------------------------------------------------
diff --cc core/src/main/java/brooklyn/entity/rebind/persister/BrooklynMementoPersisterToObjectStore.java
index 54f4943,34346ba..8a2b549
--- a/core/src/main/java/brooklyn/entity/rebind/persister/BrooklynMementoPersisterToObjectStore.java
+++ b/core/src/main/java/brooklyn/entity/rebind/persister/BrooklynMementoPersisterToObjectStore.java
@@@ -266,24 -269,21 +269,24 @@@ public class BrooklynMementoPersisterTo
if (LOG.isDebugEnabled()) LOG.debug("Ignoring checkpointing entire memento, because not running");
return;
}
- if (LOG.isDebugEnabled()) LOG.debug("Checkpointing entire memento");
objectStore.prepareForMasterUse();
+ Stopwatch stopwatch = Stopwatch.createStarted();
+
for (EntityMemento entity : newMemento.getEntityMementos().values()) {
- persist("entities", entity);
+ persist("entities", entity, exceptionHandler);
}
for (LocationMemento location : newMemento.getLocationMementos().values()) {
- persist("locations", location);
+ persist("locations", location, exceptionHandler);
}
for (PolicyMemento policy : newMemento.getPolicyMementos().values()) {
- persist("policies", policy);
+ persist("policies", policy, exceptionHandler);
}
for (EnricherMemento enricher : newMemento.getEnricherMementos().values()) {
- persist("enrichers", enricher);
+ persist("enrichers", enricher, exceptionHandler);
}
+
+ if (LOG.isDebugEnabled()) LOG.debug("Checkpointed entire memento in {}", Time.makeTimeStringRounded(stopwatch));
}
@Override
@@@ -292,40 -292,37 +295,40 @@@
if (LOG.isDebugEnabled()) LOG.debug("Ignoring checkpointed delta of memento, because not running");
return;
}
- if (LOG.isDebugEnabled()) LOG.debug("Checkpointed delta of memento; updating {} entities, {} locations and {} policies; " +
- "removing {} entities, {} locations and {} policies",
- new Object[] {delta.entities(), delta.locations(), delta.policies(),
- delta.removedEntityIds(), delta.removedLocationIds(), delta.removedPolicyIds()});
objectStore.prepareForMasterUse();
+ Stopwatch stopwatch = Stopwatch.createStarted();
+
for (EntityMemento entity : delta.entities()) {
- persist("entities", entity);
+ persist("entities", entity, exceptionHandler);
}
for (LocationMemento location : delta.locations()) {
- persist("locations", location);
+ persist("locations", location, exceptionHandler);
}
for (PolicyMemento policy : delta.policies()) {
- persist("policies", policy);
+ persist("policies", policy, exceptionHandler);
}
for (EnricherMemento enricher : delta.enrichers()) {
- persist("enrichers", enricher);
+ persist("enrichers", enricher, exceptionHandler);
}
for (String id : delta.removedEntityIds()) {
- delete("entities", id);
+ delete("entities", id, exceptionHandler);
}
for (String id : delta.removedLocationIds()) {
- delete("locations", id);
+ delete("locations", id, exceptionHandler);
}
for (String id : delta.removedPolicyIds()) {
- delete("policies", id);
+ delete("policies", id, exceptionHandler);
}
for (String id : delta.removedEnricherIds()) {
- delete("enrichers", id);
+ delete("enrichers", id, exceptionHandler);
}
+
+ if (LOG.isDebugEnabled()) LOG.debug("Checkpointed delta of memento in {}; updated {} entities, {} locations and {} policies; " +
+ "removing {} entities, {} locations and {} policies",
+ new Object[] {Time.makeTimeStringRounded(stopwatch), delta.entities(), delta.locations(), delta.policies(),
+ delta.removedEntityIds(), delta.removedLocationIds(), delta.removedPolicyIds()});
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/311aed15/core/src/main/java/brooklyn/management/internal/NonDeploymentManagementContext.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/311aed15/core/src/test/java/brooklyn/management/ha/HighAvailabilityManagerSplitBrainTest.java
----------------------------------------------------------------------