<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:46:37 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-4876] LFSCK remove entry from /REMOTE_PARENT_DIR if MDT-object name reside on the same MDT after migration</title>
                <link>https://jira.whamcloud.com/browse/LU-4876</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;When migrate directory MDT-object_A&apos;s metadata from MDT_x to MDT_y, all its children name entries needs to be moved to MDT_y. If some name entry originally referenced a remote MDT-object_B which was linked under &quot;/REMOTE_PARENT_DIR&quot; with a dummy name entry on MDT_y, but after the migration, the MDT-object_B and its new name entry resides on the same MDT_y, then the dummy entry for the MDT-object_B should be removed from &quot;&lt;tt&gt;REMOTE_PARENT_DIR/&lt;/tt&gt;&quot; &lt;b&gt;iff&lt;/b&gt; there are no links remaining on that MDT.&lt;/p&gt;</description>
                <environment></environment>
        <key id="24144">LU-4876</key>
            <summary>LFSCK remove entry from /REMOTE_PARENT_DIR if MDT-object name reside on the same MDT after migration</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="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="yong.fan">nasf</reporter>
                        <labels>
                            <label>dne2</label>
                            <label>lfsck</label>
                    </labels>
                <created>Wed, 9 Apr 2014 21:43:28 +0000</created>
                <updated>Mon, 31 Jan 2022 23:14:25 +0000</updated>
                                                                                <due></due>
                            <votes>0</votes>
                                    <watches>6</watches>
                                                                            <comments>
                            <comment id="81651" author="di.wang" created="Tue, 15 Apr 2014 18:11:29 +0000"  >&lt;p&gt;Hmm, we can remove the object from &quot;REMOTE_PARENT_DIR&quot; when we update the linkEA, but this will add extra complication into osd_xattr_set. But even we leave dummy inode in REMOTE_PARENT_DIR, it did not effect the consistency of the FS, though it will leave some orphans there and I also wonder if LFSCK will do sth special for REMOTE_PARENT_DIR for DNE check. &lt;/p&gt;</comment>
                            <comment id="81695" author="yong.fan" created="Tue, 15 Apr 2014 23:32:11 +0000"  >&lt;p&gt;From the LFSCK view, if two name entries reference the same MDT-object, but its nlink count is 1, that is inconsistent status.&lt;/p&gt;</comment>
                            <comment id="100712" author="adilger" created="Thu, 4 Dec 2014 18:38:41 +0000"  >&lt;p&gt;It seems to me that there are two separate issues here:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;DNE should not leave the filesystem in an inconsistent state under normal operation, and should not depend on LFSCK.&lt;/li&gt;
	&lt;li&gt;LFSCK3 should repair the filesystem correctly in this case (regardless of how it got into this state)&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="100781" author="yong.fan" created="Thu, 4 Dec 2014 23:46:36 +0000"  >&lt;p&gt;I have created another ticket for LFSCK: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-5985&quot; title=&quot;LFSCK 5: remove dummy name entry from /REMOTE_PARENT_DIR if the MDT-object and its name entry reside on the same MDT&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-5985&quot;&gt;&lt;del&gt;LU-5985&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;</comment>
                            <comment id="191584" author="adilger" created="Tue, 11 Apr 2017 19:56:14 +0000"  >&lt;p&gt;Lai, is this something you can look at while fixing the striped directory migration in &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-4684&quot; title=&quot;DNE3: allow migrating DNE striped directory&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-4684&quot;&gt;&lt;del&gt;LU-4684&lt;/del&gt;&lt;/a&gt;?&lt;/p&gt;</comment>
                            <comment id="233833" author="artem_blagodarenko" created="Thu, 20 Sep 2018 22:07:20 +0000"  >&lt;p&gt;Hello,&lt;/p&gt;

&lt;p&gt;I have migrate related question. I see probable LFSCK-related inconsistency possible. I catched ldiskfs inconsistency after directory migration. Started this command&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
SLOW=yes RUNAS_ID=1000 CLEANUP=cleanupall SETUP=setupall OSTCOUNT=4 MDSCOUNT=4 OSTSIZE=600000 MDTSIZE=300000 ONLY=230h sh /usr/lib/lustre/tests/sanity.sh
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;and run fsck just after test has been finished.&lt;/p&gt;

