Description of problem: Every worker has a nice setting of 0 on 5.6.0.13 Version-Release number of selected component (if applicable): 5.6.0.13 Unclear if all 5.6 builds are affected but the transition from spawn to forked workers is probably the source of the lost nice setting. How reproducible: always Steps to Reproduce: 1.Run: ps -afxo pid,ni,command | grep -i "[Mm]iq" 2. Look at the NI value for each worker 3. Actual results: 0 - for all workers Expected results: For each worker to match it's nice setting in the advanced config file. Additional info: Example (5.6 vs 5.5): [root@CF-R0000-DB-Workload-56013-1 ~]# ps -afxo pid,ni,command | grep -i "[Mm]iq" 50109 0 MIQ Server 50486 0 \_ MIQ: MiqEventHandler id: 1, queue: ems 50491 0 \_ MIQ: MiqGenericWorker id: 2, queue: generic 50501 0 \_ MIQ: MiqPriorityWorker id: 4, queue: generic 50506 0 \_ MIQ: MiqPriorityWorker id: 5, queue: generic 50521 0 \_ MIQ: MiqReportingWorker id: 6, queue: reporting 50528 0 \_ MIQ: MiqReportingWorker id: 7, queue: reporting 50537 0 \_ MIQ: MiqScheduleWorker id: 8 50562 0 \_ puma 3.3.0 (tcp://127.0.0.1:3000) [MIQ: Web Server Worker] 50573 0 \_ puma 3.3.0 (tcp://127.0.0.1:4000) [MIQ: Web Server Worker] 51083 0 \_ MIQ: MiqEmsRefreshCoreWorker id: 12, queue: ems_1 51106 0 \_ MIQ: Vmware::InfraManager::EventCatcher id: 14, queue: ems_1 51131 0 \_ MIQ: MiqVimBrokerWorker id: 15 53253 0 \_ MIQ: MiqEmsMetricsProcessorWorker id: 18, queue: ems_metrics_processor 53258 0 \_ MIQ: MiqEmsMetricsProcessorWorker id: 19, queue: ems_metrics_processor 30061 0 \_ MIQ: Vmware::InfraManager::MetricsCollectorWorker id: 28, queue: vmware 34941 0 \_ MIQ: Vmware::InfraManager::MetricsCollectorWorker id: 30, queue: vmware 47480 0 \_ MIQ: MiqGenericWorker id: 31, queue: generic 51488 0 \_ MIQ: Vmware::InfraManager::RefreshWorker id: 32, queue: ems_1 [root@CF-R0000-DB-Workload-5550-1 ~]# ps -afxo pid,ni,command | grep -i "[Mm]iq" 38264 0 /var/www/miq/vmdb/lib/workers/bin/evm_server.rb 38660 7 \_ MiqEventHandler id: 1, queue: ems 38689 7 \_ MiqReportingWorker id: 6, queue: reporting 38692 7 \_ MiqReportingWorker id: 7, queue: reporting 38695 3 \_ MiqScheduleWorker id: 8 38698 1 \_ MiqUiWorker id: 9, uri: http://127.0.0.1:3000 38720 1 \_ MiqWebServiceWorker id: 10, uri: http://127.0.0.1:4000 39277 1 \_ MiqEmsRefreshCoreWorker id: 11, queue: ems_1 39286 3 \_ MiqVimBrokerWorker id: 14 41578 7 \_ MiqEmsMetricsProcessorWorker id: 17, queue: ems_metrics_processor 41588 7 \_ MiqEmsMetricsProcessorWorker id: 18, queue: ems_metrics_processor 4597 1 \_ MiqPriorityWorker id: 65, queue: generic 15499 1 \_ MiqPriorityWorker id: 66, queue: generic 34342 10 \_ MiqGenericWorker id: 71, queue: generic 18160 10 \_ MiqGenericWorker id: 73, queue: generic
https://github.com/ManageIQ/manageiq/pull/10040
New commit detected on ManageIQ/manageiq/master: https://github.com/ManageIQ/manageiq/commit/65528c9cfe6e5d3aa89a5ec443229ad88c5b3ec2 commit 65528c9cfe6e5d3aa89a5ec443229ad88c5b3ec2 Author: Joe Rafaniello <jrafanie> AuthorDate: Mon Jul 25 13:41:38 2016 -0400 Commit: Joe Rafaniello <jrafanie> CommitDate: Mon Jul 25 14:11:00 2016 -0400 Renice workers after they fork https://bugzilla.redhat.com/show_bug.cgi?id=1353700 Before we changed from spawn to fork [1], we'd spawn the process with a nice prefix [2], which gave the kernel some hints for CPU scheduling of our processes. A higher "nice" value for a process is nicer to other processes. This niceness wasn't brought over from spawn to fork. [1] https://github.com/ManageIQ/manageiq/pull/3593 [2] b0caa423cd928f09e3287bb5141803b3360b5f89 app/models/miq_worker.rb | 5 +++-- spec/models/miq_worker_spec.rb | 7 +++++++ 2 files changed, 10 insertions(+), 2 deletions(-)
[root@MIQ-BZ-test-R0000-DB-5700 ~]# ps -afxo pid,ni,command | grep -i "[Mm]iq" 4452 0 MIQ Server 6168 7 \_ MIQ: MiqEventHandler id: 1, queue: ems 6177 10 \_ MIQ: MiqGenericWorker id: 2, queue: generic 6185 10 \_ MIQ: MiqGenericWorker id: 3, queue: generic 6195 1 \_ MIQ: MiqPriorityWorker id: 4, queue: generic 6203 1 \_ MIQ: MiqPriorityWorker id: 5, queue: generic 6213 7 \_ MIQ: MiqReportingWorker id: 6, queue: reporting 6221 7 \_ MIQ: MiqReportingWorker id: 7, queue: reporting 6231 3 \_ MIQ: MiqScheduleWorker id: 8 6241 1 \_ puma 3.3.0 (tcp://127.0.0.1:5000) [MIQ: Web Server Worker] 6281 1 \_ puma 3.3.0 (tcp://127.0.0.1:3000) [MIQ: Web Server Worker] 6312 1 \_ puma 3.3.0 (tcp://127.0.0.1:4000) [MIQ: Web Server Worker]