Hide Forgot
Small doc improvement issue, conversation from IRC: <jkortus> kgaillot: is there any reason behind having CRM_alert_* and CRM_notify_* both present with the same values? <kgaillot> yes, in hindsight maybe we should have just stuck with CRM_notify_*. But CRM_notify_* is necessary to retain backward compatibility with scripts that were written for the ClusterMon resource. CRM_alert_* was added to be consistent with the new terminology <kgaillot> theoretically in some distant future we could drop CRM_notify_*, but we like to keep compatibility as long as possible * vsira has quit (Ping timeout: 180 seconds) <jkortus> it's a bit confusing <jkortus> IIRC the docs also mentions them both without any note of why they differ <jkortus> kgaillot: should we sync it to CRM_alert_* then? <jkortus> for anything pcs alert related <jkortus> with a note that for backward compatibility notify_* equivalents are also present <kgaillot> exactly <jkortus> slevine: ^ can you grab it from here or shall I update docs bugs? <kgaillot> i heard he was pto this week, but i could be wrong <slevine> kgaillot jkortus: I'm heading on PTO in an hour or so. I'm currently remote in NYC <slevine> I can make this my final task before leaving for the airport! <kgaillot> :-) <slevine> jkortus: For administration's sake, I'll right now open a separate bug (and then I can put it on my "current sprint" for the trello board and it won't get forgotten while I'm gone)
Just to clarify on the subject line, there are no redundant notifications, just redundant entries (duplicates if you wish) with different names in one notification.
For documentation I consider the way "Pacemaker Explained" is handling the issue appealing: Document just the new interface in detail and have a note about compatibility: "The alerts interface is designed to be backward compatible with the external scripts interface used by the ocf:pacemaker:ClusterMon resource, which is now deprecated. To preserve this compatibility, the environment variables passed to alert agents are available prepended with CRM_notify_ as well as CRM_alert_. One break in compatibility is that ClusterMon ran external scripts as the root user, while alert agents are run as the hacluster user." That should naturally make people use the new interface ... The pacemaker implementation is done so that it is just about modifying a table to have either or the other interface - or both at the same time. That would even work on a per entry basis. At the moment I added the CRM_notify_* versions even for variables that are new with the alerts feature. If preferred for kind of "educative reasons" we could drop those though easily.
one more thing to note: if cluster contains resources which cannot fail (onfail=fence), there will be multiple fence notifications (one for each of these resources perhaps, plus one). Stonith decides to fence the node (is lost), crmd also decides to fence it (resource failed), each of them sends the notificaiton. Pacemaker joins these request to one actual fence operation, so there will be finally only one, no matter how many notifications were sent.
I filed this BZ in sort of a hurry just before getting on an airplane, so I didn't really check things out: The 7.3 version of the PCS Reference manual does include the note that Klaus noted in Comment 2, at the end of section 13.1.7 http://jenkinscat.gsslab.pnq.redhat.com:8080/job/doc-Red_Hat_Enterprise_Linux-7-High_Availability_Add-On_Reference%20%28html-single%29/lastSuccessfulBuild/artifact/tmp/en-US/html-single/index.html#s2-alertagentwrite-HAAR So it seems that all I need to do here is note what Jaroslav reports in Comment 3.
Jaroslav: Section 13.1.7 -- link in comment 4 -- already contains a note about the different alert notifications, and it now contains a last bullet point of considerations that summarizes comment 3. Does this address your concenrs? Steven
all looks good, thank you for taking care of it :)