[Linux-cluster] CCA Partition Invisible from 2nd Node

Wendy Cheng wcheng at redhat.com
Sun Sep 11 03:52:40 UTC 2005


On Sat, 2005-09-10 at 16:26 +0100, Steve Nelson wrote:

> However, I have subeseqently re-run pool_assemble -a on the secondary
> node, and now I see the partition.
> 
> My question now is why this was necessary.  In order, these were my steps:
> 
> 1) Write pool configs
> 2) On primary: pool_tool -c
> 3) On primary: pool_assemble -a
> 4) On secondary: pool_assemble -a
> 5) Write ccs files
> 6) On primary: ccs_tool create
> 7) On primary: restart ccsd - fine.
> 8) On secondary: restart ccsd - can't see cca partition.
> 9) <fx> Think and ask for help </fx>
> 10) On secondary: Re-run pool_assemble -a - now can see cca partition.
> 11) On secondary: Restart ccsd  - fine.
> 
> Is this abberant behaviour?  I am surprised I would need to run
> pool_assemble twice, after creating the cluster archive.

Just quickly browsed thru the pool code. Look to me that "pool_tool -
c" (create) does its write (to disk) without a sync flag (O_SYNC). So my
guess is that the primary node didn't have a chance to flush its data
into the disk before you issued "pool_assemble -a" in step 4. The disk
scan missed the pool info in your first try. By the time you did step
10, the flush in primary node (linux io is write-behind) had happened.

Just a guess but I'll talk to our developer to confirm. If it is true,
may be we can add a sync (code) to avoid this problem in the future.

BTW, Red Hat manual encourages people doing a "pool_tool -s" +
"pool_info" to make sure the node can see the pool before starting
ccsd.  

-- Wendy




More information about the Linux-cluster mailing list