<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 03:28:36 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-16623] lod_statfs_and_check() does not skip unusable OSTs</title>
                <link>https://jira.whamcloud.com/browse/LU-16623</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;The &lt;tt&gt;LOV_USES_DEFAULT_STRIPE&lt;/tt&gt; flag is never set during OST object allocation, so &lt;tt&gt;min_stripe_count()&lt;/tt&gt; does not allow reducing the stripe count set on a file.  This can result  in the MDS trying to allocate objects on too many OSTs, especially when the space is imbalanced, or OSTs are deactivated by &quot;&lt;tt&gt;osp.&amp;#42;.max_create_count=0&lt;/tt&gt;&quot;.&lt;/p&gt;

&lt;p&gt;It also appears that &lt;tt&gt;lod_statfs_and_check()&lt;/tt&gt; is expecting &lt;tt&gt;lod_statfs_check()&lt;/tt&gt; to only return &lt;tt&gt;-ENOSPC&lt;/tt&gt;, so it isn&apos;t skipping an OST when it is mounted read-only or when &lt;tt&gt;max_create_count=0&lt;/tt&gt;.  It would probably be better to change &lt;tt&gt;lod_statfs_and_check()&lt;/tt&gt; to skip the OST if &lt;tt&gt;lod_statfs_check()&lt;/tt&gt; returns any error, since all of them are reasons to skip an OST.&lt;/p&gt;

&lt;p&gt;Also, it appears that the merged MDT and OST QOS allocation does skip MDTs marked with &lt;tt&gt;OS_STATFS_ENOINO&lt;/tt&gt;.  &lt;/p&gt;</description>
                <environment></environment>
        <key id="74967">LU-16623</key>
            <summary>lod_statfs_and_check() does not skip unusable OSTs</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="3" iconUrl="https://jira.whamcloud.com/images/icons/priorities/major.svg">Major</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="1">Fixed</resolution>
                                        <assignee username="adilger">Andreas Dilger</assignee>
                                    <reporter username="adilger">Andreas Dilger</reporter>
                        <labels>
                    </labels>
                <created>Tue, 7 Mar 2023 21:00:40 +0000</created>
                <updated>Tue, 23 Jan 2024 07:00:34 +0000</updated>
                            <resolved>Wed, 14 Jun 2023 21:56:29 +0000</resolved>
                                    <version>Lustre 2.16.0</version>
                                    <fixVersion>Lustre 2.16.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>5</watches>
                                                                            <comments>
                            <comment id="365156" author="adilger" created="Tue, 7 Mar 2023 22:08:31 +0000"  >&lt;p&gt;I think I see a larger problem with the way that the &lt;tt&gt;lod_statfs_check()&lt;/tt&gt; is being handled.  Not only did &lt;tt&gt;lod_statfs_and_check()&lt;/tt&gt; only check for &lt;tt&gt;-ENOSPC&lt;/tt&gt; being returned (which wasn&apos;t true when &lt;tt&gt;OS_STATFS_NOPRECREATE&lt;/tt&gt; was returned when &lt;tt&gt;max_create_count=0&lt;/tt&gt; is set), but for any &lt;b&gt;other&lt;/b&gt; return code, the OST would be marked inactive (&lt;tt&gt;ltd_active = 0&lt;/tt&gt;) in the later part of this function, which means that &lt;tt&gt;OST_DESTROY&lt;/tt&gt; RPCs would not be sent and in general the MDS would stop sending any RPCs to this OST:&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;(lod_qos.c:200:lod_statfs_and_check()) Process entered
