Uploaded image for project: 'Python Driver'
  1. Python Driver
  2. PYTHON-983

Excessive task switching and load increase after updating to pymongo 3

    • Type: Icon: Task Task
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 3.1
    • Affects Version/s: 3.0.3
    • Component/s: None
    • Labels:
      None
    • Environment:
      Linux kernel version 3.13, 64 bit environment, MongoDB 2.6.5

      After updating our application code and moving to pymongo 3.0.3 in production we are seeing a jump in load, context switches, local timer interrupts and number of threads. I've attached a couple of screenshots from Munin that shows a drastic change in resource use on one of our application servers right after the deploy. We are still investigating this, but as nothing else was patched at the same time things points to new MongoClient behaviour.

      The application is a collection of web services run through gunicorn.

        1. interrupts-day.png
          interrupts-day.png
          47 kB
        2. irqstats-day.png
          irqstats-day.png
          134 kB
        3. pymongo 28 vs 303.png
          pymongo 28 vs 303.png
          181 kB
        4. Screen Shot 2015-08-27 at 15.05.58.png
          Screen Shot 2015-08-27 at 15.05.58.png
          210 kB
        5. Screen Shot 2015-08-27 at 15.07.21.png
          Screen Shot 2015-08-27 at 15.07.21.png
          59 kB
        6. Screen Shot 2015-08-27 at 15.09.09.png
          Screen Shot 2015-08-27 at 15.09.09.png
          70 kB
        7. threads-day.png
          threads-day.png
          24 kB

            Assignee:
            jesse@mongodb.com A. Jesse Jiryu Davis
            Reporter:
            daniel@blogg.se daniel@blogg.se
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: