<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:14:09 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-8045] MDT fails to allow client mounts if one MDT is not connected</title>
                <link>https://jira.whamcloud.com/browse/LU-8045</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;See &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-8044&quot; title=&quot;class_process_config() no device for: lustre-MDT0021-mdtlov&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-8044&quot;&gt;&lt;del&gt;LU-8044&lt;/del&gt;&lt;/a&gt;&lt;br/&gt;
With many MDTs, if MDT0000 cannot connect with one of the other MDTs, (perhaps only on initial startup, I don&apos;t know), MDT0000 appears to ignore connection requests from clients.&lt;/p&gt;

&lt;p&gt;Seems as if MDT0000 ought to be able to allow mounts, and the filesystem should simply function without the apparently broken MDT.&lt;/p&gt;</description>
                <environment>TOSS 2 (RHEL 6.7 based)&lt;br/&gt;
kernel 2.6.32-573.22.1.1chaos.ch5.4.x86_64&lt;br/&gt;
Lustre 2.8.0+patches 2.8-llnl-preview1&lt;br/&gt;
zfs-0.6.5.4-1.ch5.4.x86_64&lt;br/&gt;
1 MGS - separate server&lt;br/&gt;
40 MDTs - each on separate server&lt;br/&gt;
10 OSTs - each on separate server</environment>
        <key id="36258">LU-8045</key>
            <summary>MDT fails to allow client mounts if one MDT is not connected</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="3" iconUrl="https://jira.whamcloud.com/images/icons/statuses/inprogress.png" description="This issue is being actively worked on at the moment by the assignee.">In Progress</status>
                    <statusCategory id="4" key="indeterminate" colorName="inprogress"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="laisiyao">Lai Siyao</assignee>
                                    <reporter username="ofaaland">Olaf Faaland</reporter>
                        <labels>
                            <label>llnl</label>
                    </labels>
                <created>Tue, 19 Apr 2016 18:14:14 +0000</created>
                <updated>Tue, 7 Jun 2016 15:38:11 +0000</updated>
                                            <version>Lustre 2.8.0</version>
                                                        <due></due>
                            <votes>0</votes>
                                    <watches>5</watches>
                                                                            <comments>
                            <comment id="149444" author="ofaaland" created="Tue, 19 Apr 2016 18:21:07 +0000"  >&lt;p&gt;All the clients are unable to connect to the MDTs; the imports on the client show repeated connection attempts, even though all but one MDT seems to have started normally.&lt;/p&gt;

&lt;p&gt;Here is one example:&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;==&amp;gt; ./mdc/lustre-MDT0001-mdc-ffff880fc4ec5400/state &amp;lt;==
current_state: DISCONN
state_history:
 - [ 1461090634, CONNECTING ]
 - [ 1461090634, DISCONN ]
 - [ 1461090659, CONNECTING ]
 - [ 1461090659, DISCONN ]
 - [ 1461090684, CONNECTING ]
 - [ 1461090684, DISCONN ]
 - [ 1461090709, CONNECTING ]
 - [ 1461090709, DISCONN ]
 - [ 1461090734, CONNECTING ]
 - [ 1461090734, DISCONN ]
 - [ 1461090759, CONNECTING ]
 - [ 1461090759, DISCONN ]
 - [ 1461090784, CONNECTING ]
 - [ 1461090784, DISCONN ]
 - [ 1461090809, CONNECTING ]
 - [ 1461090809, DISCONN ]
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="149455" author="ofaaland" created="Tue, 19 Apr 2016 18:37:18 +0000"  >&lt;p&gt;The issue summary I wrote is wrong; it seems to me like it&apos;s any MDT, not just MDT0000.  I don&apos;t have the ability to change ticket summaries, so one of you Intel folk could fix it, please, that would be great.&lt;/p&gt;</comment>
                            <comment id="149473" author="pjones" created="Tue, 19 Apr 2016 19:44:39 +0000"  >&lt;p&gt;That ok Olaf?&lt;/p&gt;</comment>
                            <comment id="149478" author="ofaaland" created="Tue, 19 Apr 2016 20:36:04 +0000"  >&lt;p&gt;Yes, thank you Peter.&lt;/p&gt;</comment>
                            <comment id="149514" author="di.wang" created="Wed, 20 Apr 2016 05:27:11 +0000"  >&lt;p&gt;Well, in current implementation, only prepare succeeds (at the end of server_start_targets()), then the target is allowed to be connected (obd_no_conn is set to be 0).  I am guessing with disconnected MDTs, it will block the prepare or configuration process (see server_start_targets()), so client can not connect to the MDT. Not sure how easy to fix this. Is this an important issue?&lt;/p&gt;</comment>
                            <comment id="150427" author="ofaaland" created="Thu, 28 Apr 2016 00:38:57 +0000"  >&lt;p&gt;Di,&lt;/p&gt;

&lt;p&gt;It looks to me like the code requires that all MDTs successfully connect with each other before any of them will accept connections from clients.  Not just the first time they are started, but any time.&lt;/p&gt;

&lt;p&gt;If I am correct, then I would say that yes, it is an important issue.  Suppose that there is a power outage and all the MDSs go down, and when power is restored one does not come up (not counting MDT0000 which is of course special).  Why not accept connections on the MDTs that are up?  Depending on how the namespace is distributed across MDTs, it may be possible to do work.&lt;/p&gt;

&lt;p&gt;But maybe I&apos;m mistaken about some of that.  If so, let me know.&lt;/p&gt;

&lt;p&gt;thanks,&lt;br/&gt;
Olaf&lt;/p&gt;</comment>
                            <comment id="150454" author="di.wang" created="Thu, 28 Apr 2016 04:38:08 +0000"  >&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;It looks to me like the code requires that all MDTs successfully connect with each other before any of them will accept connections from clients. Not just the first time they are started, but any time.
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Actually, it does not require all MDTs to be connect, but it does require the config log of one MDT is executed, before it can accept the connection request. Sorry, I did not make it clear in the last comments.&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;Suppose that there is a power outage and all the MDSs go down, and when power is restored one does not come up (not counting MDT0000 which is of course special). Why not accept connections on the MDTs that are up? Depending on how the namespace is distributed across MDTs, it may be possible to do work.
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Yes, this example does make sense. But if the user know one or some MDTs can not get back, it needs to manually deactivate these MDTs on client and other MDTs (which probably cause the failure of this ticket) &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;lctl --device xxx-mdc-xxxx deactivate
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;then the recovery efforts on these MDTs will be stopped, and those recovery MDTs will be able to accept the connection from clients, and of course clients will only be able to access the file on restored MDTs. Sorry again, I might gave the obscure information in the last comment.&lt;/p&gt;

&lt;p&gt;And there are even such test cases in conf-sanity.sh 70c and 70d, please check. Thanks.&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_10490" key="com.atlassian.jira.plugin.system.customfieldtypes:datepicker">
                        <customfieldname>End date</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Thu, 28 Apr 2016 18:14:14 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10390" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hzy8mv:</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>
                                                                                                                        <customfield id="customfield_10493" key="com.atlassian.jira.plugin.system.customfieldtypes:datepicker">
                        <customfieldname>Start date</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Tue, 19 Apr 2016 18:14:14 +0000</customfieldvalue>

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