Bug 445377

Summary: RHEL5 cmirror tracker: resync ops can cause invalid header messages from clogd
Product: Red Hat Enterprise Linux 5 Reporter: Corey Marthaler <cmarthal>
Component: cmirrorAssignee: Jonathan Earl Brassow <jbrassow>
Status: CLOSED ERRATA QA Contact: Cluster QE <mspqa-list>
Severity: low Docs Contact:
Priority: low    
Version: 5.3CC: agk, ccaulfie, dwysocha, edamato, heinzm, mbroz
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-01-20 21:27:19 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Corey Marthaler 2008-05-06 15:39:21 UTC
Description of problem:
I've got a testcase that verifies if the copy percents are properly changing as
a result of mirror resync operations. I've noticed that when I run this
testcase, I'll see the following message over and over after certain operations
(usually it's after the volume activation).

Test output:
 SCENARIO - [mirror_resynchronization]
Create mirrors and resync them
Creating nosync mirror...
  WARNING: New mirror won't be synchronised. Don't read what you didn't write!
Verifing percent is finished at 100%

Creating regular mirror...
Verifing copy percent 14% is 0% < x < 100%

Deactivating resync_regular mirror
Deactivating resync_nosync mirror

Resyncing resync_regular mirror
Resyncing resync_nosync mirror

Activating resync_regular mirror
Activating resync_nosync mirror

Verifying regular percent 53% is greater than before 14%
Verifying nosync percent 53% is now less than 100%

Deactivating resync_nosync mirror
Resyncing resync_nosync mirror
Activating resync_nosync mirror

Verifying nosync percent 2% is less than than before 53%
Deactivating mirror resync_nosync... and removing
Deactivating mirror resync_regular... and removing

Here's the message seen:
May  5 17:13:35 hayes-02 qarshd[14173]: Running cmdline: lvchange -ay
mirror_sanity/resync_regular
May  5 17:13:35 hayes-02 clogd[3171]: Header not valid
May  5 17:13:35 hayes-02 clogd[3171]:   magic     : 0  (expected: 4d695272)
May  5 17:13:35 hayes-02 clogd[3171]:   version   : 0
May  5 17:13:35 hayes-02 clogd[3171]:   nr_regions: 0
May  5 17:13:35 hayes-02 clogd[3171]: *** Invalid argument ***


Version-Release number of selected component (if applicable):
2.6.18-92.el5
[root@hayes-02 ~]# rpm -qi lvm2-cluster
Name        : lvm2-cluster                 Relocations: (not relocatable)
Version     : 2.02.32                           Vendor: Red Hat, Inc.
Release     : 4.el5                         Build Date: Wed 02 Apr 2008 03:56:50
AM CDT
Install Date: Mon 05 May 2008 11:27:34 AM CDT      Build Host:
hs20-bc2-3.build.redhat.com

[root@hayes-02 ~]# rpm -qi cmirror
Name        : cmirror                      Relocations: (not relocatable)
Version     : 1.1.15                            Vendor: Red Hat, Inc.
Release     : 1.el5                         Build Date: Thu 28 Feb 2008 01:04:29
PM CST
Install Date: Mon 05 May 2008 12:01:16 PM CDT      Build Host:
hs20-bc1-7.build.redhat.com

[root@hayes-02 ~]# rpm -qi kmod-cmirror
Name        : kmod-cmirror                 Relocations: (not relocatable)
Version     : 0.1.8                             Vendor: Red Hat, Inc.
Release     : 1.el5                         Build Date: Thu 28 Feb 2008 01:01:13
PM CST
Install Date: Mon 05 May 2008 12:01:16 PM CDT      Build Host:
ls20-bc1-14.build.redhat.com


How reproducible:
Often

Comment 1 Jonathan Earl Brassow 2008-05-07 19:51:06 UTC
Simpler instructions:

1) lvcreate -m1 -L 500M -n lv vg
2) lvchange -an vg/lv
3) lvchange --resync vg/lv
4) lvchange -ay vg/lv # BUG



Comment 2 Jonathan Earl Brassow 2008-05-07 19:59:41 UTC
commit 6bb8188b10227bb97a0fb1cbca88e5fc9a236f2a
Author: Jonathan Brassow <jbrassow>
Date:   Wed May 7 14:55:48 2008 -0500

    clogd:  Remove scary print statements that show up on --resync

    When LVM creates mirrors, it is kind enough to initialize the
    log.  However, when a 'lvchange --resync' is issued to resync
    a mirror, it simply wipes the log instead of reinitializing it.
    The log server was responding to this by issuing a warning that
    it couldn't read a valid log header.  This is not a problem,
    because it simply reinitializes it on its own... so the messages
    served no purpose.

    LVM should probably be consistent and initialize the log when
    a --resync is issued though.


Comment 3 Corey Marthaler 2008-08-25 21:25:59 UTC
Fix verified.

Comment 5 errata-xmlrpc 2009-01-20 21:27:19 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHEA-2009-0158.html