[Pacemaker] Notification messages - 1150184

Andrew Beekhof andrew at beekhof.net
Mon Oct 27 23:48:55 EDT 2014


> On 28 Oct 2014, at 2:47 pm, Andrei Borzenkov <arvidjaar at gmail.com> wrote:
> 
> В Tue, 28 Oct 2014 14:31:17 +1100
> Andrew Beekhof <andrew at beekhof.net> пишет:
> 
>> 
>>> On 28 Oct 2014, at 7:36 am, Neale Ferguson <neale at sinenomine.net> wrote:
>>> 
>>> I am getting loads of these types of messages in syslog:
>>> 
>>> Oct 27 16:23:47 rh7cn1 systemd: pacemaker.service: Got notification
>>> message from PID 43007, but reception only permitted for PID 17131
>>> 
>>> 
>>> PID 43007 refers to the https resource and 17131 to pacemakerd.
>>> 
>>> A search on this type of message shows a similar question on this list
>>> from March 2014 but no resolution. The RH Bugzilla system has 1150184 in
>>> the system that was last updated Oct 7 but it is restricted, so I was
>>> wondering if anyone knows of the progress on this issue?
>> 
>> httpd.service uses 'Type=notify'
>> 
>> 
>> Type=
>>  Configures the process start-up type for this service unit. One of simple, forking, oneshot, dbus, notify or idle.
>> 
>> 
>>  Behavior of notify is similar to simple; however, it is expected that the daemon sends a notification message via sd_notify(3) or an equivalent call when it has finished starting up. systemd will proceed with starting follow-up units after this notification message has been sent. If this option is used, NotifyAccess= (see below) should be set to open access to the notification socket provided by systemd. If NotifyAccess= is not set, it will be implicitly set to main.
>> 
>>  If set to simple (the default value if neither Type= nor BusName= are specified), it is expected that the process configured with ExecStart= is the main process of the service. In this mode, if the process offers functionality to other processes on the system, its communication channels should be installed before the daemon is started up (e.g. sockets set up by systemd, via socket activation), as systemd will immediately proceed starting follow-up units.
>> 
>> 
>> Looking at the code, the message seems to be an older version of this:
>> 
>> ./src/core/service.c-2553-        if (s->notify_access == NOTIFY_MAIN && pid != s->main_pid) {
>> ./src/core/service.c-2554-                if (s->main_pid != 0)
>> ./src/core/service.c:2555:                        log_warning_unit(u->id, "%s: Got notification message from PID "PID_FMT", but reception only permitted for main PID "PID_FMT, u->id, pid, s->main_pid);
>> 
>> So rephrasing:
>> 
>>   Got notification message from httpd, but reception only permitted for pacemakerd
>> 
>> So it seems that systemd is calculating the wrong value for main_pid
>> 
> 
> It's also possible that httpd is defined as OCF resource instead of
> systemd ...

Neale? Are you running as OCF or systemd?



More information about the Pacemaker mailing list