&lt;p&gt;Fsck shows:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
Inode 25043 ref count is 5, should be 4.&#8194;&#8194;Fix? no
 
Pass 5: Checking group summary information
Free blocks count wrong (32862, counted=32853).
Fix? no
 
Free inodes count wrong (99721, counted=99718).
Fix? no
 
lustre-MDT0000: ********** WARNING: Filesystem still has errors **********
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Inode with broken count is &quot;/ROOT&quot;&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
# debugfs lustre-mdt1 
debugfs 1.42.13.wc6 (05-Feb-2017)
debugfs:&#8194;&#8194;ncheck 25043
Inode&#8194;&#8194;&#8194;&#8194;Pathname
25043&#8194;&#8194;&#8194;&#8194;&lt;span class=&quot;code-comment&quot;&gt;//ROOT&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Inode has 5 links&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
# debugfs -R &lt;span class=&quot;code-quote&quot;&gt;&quot;stat &amp;lt;25043&amp;gt;&quot;&lt;/span&gt; lustre-mdt1 
debugfs 1.42.13.wc6 (05-Feb-2017)
Inode: 25043&#8194;&#8194; Type: directory&#8194;&#8194;&#8194;&#8194;Mode:&#8194;&#8194;0755&#8194;&#8194; Flags: 0x0
Generation: 3666376863&#8194;&#8194;&#8194;&#8194;Version: 0x00000001:00000008
User:&#8194;&#8194;&#8194;&#8194; 0&#8194;&#8194; Group:&#8194;&#8194;&#8194;&#8194; 0&#8194;&#8194; Project:&#8194;&#8194;&#8194;&#8194; 0&#8194;&#8194; Size: 4096
File ACL: 0&#8194;&#8194;&#8194;&#8194;Directory ACL: 0
Links: 5&#8194;&#8194; Blockcount: 8
Fragment:&#8194;&#8194;Address: 0&#8194;&#8194;&#8194;&#8194;&lt;span class=&quot;code-object&quot;&gt;Number&lt;/span&gt;: 0&#8194;&#8194;&#8194;&#8194;Size: 0
 ctime: 0x5ba2dcf7:00000000 -- Wed Sep 19 19:34:15 2018
 atime: 0x5ba2dcbc:00000000 -- Wed Sep 19 19:33:16 2018
 mtime: 0x5ba2dcf7:00000000 -- Wed Sep 19 19:34:15 2018
crtime: 0x5ba2dcbc:b0d6b4b8 -- Wed Sep 19 19:33:16 2018
Size of extra inode fields: 32
Extended attributes stored in inode body: 
&#8194;&#8194;lma = &lt;span class=&quot;code-quote&quot;&gt;&quot;00 00 00 00 00 00 00 00 07 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 &quot;&lt;/span&gt; (24)
&#8194;&#8194;lma: fid=[0x200000007:0x1:0x0] compat=0 incompat=0
BLOCKS:
(0):12623
TOTAL: 1
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;But should be 4&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
debugfs(mdt1):&#8194;&#8194;ls -l /ROOT
&#8194;&#8194;25043&#8194;&#8194; 40755 (2)&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;4096 19-Sep-2018 19:34 .
&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;2&#8194;&#8194; 40755 (2)&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;4096 19-Sep-2018 19:33 ..
&#8194;&#8194;25044&#8194;&#8194; 40755 (18)&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;4096 19-Sep-2018 19:33 .lustre
&#8194;&#8194;25049&#8194;&#8194; 40000 (18)&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;4096 19-Sep-2018 19:34 d230h.sanity
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;sanity 230h test is about migrating root&apos;s subdirectory to mdt2. The main operation is&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
$LFS migrate -m1 $DIR/$tdir/migrate_dir/.. ||
                error &lt;span class=&quot;code-quote&quot;&gt;&quot;migrating $tdir fail&quot;&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;After this operation $DIR/$tdi and $DIR/$tdir/migrate_dir/ are moved to mdt2&lt;br/&gt;
