There is some thing wrong.
Perhaps line feed code problem.

Please apply attached patch.

(2013/02/21 17:17), YAMADA Hideki wrote:
hi,

(2013/02/21 16:17), YAMAMOTO Takashi wrote:
hi,

Empty send_q.get() is blocking send thread.
Because of this issue, datapath state never transit to DEAD.

oops, sorry.
probably it's better to just leave it for gc?

I think so, too.
How about following?


  From 08126332a9d3d59af8e441ecfe78482a90515771 Mon Sep 17 00:00:00 2001
From: YAMADA Hideki <[email protected]>
Date: Thu, 21 Feb 2013 16:33:47 +0900
Subject: [PATCH] controller: fix that sender thread is never terminated

Empty q.get() is blocking send thread.
Because of this issue, datapath state never transit to DEAD.

This fixes commit 83e3709a0d70f889e794d1c5f70c1c1eb73075f7.
    - controller: fix send_q draining
        
https://github.com/osrg/ryu/commit/83e3709a0d70f889e794d1c5f70c1c1eb73075f7

Signed-off-by: YAMADA Hideki <[email protected]>
---
   ryu/controller/controller.py |    3 ---
   1 files changed, 0 insertions(+), 3 deletions(-)

diff --git a/ryu/controller/controller.py b/ryu/controller/controller.py
index 9dc745a..841b388 100644
--- a/ryu/controller/controller.py
+++ b/ryu/controller/controller.py
@@ -196,10 +196,7 @@ class Datapath(object):
                   buf = self.send_q.get()
                   self.socket.sendall(buf)
           finally:
-            q = self.send_q
               self.send_q = None
-            while q.get():
-                pass

       def send(self, buf):
           if self.send_q:

>From 08126332a9d3d59af8e441ecfe78482a90515771 Mon Sep 17 00:00:00 2001
From: YAMADA Hideki <[email protected]>
Date: Thu, 21 Feb 2013 16:33:47 +0900
Subject: [PATCH] controller: fix that sender thread is never terminated

Empty q.get() is blocking send thread.
Because of this issue, datapath state never transit to DEAD.

This fixes commit 83e3709a0d70f889e794d1c5f70c1c1eb73075f7.
  - controller: fix send_q draining
      
https://github.com/osrg/ryu/commit/83e3709a0d70f889e794d1c5f70c1c1eb73075f7

Signed-off-by: YAMADA Hideki <[email protected]>
---
 ryu/controller/controller.py |    3 ---
 1 files changed, 0 insertions(+), 3 deletions(-)

diff --git a/ryu/controller/controller.py b/ryu/controller/controller.py
index 9dc745a..841b388 100644
--- a/ryu/controller/controller.py
+++ b/ryu/controller/controller.py
@@ -196,10 +196,7 @@ class Datapath(object):
                 buf = self.send_q.get()
                 self.socket.sendall(buf)
         finally:
-            q = self.send_q
             self.send_q = None
-            while q.get():
-                pass
 
     def send(self, buf):
         if self.send_q:
-- 
1.7.1

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel

Reply via email to