<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:43:45 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-4553] LFSCK 5: LFSCK behaviour if an OST is permanently unavailable</title>
                <link>https://jira.whamcloud.com/browse/LU-4553</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;We had a discussion during the 2.6 testing concall about what the behaviour of LFSCK is, or should be, if there an OST that is permanently unavailable?  &lt;/p&gt;

&lt;p&gt;If the administrator has permanently marked the OST inactive, will LFSCK ever be able to complete?&lt;/p&gt;

&lt;p&gt;Will it be able to detect and report objects that are on the failed OST?  Is there an option to delete such files?&lt;/p&gt;

&lt;p&gt;Will it create new objects on a different OST?&lt;/p&gt;

&lt;p&gt;If there are no files referencing objects on the inactive OST (e.g. if administrator has previously run &quot;lfs getstripe -O {OST}&quot; or LFSCK to find and delete such files) will it be possible for LFSCK to complete?&lt;/p&gt;</description>
                <environment></environment>
        <key id="22906">LU-4553</key>
            <summary>LFSCK 5: LFSCK behaviour if an OST is permanently unavailable</summary>
                <type id="4" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11310&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.whamcloud.com/images/icons/priorities/major.svg">Major</priority>
                        <status id="1" iconUrl="https://jira.whamcloud.com/images/icons/statuses/open.png" description="The issue is open and ready for the assignee to start work on it.">Open</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="wc-triage">WC Triage</assignee>
                                    <reporter username="adilger">Andreas Dilger</reporter>
                        <labels>
                    </labels>
                <created>Tue, 28 Jan 2014 18:26:04 +0000</created>
                <updated>Wed, 13 Feb 2019 07:17:41 +0000</updated>
                                            <version>Lustre 2.6.0</version>
                                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                            <comments>
                            <comment id="75834" author="yong.fan" created="Wed, 29 Jan 2014 03:50:29 +0000"  >&lt;p&gt;According to current implementation, it allows to run lfsck_layout on part of OSTs, means as long as at least 1 OST joined the lfsck_layout, the scanning can start. If the LFSCK found that some OST-object exists on the OST which does not join the lfsck_layout (may be permanently unavailable, or crashed during the LFSCK scanning), it will add some flags, and continue the scanning, but the last status will be &quot;incomplete&quot; because some OST-objects have not been verified.&lt;/p&gt;

&lt;p&gt;Currently, the LFSCK can detect the case of missed some OST(s), but it will neither delete related file(s) nor related OST-object(s), it also cannot create new OST-object on different OST, because it does not know the data of the original OST-object.&lt;/p&gt;</comment>
                            <comment id="77064" author="yong.fan" created="Fri, 14 Feb 2014 07:34:04 +0000"  >&lt;p&gt;&amp;gt; We had a discussion during the 2.6 testing concall about what the behaviour of LFSCK is, or should be, if there an OST that is permanently unavailable?&lt;br/&gt;
The LFSCK should go ahead in spite of whether some OST(s) not join the LFSCK or not. It is necessary for a larger cluster. It is current implementation.&lt;/p&gt;


&lt;p&gt;&amp;gt; If the administrator has permanently marked the OST inactive, will LFSCK ever be able to complete?&lt;br/&gt;
The LFSCK still can complete even if some OST(s) not join the LFSCK or failed during the LFSCK. It is current implementation.&lt;/p&gt;


&lt;p&gt;&amp;gt; Will it be able to detect and report objects that are on the failed OST? Is there an option to delete such files?&lt;br/&gt;
Current implementation can detect the object which references failed OST, but it does not support to delete such file/object. It is not trouble to add option to support that. There are some dangerous to delete such file/objet, because it is not easy for the LFSCK to distinguish whether the OST is really permanently removed or just failed temporarily. So should we support that?&lt;/p&gt;


&lt;p&gt;&amp;gt; Will it create new objects on a different OST?&lt;br/&gt;
Is it enough to crate new object on a different OST? how to process the data stored on original OST?&lt;/p&gt;


&lt;p&gt;&amp;gt; If there are no files referencing objects on the inactive OST (e.g. if administrator has previously run &quot;lfs getstripe -O &lt;/p&gt;
{OST}
&lt;p&gt;&quot; or LFSCK to find and delete such files) will it be possible for LFSCK to complete?&lt;br/&gt;
Yes.&lt;/p&gt;</comment>
                            <comment id="81132" author="yong.fan" created="Mon, 7 Apr 2014 17:53:33 +0000"  >&lt;p&gt;Andreas, what do you want me to do next step for this ticket?&lt;/p&gt;</comment>
                            <comment id="81502" author="adilger" created="Sun, 13 Apr 2014 22:04:07 +0000"  >&lt;p&gt;Make sure that the process in the Lustre manual is correct for deleting files with stripes on the removed OST using &quot;lfs find&quot;.  This partly relates to &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-1738&quot; title=&quot;lfs find cannot find files in OST that died, whilst lfs getstripe can&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-1738&quot;&gt;&lt;del&gt;LU-1738&lt;/del&gt;&lt;/a&gt; so that users/admins can find all files on the failed OST(s) and delete them.&lt;/p&gt;</comment>
                            <comment id="81503" author="adilger" created="Sun, 13 Apr 2014 22:07:21 +0000"  >&lt;p&gt;Preferred solution is to add an option to LFSCK to delete all files on the specified OST index, which it will verify is currently marked inactive and/or not present in the filesystem configuration.&lt;/p&gt;</comment>
                            <comment id="81803" author="yong.fan" created="Thu, 17 Apr 2014 06:19:28 +0000"  >&lt;p&gt;To make the LFSCK robust enough, we allow the LFSCK to run with some OSTs unavailable (or not join the LFSCK). It is normal that some OSTs may mount up after the LFSCK started. So from the LFSCK view, even if some stipe resides on some OST which is not up yet, the LFSCK cannot know whether the target OST is really permanently unavailable or not. To be safe, I prefer to make another &quot;lfs destroy&quot; tool to delete the files on specified OST, in spite of it is permanently unavailable or not. It seems more clean for me.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="15473">LU-1738</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="13763">LU-1267</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <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|hzwds7:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>12441</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>