Skip to content

wspbus.py wait() calls publish during the wait cycle #1758

@ian-otto

Description

@ian-otto

I'm submitting a ...

  • bug report
  • feature request
  • question about the decisions made in the repository

Do you want to request a feature or report a bug?

I'm reporting a bug.

What is the current behavior?

CherryPy server started through wspbus consumes 100% of a core during idle. I resolved this by moving the publish line from within the while loop to after the while loop, in which the server now idles while not serving requests.

If the current behavior is a bug, please provide the steps to reproduce and if possible a screenshots and logs of the problem. If you can, show us your code.

I noticed it when installing and running wok, which uses cherrypy as its backend. Just install this software, start the daemon, then visit the page once and watch the CPU usage for the main process shoot to 100%. I imagine a minimal version of this using a basic "quickstart"-like python script would also exhibit the same behavior.

What is the expected behavior?

The server utilizes minimal CPU usage when not serving requests.

What is the motivation / use case for changing the behavior?

The service should not consume CPU when it isn't doing anything.

Please tell us about your environment:

  • Cheroot version: 6.5.2
  • CherryPy version: 11.2.0
  • Python version: 2.7.15rc1
  • OS: Ubuntu 18.04
  • Browser: [all]

Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, e.g. stackoverflow, gitter, etc.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions