<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:53:26 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Whamcloud Community JIRA</title>
    <link>https://jira.whamcloud.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.4.14</version>
        <build-number>940014</build-number>
        <build-date>05-12-2023</build-date>
    </build-info>


<item>
            <title>[LU-5662] mkfs.lustre --replace can cause index numbers to be locked out</title>
                <link>https://jira.whamcloud.com/browse/LU-5662</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Running mkfs.lustre with the --replace flag causes a difficult-to-untangle lockout situation if the lustre MDS has never seen the index before.&lt;/p&gt;

&lt;p&gt;I stumbled across this while scripting the reformatting operations of a test system. In this process, I ended up reformatting a completely new OST for the first time, using the --replace flag.&lt;/p&gt;

&lt;p&gt;When I did this, the attempt to mount the OST on the OSS resulted in the following failure message:&lt;/p&gt;

&lt;p&gt;mount.lustre: mount /dev/sdae at /lustre/ost6 failed: No such file or directory&lt;br/&gt;
Is the MGS specification correct?&lt;br/&gt;
Is the filesystem name correct?&lt;/p&gt;

&lt;p&gt;Once this has happened, the MDS seems to be stuck in a halfway state, and there is no easy way recover use of the index number. If you reformat (again) with --replace specified, the error persists. If you reformat (again) with --replace absent, you get the following error on mount:&lt;/p&gt;

&lt;p&gt;mount.lustre: mount /dev/sdac at /lustre/ost4 failed: Address already in use&lt;br/&gt;
The target service&apos;s index is already in use. (/dev/sdac)&lt;/p&gt;

&lt;p&gt;Workaround is to dismount all Lustre disks, shut down lustre with lustre_rmmod, and then remount all disks.&lt;/p&gt;

&lt;p&gt;This is similar to the -U versus -i flag in the rpm command. Technically, -U should not be used if the RPM has never been installed before, but the rpm command is intelligent enough to interpret -U as meaning -i if there is no prior installed version of the RPM. What rpm should certainly NOT do is to treat a technical misuse of -U on an uninstalled module as a persistent error that prevents subsequent use of either -U or -i on that module without a full reboot of Linux.&lt;/p&gt;

&lt;p&gt;There are numerous ways to fix this. The simplest from a user perspective is this: if a formatted OST is flagged with --replace, then when mounting, the MDS should recognize it has never seen the index before, and simply ignore the --replace tag. This would be the analogue of rpm seeing the -U flag, recognizing that it has never seen the RPM before, and simply treating -U as -i.&lt;/p&gt;</description>
                <environment>RHEL 6.5, Lustre 2.5.3</environment>
        <key id="26608">LU-5662</key>
            <summary>mkfs.lustre --replace can cause index numbers to be locked out</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="4" iconUrl="https://jira.whamcloud.com/images/icons/priorities/minor.svg">Minor</priority>
                        <status id="5" iconUrl="https://jira.whamcloud.com/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="10100">Low Priority</resolution>
                                        <assignee username="jfc">John Fuchs-Chesney</assignee>
                                    <reporter username="amitin">Alexander Mitin</reporter>
                        <labels>
                    </labels>
                <created>Wed, 17 Sep 2014 14:37:42 +0000</created>
                <updated>Wed, 6 Jan 2016 00:23:29 +0000</updated>
                            <resolved>Wed, 6 Jan 2016 00:23:29 +0000</resolved>
                                    <version>Lustre 2.5.3</version>
                                                        <due></due>
                            <votes>0</votes>
                                    <watches>5</watches>
                                                                            <comments>
                            <comment id="94252" author="jfc" created="Wed, 17 Sep 2014 15:43:43 +0000"  >&lt;p&gt;Joseph,&lt;/p&gt;

&lt;p&gt;Can you let us know if you are using IML? (Generally we&apos;d expect IML to replace the need for this kind of scripting).&lt;/p&gt;

&lt;p&gt;Thanks,&lt;br/&gt;
~ jfc.&lt;/p&gt;</comment>
                            <comment id="94259" author="jnemeth" created="Wed, 17 Sep 2014 16:08:04 +0000"  >&lt;p&gt;Not using IML.&lt;/p&gt;</comment>
                            <comment id="94269" author="adilger" created="Wed, 17 Sep 2014 16:34:17 +0000"  >&lt;p&gt;Joseph,&lt;br/&gt;
the &lt;tt&gt;mkfs.lustre --replace&lt;/tt&gt; option is intended to be used in extraordinary circumstances only (i.e. if an OST has suffered fatal corruption without any chance of recovery and needs to be replaced). I agree that it should be more robust in the case you describe, but I just wanted to make sure that you are using it appropriately. &lt;/p&gt;</comment>
                            <comment id="94272" author="jnemeth" created="Wed, 17 Sep 2014 16:46:01 +0000"  >&lt;p&gt;Understood.&lt;/p&gt;

&lt;p&gt;I&apos;m in a test environment where I will be breaking down and building up Lustre frequently, and after testing, anticipate needing to restart from zero: the simplest way to do this is to reformat the disks, which would normally include the MDTs as well.&lt;/p&gt;

&lt;p&gt;However, in stumbling through my first attempts to make this easier for myself in the future, I tripped over this bug, where using --replace in the case of a disk which has never before been formatted effectively burns the index number: you can&apos;t recover from the mistake by reformatting, because, somehow, Lustre &quot;remembers&quot; that you screwed up. I thought it should be documented.&lt;/p&gt;</comment>
                            <comment id="94471" author="adilger" created="Thu, 18 Sep 2014 23:52:28 +0000"  >&lt;p&gt;Thanks for the update.  I wasn&apos;t sure if there was some use that we hadn&apos;t anticipated, so it is good to know that this is an unlikely scenario.  I think this should be fixed at some point since it may be possible to hit this under normal usage also, but it doesn&apos;t sound urgent.&lt;/p&gt;</comment>
                            <comment id="94475" author="jnemeth" created="Fri, 19 Sep 2014 00:21:11 +0000"  >&lt;p&gt;No problem. And I agree, it isn&apos;t urgent.&lt;/p&gt;</comment>
                            <comment id="99589" author="jfc" created="Wed, 19 Nov 2014 17:14:17 +0000"  >&lt;p&gt;Is this ticket ready to be marked as resolved?&lt;/p&gt;

&lt;p&gt;Thanks,&lt;br/&gt;
~ jfc.&lt;/p&gt;</comment>
                            <comment id="99590" author="jnemeth" created="Wed, 19 Nov 2014 17:21:31 +0000"  >&lt;p&gt;I&apos;ve not seen any resolution. It&apos;s still a (low priority) bug.&lt;/p&gt;</comment>
                            <comment id="99604" author="jfc" created="Wed, 19 Nov 2014 19:08:35 +0000"  >&lt;p&gt;Assigned back to me.&lt;br/&gt;
~ jfc.&lt;/p&gt;</comment>
                            <comment id="138014" author="jfc" created="Wed, 6 Jan 2016 00:23:29 +0000"  >&lt;p&gt;I&apos;m marking this as resolved/low priority, since it is a rare/unanticipated case, and an unintended use of the mkfs.lustre --replace command.&lt;/p&gt;

&lt;p&gt;If anyone disagrees, please shout.&lt;/p&gt;

&lt;p&gt;~ jfc.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                            <customfield id="customfield_10890" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10390" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hzwwgn:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>15764</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10060" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Severity</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10022"><![CDATA[3]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>