Checked in image. This directories are actually moved there:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
debugfs(mdt2):&#8194;&#8194;ls -l /REMOTE_PARENT_DIR
25001&#8194;&#8194; 40755 (2)&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;4096 19-Sep-2018 19:34 .
&#8194;&#8194;&#8194;&#8194;2&#8194;&#8194; 40755 (2)&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;4096 19-Sep-2018 19:33 ..
&#8194;&#8194;25046&#8194;&#8194; 40755 (2)&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;&#8194;&#8194;0&#8194;&#8194;&#8194;&#8194;4096 19-Sep-2018 19:34 0x240000404:0x1:0x0
# lfs fid2path /mnt/lustre 0x240000404:0x1:0x0
/mnt/lustre/d230h.sanity
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Do you have idea why anode has reference 5, then it need have reference 4?&lt;/p&gt;

&lt;p&gt;Thanks.&lt;/p&gt;</comment>
                            <comment id="233858" author="laisiyao" created="Fri, 21 Sep 2018 07:30:39 +0000"  >&lt;p&gt;Hi Artem, can you test with latest master code? I think patches for &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-4684&quot; title=&quot;DNE3: allow migrating DNE striped directory&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-4684&quot;&gt;&lt;del&gt;LU-4684&lt;/del&gt;&lt;/a&gt; has fixed this issue.&lt;/p&gt;</comment>
                            <comment id="235123" author="adilger" created="Thu, 18 Oct 2018 22:32:32 +0000"  >&lt;p&gt;Artem, I also noticed this, but it was fixed (at least for 2.12) by unmounting the MDT and running e2fsck on the unmounted device.  While it was mounted, the change was only in the journal and did not show up in the filesystem itself.&lt;/p&gt;</comment>
                            <comment id="235138" author="artem_blagodarenko" created="Fri, 19 Oct 2018 06:59:01 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.whamcloud.com/secure/ViewProfile.jspa?name=adilger&quot; class=&quot;user-hover&quot; rel=&quot;adilger&quot;&gt;adilger&lt;/a&gt; Thanks for idea. I believe the target was not mounted during fsck. I used CLEANUP=cleanupall option.&lt;br/&gt;
&lt;a href=&quot;https://jira.whamcloud.com/secure/ViewProfile.jspa?name=laisiyao&quot; class=&quot;user-hover&quot; rel=&quot;laisiyao&quot;&gt;laisiyao&lt;/a&gt; will try with patches from &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-4684&quot; title=&quot;DNE3: allow migrating DNE striped directory&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-4684&quot;&gt;&lt;del&gt;LU-4684&lt;/del&gt;&lt;/a&gt;. Thanks.&lt;/p&gt;</comment>
                            <comment id="235142" author="adilger" created="Fri, 19 Oct 2018 07:45:13 +0000"  >&lt;p&gt;Artem, it just looks that way because of the e2fsck messages:&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;Pass 5: Checking group summary information
Free blocks count wrong (32862, counted=32853).
Free inodes count wrong (99721, counted=99718).
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;which usually means that the filesystem is mounted, or at least was not unmounted cleanly.&lt;/p&gt;</comment>
                            <comment id="324653" author="adilger" created="Mon, 31 Jan 2022 23:14:25 +0000"  >&lt;p&gt;I&apos;ve also seen a few cases where e2fsck complains about hard-linked directories in &lt;tt&gt;REMOTE_PARENT_DIR&lt;/tt&gt;:&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;Entry &apos;0x200007168:0x4af:0x0&apos; in /REMOTE_PARENT_DIR (1119354881) is a link to directory /ROOT/.lustre/lost+found/MDT0000/[0x200005233:0x89:0x0]-O-0 (8938935).
Clear? yes
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;It looks like e2fsck fixes this by removing the entry from REMOTE_PARENT_DIR, but LFSCK shouldn&apos;t get into this situation in the first place.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="67676">LU-15383</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="27799">LU-5985</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="67698">LU-15388</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="49558">LU-10329</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="61830">LU-14168</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="23373">LU-4684</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                                        </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|hzwjpz:</customfieldvalue>

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