<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:32:45 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-10178] DoM: Use synced last BRW instead of extra SYNC RPC for CLIO fsync</title>
                <link>https://jira.whamcloud.com/browse/LU-10178</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;While processing CLIO fsync IO an OSC sends separate SYNC request when BRW is finished. The optimization idea is to avoid this just by making last BRW synchronous instead. Refer to the osc_io_fsync_start(), osc_fsync_ost() functions and mdc_io_fsync_start() as well.&lt;/p&gt;</description>
                <environment></environment>
        <key id="49052">LU-10178</key>
            <summary>DoM: Use synced last BRW instead of extra SYNC RPC for CLIO fsync</summary>
                <type id="7" iconUrl="https://jira.whamcloud.com/images/icons/issuetypes/task_agile.png">Technical task</type>
                            <parent id="49050">LU-10176</parent>
                                    <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="wc-triage">WC Triage</assignee>
                                    <reporter username="tappro">Mikhail Pershin</reporter>
                        <labels>
                            <label>DoM2</label>
                            <label>medium</label>
                    </labels>
                <created>Wed, 1 Nov 2017 15:14:20 +0000</created>
                <updated>Mon, 1 May 2023 07:53:59 +0000</updated>
                                                                                <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                            <comments>
                            <comment id="214637" author="adilger" created="Sat, 25 Nov 2017 21:04:13 +0000"  >&lt;p&gt;I thought this was implemented or was in a patch somewhere already?&lt;/p&gt;</comment>
                            <comment id="233964" author="jgmitter" created="Tue, 25 Sep 2018 10:09:04 +0000"  >&lt;p&gt;Mike,&lt;/p&gt;

&lt;p&gt;Is there still work to do here?&lt;/p&gt;

&lt;p&gt;Thanks.&lt;/p&gt;

&lt;p&gt;Joe&lt;/p&gt;</comment>
                            <comment id="233969" author="tappro" created="Tue, 25 Sep 2018 12:21:49 +0000"  >&lt;p&gt;Joseph, yes, there are work to do.&lt;/p&gt;</comment>
                            <comment id="370986" author="adilger" created="Mon, 1 May 2023 00:11:04 +0000"  >&lt;p&gt;Patrick, is this something that would be easily done?&lt;/p&gt;</comment>
                            <comment id="370990" author="paf0186" created="Mon, 1 May 2023 00:41:40 +0000"  >&lt;p&gt;Hmm, I&apos;m only about 80% sure I understand.&#160; It sounds like we&apos;re saying when there&apos;s data to flush on an fsync, we should just make the RPC sync, so it forces the OST to do a sync, rather than send a separate sync request to the OST.&lt;/p&gt;

&lt;p&gt;It wouldn&apos;t be the hardest thing in the world; we&apos;d modify how FSYNC works a little so it would force data written out to be synchronous.&#160; The harder part would be making sure we tracked if sync actually sent anything, but it wouldn&apos;t be that hard.&lt;/p&gt;

&lt;p&gt;Is fsync expected to force a journal commit?&#160; It is, right?&#160; So we for sure have to send a sync command to the OST, whether or not we have any dirty data to sync.&#160; It&apos;s just that if we have dirty data we are sync&apos;ing, we could skip the separate sync request.&lt;/p&gt;

&lt;p&gt;May I ask why this is of interest?&#160; It seems a pretty small optimization for a case that I don&apos;t normally think of as really performance sensitive?&#160; (I&apos;m happy to learn here, that&apos;s why I&apos;m asking)&lt;/p&gt;</comment>
                            <comment id="371034" author="adilger" created="Mon, 1 May 2023 07:53:59 +0000"  >&lt;p&gt;The goal here would be to send the &lt;b&gt;last&lt;/b&gt; RPC without &lt;tt&gt;OBD_BRW_ASYNC&lt;/tt&gt; if there is data to be flushed, so that it forces a sync and returns with an updated transno.  This would be most useful for flushing small files, where it would cut the RPC count in half.&lt;/p&gt;

&lt;p&gt;Nothing urgent, just an open ticket that I found that seems like it would be easily fixed. &lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="18725">LU-3285</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </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|hzzmvz:</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>
                                                                                                                                                                                                                                                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>