Matt Meier created CLOUDSTACK-10383: ---------------------------------------
Summary: VMs won't start - large "ip rule show" in virtual router hitting python Popen.wait() issue Key: CLOUDSTACK-10383 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-10383 Project: CloudStack Issue Type: Bug Security Level: Public (Anyone can view this level - this is the default.) Components: Virtual Router Affects Versions: 4.11.0.0 Reporter: Matt Meier XenServer cluster that's hosting client VMs with public IP's in a basic network. Fairly simple setup. Faced an issue where VMs weren't starting at all. No idea why, last logs in management-server.log seemed to indicate it was stalling at virtual router. With enough time I'd receive a timeout. Logged-in to virtual router, saw last line "Adding route table" (CsRoute.py). After some debugging it was determined that CsHelper.execute("ip rule show") would freeze. This happened at: *p.wait()* (CsHelper.py). Python documentation showed: *Warning This will deadlock when using stdout=PIPE and/or stderr=PIPE and the child process generates enough output to a pipe such that it blocks waiting for the OS pipe buffer to accept more data. Use communicate() to avoid that.* Commented-out the wait command, then cut and paste *result = p.communicate()[0]* (slightly below) in its place. Everything now works fine and VMs are again starting. -- This message was sent by Atlassian JIRA (v7.6.3#76005)