<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 03:33:02 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-17148] enhance directory migration robustness</title>
                <link>https://jira.whamcloud.com/browse/LU-17148</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Directory migration involves multiple MDTs, and sever failure during migration tends to cause file missing, and this is its inherent fragility, not fault in the implementation:&lt;br/&gt;
1. directory migration doesn&apos;t support replay by client request: because all the source file xattrs need to be packed in the reply and then saved to request for replay, while current request format doesn&apos;t support this.&lt;br/&gt;
2. if the inter-MDT recovery is aborted, due to 1, file may get lost.&lt;br/&gt;
3. even if client replay is supported, if server recovery is aborted, file may get lost too.&lt;/p&gt;

&lt;p&gt;To enhance directory migration robustness, we need to introduce redundancy for files migrated:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;retain source file till migration is finished, this includes both source file dirents and inodes, and they may be located on different MDTs. NB the retained files should be invisible to client, otherwise accessing migrating directory may fail.&lt;/li&gt;
	&lt;li&gt;verify target files against source files before finishing migration (updating target directory layout), if there are extr source files, they must have been migrated, but target files get lost due to target MDT failure, migrate them again by MDT.&lt;/li&gt;
	&lt;li&gt;make sure target files are committed to disk before destroying retained source files.&lt;/li&gt;
	&lt;li&gt;this is complicated, so handle this in MDD layer other than LFSCK, because MDD code has better understanding of migration, and this is also more friendly for users, since it&apos;s opaque to them, which doesn&apos;t need extra lfsck command.&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="78116">LU-17148</key>
            <summary>enhance directory migration robustness</summary>
                <type id="4" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11310&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="4" iconUrl="https://jira.whamcloud.com/images/icons/priorities/minor.svg">Minor</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="laisiyao">Lai Siyao</assignee>
                                    <reporter username="laisiyao">Lai Siyao</reporter>
                        <labels>
                    </labels>
                <created>Wed, 27 Sep 2023 02:49:39 +0000</created>
                <updated>Sat, 2 Dec 2023 15:17:08 +0000</updated>
                                                                                <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                            <comments>
                            <comment id="387371" author="adilger" created="Wed, 27 Sep 2023 08:54:57 +0000"  >&lt;p&gt;Potentially, such an operation to create a mirrored MDT object could be used as the starting point for implementing full MDT mirroring - Lustre Metadata Redundancy (&lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12310&quot; title=&quot;MDT Device-level Replication/Mirroring&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12310&quot;&gt;LU-12310&lt;/a&gt;, &lt;a href=&quot;https://jira.whamcloud.com/secure/attachment/43434/Lustre_Metadata_Redundancy-202112.pptx&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;https://jira.whamcloud.com/secure/attachment/43434/Lustre_Metadata_Redundancy-202112.pptx&lt;/a&gt;).&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                                        </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="79115">LU-17307</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                            <subtask id="78212">LU-17162</subtask>
                            <subtask id="78213">LU-17163</subtask>
                    </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|i03wuv:</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>