(osp_dev.c:779:osp_statfs()) testfs-OST0000-osc-MDT0000: 78276 blocks, 76593 free, 69736 avail, 100000 files, 98890 free files
(lod_qos.c:236:lod_statfs_and_check()) testfs-OST0000-osc-MDT0000: turns inactive  *******
(lod_qos.c:263:lod_statfs_and_check()) Process leaving (rc=18446744073709551511 : -105 : ffffffffffffff97)
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="365310" author="adilger" created="Wed, 8 Mar 2023 23:04:24 +0000"  >&lt;p&gt;OK, I may have confused &lt;tt&gt;ltd_active=0&lt;/tt&gt; with deactivating the whole device with &quot;&lt;tt&gt;lctl set_param osp.&amp;#42;.active=0&lt;/tt&gt;&quot;.  Setting &lt;tt&gt;max_create_count=0&lt;/tt&gt; &lt;b&gt;does&lt;/b&gt; set &lt;tt&gt;ltd_active=0&lt;/tt&gt; and reduce the value reported by &lt;tt&gt;lod.&amp;#42;.activeobd&lt;/tt&gt; once some file tries to be created on that MDT, which is &lt;b&gt;also&lt;/b&gt; done by setting &quot;&lt;tt&gt;lctl set_param osp.&amp;#42;.active=0&lt;/tt&gt;.  &lt;/p&gt;

&lt;p&gt;One open question is why that is done for &lt;tt&gt;OS_STATE_NOPRECREATE&lt;/tt&gt; but not consistently &lt;tt&gt;OS_STATE_ENOSPC&lt;/tt&gt; or &lt;tt&gt;OS_STATE_ENOINO&lt;/tt&gt;?  Also, the &lt;tt&gt;ldt_active&lt;/tt&gt; field is used for other things in the LOD code, for example controlling whether &lt;tt&gt;lod_sync()&lt;/tt&gt; will send a sync RPC to the OST/MDT, and controls llog config and set_info calls. &lt;/p&gt;</comment>
                            <comment id="365447" author="gerrit" created="Fri, 10 Mar 2023 00:36:44 +0000"  >&lt;p&gt;&quot;Andreas Dilger &amp;lt;adilger@whamcloud.com&amp;gt;&quot; uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/50250&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/50250&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16623&quot; title=&quot;lod_statfs_and_check() does not skip unusable OSTs&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16623&quot;&gt;&lt;del&gt;LU-16623&lt;/del&gt;&lt;/a&gt; lod: handle object allocation consistently&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: eddaa4e00a06d30033b51573e9a7cf3236dbcaf7&lt;/p&gt;</comment>
                            <comment id="375451" author="gerrit" created="Wed, 14 Jun 2023 21:40:00 +0000"  >&lt;p&gt;&quot;Oleg Drokin &amp;lt;green@whamcloud.com&amp;gt;&quot; merged in patch &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/50250/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/50250/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16623&quot; title=&quot;lod_statfs_and_check() does not skip unusable OSTs&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16623&quot;&gt;&lt;del&gt;LU-16623&lt;/del&gt;&lt;/a&gt; lod: handle object allocation consistently&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: ced540165ef573570b8a8cba6e43f79e5fc6539f&lt;/p&gt;</comment>
                            <comment id="375462" author="pjones" created="Wed, 14 Jun 2023 21:56:29 +0000"  >&lt;p&gt;Landed for 2.16&lt;/p&gt;</comment>
                            <comment id="399050" author="gerrit" created="Tue, 9 Jan 2024 22:32:59 +0000"  >&lt;p&gt;&quot;Andreas Dilger &amp;lt;adilger@whamcloud.com&amp;gt;&quot; uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/53628&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/53628&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16623&quot; title=&quot;lod_statfs_and_check() does not skip unusable OSTs&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16623&quot;&gt;&lt;del&gt;LU-16623&lt;/del&gt;&lt;/a&gt; tests: interop sanity-flr/202 sanity-pfl/15&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_15&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 3ce12e111df7421699a938a975dc5860f16306d6&lt;/p&gt;</comment>
                            <comment id="400728" author="gerrit" created="Tue, 23 Jan 2024 07:00:34 +0000"  >&lt;p&gt;&quot;Jian Yu &amp;lt;yujian@whamcloud.com&amp;gt;&quot; uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/53774&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/53774&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16623&quot; title=&quot;lod_statfs_and_check() does not skip unusable OSTs&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16623&quot;&gt;&lt;del&gt;LU-16623&lt;/del&gt;&lt;/a&gt; lod: handle object allocation consistently&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_15&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: f31275d578c86de8d1f3ed05b5041b10298eb421&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="71157">LU-16014</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="75107">LU-16648</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="56556">LU-12624</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="77140">LU-16981</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="78415">LU-17199</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="74743">LU-16578</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="76816">LU-16938</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </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|i03ftr:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</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>