Bug#296100: [Pkg-nagios-devel] Bug#296100: nagios-pgsql: postgres process eats 6% CPU

Marcus Better Marcus Better <marcus@better.se>, 296100@bugs.debian.org
Sun, 20 Feb 2005 19:14:18 +0100


> by any chance do you have this problem if you set LANG to C

Yes, the problem is still there.

Looking at the PgSQL logs, I see statements of the following type 
repeating continuously:

-------------------------------------------
2005-02-20 19:06:05 [32291] LOG:  statement: BEGIN TRANSACTION
2005-02-20 19:06:05 [32291] LOG:  statement: DELETE FROM programstatus;
2005-02-20 19:06:06 [32291] LOG:  statement: DELETE FROM hoststatus;
2005-02-20 19:06:11 [32291] LOG:  statement: DELETE FROM servicestatus;
2005-02-20 19:06:22 [32291] LOG:  statement: INSERT INTO programstatus 
(last_update,program_start,nagios_pid,daemon_mode,last_command_check,last_log_rotation,enable_notifications,execute_service_checks,accept_passive_service_checks,enable_event_handlers,obsess_over_services,enable_flap_detection,enable_failure_prediction,process_performance_data) 
VALUES 
(1108922782::int4::abstime::timestamp,1108922450::int4::abstime::timestamp,'32290','0',1108922748::int4::abstime::timestamp,0::int4::abstime::timestamp,'1','1','1','1','0','0','1','0')
2005-02-20 19:06:22 [32291] LOG:  statement: INSERT INTO hoststatus 
(host_name,host_status,last_update,last_check,last_state_change,problem_acknowledged,time_up,time_down,time_unreachable,last_notification,current_notification,notifications
...
-----------------------------------------

Then a lot ot INSERT statements follow, apparently one for each service 
and host. Then I see a COMMIT, and then a new cycle starts within about 
five seconds.

There are also messages like these:

--------------------------------------
2005-02-20 19:07:42 [698] LOG:  statement: VACUUM programretention
2005-02-20 19:07:42 [698] WARNING:  skipping "programretention" --- only 
table or database owner can vacuum it
2005-02-20 19:07:42 [698] LOG:  statement: VACUUM hostretention
2005-02-20 19:07:42 [698] WARNING:  skipping "hostretention" --- only 
table or database owner can vacuum it
2005-02-20 19:07:42 [698] LOG:  statement: VACUUM serviceretention
2005-02-20 19:07:42 [698] WARNING:  skipping "serviceretention" --- only 
table or database owner can vacuum it
---------------------------------------


This looks like quite a lot of activity to me, but still doesn't explain 
the high load. I have around four hosts and 25 services in total.