Description of problem: [root@morph-01 root]# cat /proc/cluster/nodes Node Votes Exp Sts Name 1 1 6 M morph-04 2 1 6 M morph-05 3 1 6 M morph-06 4 1 6 M morph-03 5 1 6 M morph-02 6 1 6 M morph-01 [root@morph-01 root]# cat /proc/cluster/services Service Name GID LID State Code Fence Domain: "default" 1 2 run - [1 6 4 3 2 5] [root@morph-01 root]# lock_gulmd -s morph-01,morph-03,morph-05 -n morph-cluster [root@morph-01 root]# gulm_tool getstats morph-01 I_am = Master quorum_has = 3 quorum_needs = 2 rank = 0 quorate = true GenerationID = 1103575624978377 run time = 343 pid = 2225 verbosity = Default failover = enabled [root@morph-01 root]# clvmd clvmd could not connect to cluster manager Consult syslog for more information SYSLOG: Dec 20 14:49:22 morph-01 clvmd: Unable to create lockspace for CLVM: No such device Version-Release number of selected component (if applicable): Dec 20 14:42:53 morph-01 kernel: Gulm <CVS> (built Dec 20 2004 13:23:01) installed How reproducible: Always
FWIW, you can get clvmd to start by removing /dev/misc/dlm-control. Good times. I noticed this testing GNBD too. [root@link-10 root]# cat /proc/cluster/services Service Name GID LID State Code Fence Domain: "default" 1 2 run - [1 3 2] [root@link-10 root]# lock_gulmd -s link-10,link-11,link-12 -n MILTON [root@link-10 root]# gulm_tool getstats link-10 I_am = Arbitrating quorum_has = 1 quorum_needs = 2 rank = 0 quorate = false GenerationID = 1103650138075131 run time = 9 pid = 4415 verbosity = Default failover = enabled [root@link-10 root]# clvmd clvmd could not connect to cluster manager Consult syslog for more information [root@link-10 root]# rm /dev/misc/dlm-control rm: remove character special file `/dev/misc/dlm-control'? y [root@link-10 root]# clvmd [root@link-10 root]#
Oh, Side_show_ Bob. A little confusion on this. I was thinking of running a GuLM locked filesystem on top of CLVMD (which was in turn locked by dlm). That works just fine. The issue here is using GuLM as the lock manager for CLVM itself; nothing to do with the filesystem running on top of it.
to clarify... dlm locking clvm = good gulm locking clvm = bad dlm locking clvm AND gulm lock GFS = good
when built with ./configure --with-clvmd=gulm --with-cluster=shared what happens is that clvmd starts but the first thing to attempt a lock (like vgchange) hangs.
one more thing... thus, the clvm lock manager type should be a run time option rather than a compile time option.
Derek, The behavior that you mentioned in comment #1 should be fixed now (see bug #138491)
It sounds like the daemon hasn't built correctly and there are bits of DLM and bits of GULM in it. Was this from a clean source tree ? Can you build it with DEBUG enabled and run it -d, then attach the output please.
Stupid typo clvmd was ignoring the first node in ccs, it works for me now. Checking in daemons/clvmd/clvmd-gulm.c; /cvs/lvm2/LVM2/daemons/clvmd/clvmd-gulm.c,v <-- clvmd-gulm.c new revision: 1.4; previous revision: 1.3 done
fix verified.