On Fri, 20 Jan 2017 10:38:25 -0600 Ken Gaillot <[email protected]> wrote:
> On 01/20/2017 09:47 AM, Jehan-Guillaume de Rorthais wrote: > > On Fri, 20 Jan 2017 09:16:51 -0600 > > Ken Gaillot <[email protected]> wrote: > > > >> On 01/20/2017 08:16 AM, Jehan-Guillaume de Rorthais wrote: > >>> Hi all, > >>> > >>> While working on a patch in regard with the recent fix for > >>> OCF_RESKEY_CRM_meta_notify_active_* in 1.1.16, I found another strange > >>> behavior with the "notify_inactive_uname" variable: it seems it just never > >>> exists whatever I do. It is not even empty, just not existing. > >>> > >>> I did multiple tests with a node hosting 0 resources, a node in standby, > >>> etc. Each time triggering some cluster action while the node was already > >>> hosting no resources. > >>> > >>> Note that "notify_inactive_resource" do exists, either empty or filled > >>> with stopped resources. > >>> > >>> While grep'ing in my debug files, I find 29 "notify_inactive_resource", 0 > >>> "notify_inactive_uname": > >>> > >>> # cat test-148492* | grep inactive | sort | uniq -c > >>> 29 OCF_RESKEY_CRM_meta_notify_inactive_resource = ''pgsqld:2'' > >>> > >>> Shouldn't it at least exists? Even with an empty value as other notify > >>> variables? > >>> > >>> According to Pacemaker documentation, "notify_*_resource" and > >>> "notify_*_uname" come in pairs, so I guess if a resource is listed in > >>> "notify_inactive_resource" it should have a corresponding entry in > >>> "notify_inactive_uname", isn't it? > >>> > >>> Thank you for your help! > >>> > >>> Regards, > >> > >> The documentation could be clarified ... > >> > >> Each *_uname variable lists the nodes that the corresponding *_resource > >> entries are running on. Since inactive resources aren't running on any > >> node, that's the only *_resource variable that doesn't have a matching > >> *_uname. > > > > Indeed, that's what I was wondering. > > > >> In other words, inactive_uname would not be a list of inactive nodes, > >> nor a list of nodes not running the inactive resources, it would be a > >> list of nodes running the inactive resources. > > > > You lost me :) > > > > If these resources are "inactive", how could they run on a node? Are you > > talking about resources with a "target-role=Stopped" with a location > > constraint on a node? > > > > Moreover, why the var doesn't exist with en empty value like the other ones? > > > > Thanks, > > > > Regards, > > They can't, that's why the variable doesn't exist. :-) I was just trying > to point out that the *_uname variables' intended meaning is logically > impossible with inactive_resources. Oh. So I guess we should remove all references to this variable from the documentation? http://clusterlabs.org/doc/en-US/Pacemaker/1.1/html/Pacemaker_Explained/_clone_resource_agent_requirements.html http://clusterlabs.org/doc/en-US/Pacemaker/1.1/html/Pacemaker_Explained/_requirements_for_multi_state_resource_agents.html http://clusterlabs.org/doc/en-US/Pacemaker/1.1/html/Pacemaker_Explained/ix01.html And maybe add your own explanation: « Each *_uname variable lists the nodes that the corresponding *_resource entries are running on. Since inactive resources aren't running on any node, that's the only *_resource variable that doesn't have a matching *_uname. » I'll make a patch proposal for documentation through github soon. Thanks, _______________________________________________ Developers mailing list [email protected] http://lists.clusterlabs.org/mailman/listinfo/developers
