Bug 1315226 - mongod process causing wakeups 100 times per second
Summary: mongod process causing wakeups 100 times per second
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Satellite
Classification: Red Hat
Component: Pulp
Version: 6.1.7
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified vote
Target Milestone: Unspecified
Assignee: satellite6-bugs
QA Contact: Katello QA List
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-03-07 09:50 UTC by Pradeep Kumar Surisetty
Modified: 2017-01-04 22:33 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-01-04 22:33:39 UTC
Target Upstream Version:


Attachments (Terms of Use)

Description Pradeep Kumar Surisetty 2016-03-07 09:50:04 UTC
Description of problem:

Install satellitte 6.1.7 (6.2 also). 
Monitor strace of mongod pid. 


select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)
select(12, [9 11], NULL, NULL, {0, 10000}) = 0 (Timeout)


This is due to one hundredth of a second timeout on select call on the listening socket. These wakeups keep mongodb in top in powertop even though there is no any workload running. 


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1. install satellite and trace mongodb using strace
2.
3.

Actual results:

too many wake ups cause more power consumption. 

Expected results:


Additional info:

Comment 1 Bryan Kearney 2016-07-26 19:02:15 UTC
Moving 6.2 bugs out to sat-backlog.

Comment 3 Michael Hrivnak 2017-01-04 22:33:39 UTC
This was addressed in upstream mongodb 3.3.9 and released about 6 months ago.

https://jira.mongodb.org/browse/SERVER-2114

The newest mongodb we theoretically have access to is 3.2, via software collections. Since this appears to be a minor issue, I don't think it's worth trying to get a very-new mongodb version at this time. If this is having a substantial impact, please provide details of that impact, and we could try to look for other options.


Note You need to log in before you can comment on or make changes to this bug.