<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 03:04:47 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-13854] lustre-MDD0000: next log does not exist!</title>
                <link>https://jira.whamcloud.com/browse/LU-13854</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Trying to create a file after setting up changelogs on a fresh new FS yields an IO error:&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;# lustre/tests/llmount.sh
(...)
# lctl set_param mdd.*.changelog_mask=MTIME
mdd.lustre-MDT0000.changelog_mask=MTIME
# lctl --device lustre-MDT0000 changelog_register
lustre-MDT0000: Registered changelog userid &apos;cl1&apos;
#touch /mnt/lustre/file
touch: setting times of &apos;/mnt/lustre/file&apos;: Input/output error
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;tt&gt;dmesg&lt;/tt&gt; provides some interesting information:&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;# dmesg -H | tail -n 3
[Aug 5 11:23] Lustre: lustre-MDD0000: changelog on
[Aug 5 11:25] LustreError: 23303:0:(llog_cat.c:544:llog_cat_current_log()) lustre-MDD0000: next log does not exist!
[  +0.003231] LustreError: 24631:0:(llite_lib.c:1707:ll_md_setattr()) md_setattr fails: rc = -5
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Happy hunting &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.whamcloud.com/images/icons/emoticons/wink.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;</description>
                <environment></environment>
        <key id="60272">LU-13854</key>
            <summary>lustre-MDD0000: next log does not exist!</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="wc-triage">WC Triage</assignee>
                                    <reporter username="bougetq">Quentin Bouget</reporter>
                        <labels>
                    </labels>
                <created>Wed, 5 Aug 2020 09:36:06 +0000</created>
                <updated>Thu, 14 Jul 2022 15:10:48 +0000</updated>
                                            <version>Upstream</version>
                                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                            <comments>
                            <comment id="276712" author="pjones" created="Wed, 5 Aug 2020 12:57:58 +0000"  >&lt;p&gt;Is this something that you are planning to investigate?&lt;/p&gt;</comment>
                            <comment id="276714" author="bougetq" created="Wed, 5 Aug 2020 13:04:39 +0000"  >&lt;p&gt;No, this was just a test system I setup to review a patch.&lt;br/&gt;
This is not something we hit in production (yet).&lt;/p&gt;</comment>
                            <comment id="340408" author="JIRAUSER17317" created="Thu, 14 Jul 2022 15:10:48 +0000"  >&lt;p&gt;I believe I ran into this:&lt;/p&gt;


&lt;p&gt;root@node:/# chmod -R 777 /lustrefs&lt;br/&gt;
chmod: changing permissions of &apos;/lustrefs&apos;: Input/output error&lt;br/&gt;
root@node:/# dmesg -T&lt;br/&gt;
...&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;Mon Jun 27 17:25:18 2022&amp;#93;&lt;/span&gt; LustreError: 1259:0:(llite_lib.c:1712:ll_md_setattr()) md_setattr fails: rc = -5 &lt;/p&gt;


&lt;p&gt;Looking at the original error, I see the following at the exact time of chmod failure on the MDT:&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;250875.733525&amp;#93;&lt;/span&gt; LustreError: 32002:0:(llog_cat.c:544:llog_cat_current_log()) lustrefs-MDD0000: next log does not exist!&lt;br/&gt;
&#160;&lt;br/&gt;
There are no surrounding lines that suggest there weren&apos;t free slots or something else to indicate why this is happening.&lt;br/&gt;
&#160;&lt;br/&gt;
The description seems to suggest the changelog mask may be involved.&#160; On my clusters I use:&lt;br/&gt;
mdd.lustrefs-MDT0000.changelog_mask=all-ATIME-FLRW-GXATR-MARK-MIGRT-NOPEN-OPEN-RESYNC-XATTR&lt;br/&gt;
&#160;&lt;br/&gt;
&lt;tt&gt;Looking across the many clusters this bug is hit approximately once per day.&#160; Are there any suggestions for ways I could help provide additional debugging information?&#160; Also, is there a reason to not return EAGAIN here rather than EIO (I&apos;m not intimately familiar with this code so I&apos;m sure there is a good reason)?&#160; Looking at this block it feels like just trying again would be reasonable (and certainly these nodes do recover &#8211; just that single command gets EIO back).&#160; Failing a whole job for just a one-off retryable concurrency issue is unfortunate.&lt;/tt&gt;&lt;br/&gt;
&#160;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;536 &#160; /* Sigh, the chd_next_log and chd_current_log is initialized&lt;/tt&gt;&lt;tt&gt;&#160; &#160;537 &#160; &#160;* in declare phase, and we do not serialize the catlog&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;538 &#160; &#160;* accessing, so it might be possible the llog creation&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;539 &#160; &#160;* thread (see llog_cat_declare_add_rec()) did not create&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;540 &#160; &#160;* llog successfully, then the following thread might&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;541 &#160; &#160;* meet this situation. */&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;542 &#160; if (IS_ERR_OR_NULL(cathandle-&amp;gt;u.chd.chd_next_log)) {&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;543 &#160; &#160; CERROR(&quot;%s: next log does not exist!\n&quot;,&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;544 &#160; &#160; &#160; &#160; &#160; &#160;cathandle-&amp;gt;lgh_ctxt-&amp;gt;loc_obd-&amp;gt;obd_name);&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;545 &#160; &#160; loghandle = ERR_PTR(-EIO);&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;546 &#160; &#160; if (cathandle-&amp;gt;u.chd.chd_next_log == NULL) {&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;547 &#160; &#160; &#160; /* Store the error in chd_next_log, so&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;548 &#160; &#160; &#160; &#160;* the following process can get correct&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;549 &#160; &#160; &#160; &#160;* failure value */&lt;/tt&gt;&lt;br/&gt;
&lt;tt&gt;&#160; &#160;550 &#160; &#160; &#160; cathandle-&amp;gt;u.chd.chd_next_log = loghandle;&lt;/tt&gt;&lt;br/&gt;
{{&#160; &#160;551 &#160; &#160; }}}&lt;br/&gt;
&lt;tt&gt;&#160; &#160;552 &#160; &#160; GOTO(out_unlock, loghandle);&lt;/tt&gt;&lt;br/&gt;
&#160;&lt;br/&gt;
&#160;&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_10030" key="com.atlassian.jira.plugin.system.customfieldtypes:labels">
                        <customfieldname>Epic/Theme</customfieldname>
                        <customfieldvalues>
                                        <label>changelog</label>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_10390" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i0171b:</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>