You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@slider.apache.org by st...@apache.org on 2014/11/10 17:55:34 UTC
[5/7] incubator-slider git commit: SLIDER-622 possible bug/race in
EndOfServiceWaiter
SLIDER-622 possible bug/race in EndOfServiceWaiter
Project: http://git-wip-us.apache.org/repos/asf/incubator-slider/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-slider/commit/b277c792
Tree: http://git-wip-us.apache.org/repos/asf/incubator-slider/tree/b277c792
Diff: http://git-wip-us.apache.org/repos/asf/incubator-slider/diff/b277c792
Branch: refs/heads/feature/SLIDER-622-windows
Commit: b277c7921a4a03bb9a1abee38128e69e1a9ca7b0
Parents: 400d069
Author: Steve Loughran <st...@apache.org>
Authored: Mon Nov 10 16:47:27 2014 +0000
Committer: Steve Loughran <st...@apache.org>
Committed: Mon Nov 10 16:47:27 2014 +0000
----------------------------------------------------------------------
.../server/services/utility/EndOfServiceWaiter.java | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/b277c792/slider-core/src/main/java/org/apache/slider/server/services/utility/EndOfServiceWaiter.java
----------------------------------------------------------------------
diff --git a/slider-core/src/main/java/org/apache/slider/server/services/utility/EndOfServiceWaiter.java b/slider-core/src/main/java/org/apache/slider/server/services/utility/EndOfServiceWaiter.java
index 6e8add1..4a57133 100644
--- a/slider-core/src/main/java/org/apache/slider/server/services/utility/EndOfServiceWaiter.java
+++ b/slider-core/src/main/java/org/apache/slider/server/services/utility/EndOfServiceWaiter.java
@@ -35,6 +35,7 @@ public class EndOfServiceWaiter implements ServiceStateChangeListener {
private final AtomicBoolean finished = new AtomicBoolean(false);
private final String name;
+ private Service service;
/**
* Wait for a service; use the service name as this instance's name
@@ -52,6 +53,7 @@ public class EndOfServiceWaiter implements ServiceStateChangeListener {
*/
public EndOfServiceWaiter(String name, Service service) {
this.name = name;
+ this.service = service;
service.registerServiceListener(this);
}
@@ -59,11 +61,11 @@ public class EndOfServiceWaiter implements ServiceStateChangeListener {
InterruptedException, TimeoutException {
if (!finished.get()) {
wait(timeout);
- }
- if (!finished.get()) {
- throw new TimeoutException(name
- + " did not finish after " + timeout +
- " milliseconds");
+ if (!finished.get()) {
+ throw new TimeoutException(name
+ + " did not finish after " + timeout +
+ " milliseconds");
+ }
}
}