diff --git a/src/peers.c b/src/peers.c
index 3dc3711..d637e88 100644
--- a/src/peers.c
+++ b/src/peers.c
@@ -193,6 +193,7 @@
 	if (ps) {
 		if (ps->stream == s) {
 			ps->stream = NULL;
+			ps->appctx = NULL;
 			if (ps->flags & PEER_F_LEARN_ASSIGN) {
 				/* unassign current peer for learning */
 				ps->flags &= ~(PEER_F_LEARN_ASSIGN);
@@ -421,6 +422,7 @@
 									peer_session_forceshutdown(ps->stream);
 								}
 								ps->stream = s;
+								ps->appctx = appctx;
 								break;
 							}
 						}
@@ -1173,6 +1175,8 @@
 		actconn++;
 	totalconn++;
 
+	ps->appctx = appctx;
+	ps->stream = s;
 	return s;
 
 	/* Error unrolling */
@@ -1260,11 +1264,11 @@
 						st->flags |= SHTABLE_F_RESYNC_ASSIGN;
 
 						/* awake peer stream task to handle a request of resync */
-						task_wakeup(ps->stream->task, TASK_WOKEN_MSG);
+						appctx_wakeup(ps->appctx);
 					}
 					else if ((int)(ps->pushed - ps->table->table->localupdate) < 0) {
 						/* awake peer stream task to push local updates */
-						task_wakeup(ps->stream->task, TASK_WOKEN_MSG);
+						appctx_wakeup(ps->appctx);
 					}
 					/* else do nothing */
 				} /* SUCCESSCODE */
@@ -1305,6 +1309,7 @@
 				if (ps->stream) {
 					peer_session_forceshutdown(ps->stream);
 					ps->stream = NULL;
+					ps->appctx = NULL;
 				}
 			}
 		}
@@ -1330,7 +1335,7 @@
 				 * or during previous connect, peer replies a try again statuscode */
 
 				/* connect to the peer */
-				ps->stream = peer_session_create(ps->peer, ps);
+				peer_session_create(ps->peer, ps);
 			}
 			else {
 				/* Other error cases */
@@ -1346,7 +1351,7 @@
 		         (int)(ps->pushed - ps->table->table->localupdate) < 0) {
 			/* current stream active and established
 			   awake stream to push remaining local updates */
-			task_wakeup(ps->stream->task, TASK_WOKEN_MSG);
+			appctx_wakeup(ps->appctx);
 		}
 	} /* stopping */
 	/* Wakeup for re-connect */
