Michael Blow has submitted this change and it was merged.

Change subject: [NO ISSUE] stop awaiting IPC connect on state == CLOSED
......................................................................


[NO ISSUE] stop awaiting IPC connect on state == CLOSED

Change-Id: I0dc67100cfcb827d54abfc8b0f0d358bf6e02aeb
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2434
Reviewed-by: Murtadha Hubail <[email protected]>
Tested-by: Michael Blow <[email protected]>
---
M 
hyracks-fullstack/hyracks/hyracks-ipc/src/main/java/org/apache/hyracks/ipc/impl/IPCHandle.java
1 file changed, 15 insertions(+), 3 deletions(-)

Approvals:
  Anon. E. Moose #1000171: 
  Michael Blow: Verified
  Murtadha Hubail: Looks good to me, approved



diff --git 
a/hyracks-fullstack/hyracks/hyracks-ipc/src/main/java/org/apache/hyracks/ipc/impl/IPCHandle.java
 
b/hyracks-fullstack/hyracks/hyracks-ipc/src/main/java/org/apache/hyracks/ipc/impl/IPCHandle.java
index b3a992b..d63bfbd 100644
--- 
a/hyracks-fullstack/hyracks/hyracks-ipc/src/main/java/org/apache/hyracks/ipc/impl/IPCHandle.java
+++ 
b/hyracks-fullstack/hyracks/hyracks-ipc/src/main/java/org/apache/hyracks/ipc/impl/IPCHandle.java
@@ -118,10 +118,22 @@
     }
 
     synchronized boolean waitTillConnected() throws InterruptedException {
-        while (state != HandleState.CONNECTED && state != 
HandleState.CONNECT_FAILED) {
-            wait();
+        while (true) {
+            switch (state) {
+                case INITIAL:
+                case CONNECT_SENT:
+                case CONNECT_RECEIVED:
+                    // TODO: need a reasonable timeout here
+                    wait();
+                    break;
+                case CONNECTED:
+                case CONNECT_FAILED:
+                case CLOSED:
+                    return state == HandleState.CONNECTED;
+                default:
+                    throw new IllegalStateException("unknown state: " + state);
+            }
         }
-        return state == HandleState.CONNECTED;
     }
 
     ByteBuffer getInBuffer() {

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/2434
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I0dc67100cfcb827d54abfc8b0f0d358bf6e02aeb
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Michael Blow <[email protected]>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Michael Blow <[email protected]>
Gerrit-Reviewer: Murtadha Hubail <[email protected]>

Reply via email to