Fix: Added gevent monkey patch to fix issue that blocks 30/7330/1
authorpeusterm <manuel.peuster@uni-paderborn.de>
Tue, 19 Mar 2019 10:10:38 +0000 (11:10 +0100)
committerpeusterm <manuel.peuster@uni-paderborn.de>
Tue, 19 Mar 2019 10:32:52 +0000 (11:32 +0100)
the servers of the LLCM and REST APIs.

Change-Id: I4d16ce4ae5e3d51892fe202ec7cf454e54096aca
Signed-off-by: peusterm <manuel.peuster@uni-paderborn.de>
src/emuvim/dcemulator/net.py

index 6be973f..58c2bff 100755 (executable)
 # acknowledge the contributions of their colleagues of the SONATA
 # partner consortium (www.sonata-nfv.eu).
 import logging
 # acknowledge the contributions of their colleagues of the SONATA
 # partner consortium (www.sonata-nfv.eu).
 import logging
-
 import time
 import time
-from subprocess import Popen
 import re
 import requests
 import os
 import json
 import re
 import requests
 import os
 import json
-
+import networkx as nx
+from subprocess import Popen
+from gevent import monkey
 from mininet.net import Containernet
 from mininet.node import OVSSwitch, OVSKernelSwitch, Docker, RemoteController
 from mininet.cli import CLI
 from mininet.link import TCLink
 from mininet.clean import cleanup
 from mininet.net import Containernet
 from mininet.node import OVSSwitch, OVSKernelSwitch, Docker, RemoteController
 from mininet.cli import CLI
 from mininet.link import TCLink
 from mininet.clean import cleanup
-import networkx as nx
 from emuvim.dcemulator.monitoring import DCNetworkMonitor
 from emuvim.dcemulator.node import Datacenter, EmulatorCompute
 from emuvim.dcemulator.resourcemodel import ResourceModelRegistrar
 
 from emuvim.dcemulator.monitoring import DCNetworkMonitor
 from emuvim.dcemulator.node import Datacenter, EmulatorCompute
 from emuvim.dcemulator.resourcemodel import ResourceModelRegistrar
 
+# ensure correct functionality of all gevent based REST servers
+monkey.patch_all(sys=True)
+
+# setup logging
 LOG = logging.getLogger("dcemulator.net")
 LOG.setLevel(logging.DEBUG)
 
 LOG = logging.getLogger("dcemulator.net")
 LOG.setLevel(logging.DEBUG)