<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:34:10 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-3468] Add UID/GID into RPC request</title>
                <link>https://jira.whamcloud.com/browse/LU-3468</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;We are interested in implementing UID/GID based NRS policies to see what we can get. In order to do this, it is essential to add the UID/GID of the processes that trigger the RPCs into to the request bodies. We implement this by filling the UID/GID into the padding of the request body and then get a &apos;UID/GID Round Robin&apos; policy by changing CRRN policy (the attaced patch). We know it is not a good implementation though it works fine for testing. And we know it is not easy to implement a good one because we need to handle global user ID over entire cluster. Any advice or idea? Thanks!&lt;/p&gt;</description>
                <environment></environment>
        <key id="19410">LU-3468</key>
            <summary>Add UID/GID into RPC request</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="5" iconUrl="https://jira.whamcloud.com/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="2">Won&apos;t Fix</resolution>
                                        <assignee username="pjones">Peter Jones</assignee>
                                    <reporter username="lixi">Li Xi</reporter>
                        <labels>
                            <label>ptr</label>
                    </labels>
                <created>Thu, 13 Jun 2013 04:51:34 +0000</created>
                <updated>Tue, 14 Jan 2014 02:04:26 +0000</updated>
                            <resolved>Tue, 14 Jan 2014 02:04:26 +0000</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>6</watches>
                                                                            <comments>
                            <comment id="60521" author="lixi" created="Thu, 13 Jun 2013 08:21:10 +0000"  >&lt;p&gt;Is JobStats suitable for this purpose&#65311;&lt;br/&gt;
&lt;a href=&quot;https://jira.hpdd.intel.com/browse/LU-694&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://jira.hpdd.intel.com/browse/LU-694&lt;/a&gt;&lt;/p&gt;
</comment>
                            <comment id="60529" author="adilger" created="Thu, 13 Jun 2013 09:50:26 +0000"  >&lt;p&gt;I would suggest a couple of different things:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;the JobStats information would be a very good way of handling this, and it would allow prioritizing RPC processing between different batch jobs as well as between batch and interactive (e.g. with JobID==batch and without==interactive)&lt;/li&gt;
	&lt;li&gt;the OST and MDT RPCs already contain space for the UID/GID in each of the RPCs (struct obdo and struct mdt_body).  That makes it a bit more complex to process the RPCs for NRS, but the ORR policy is already looking into the RPC request to determine the OST object ID and offsets.  I&apos;m not sure if the uid/gid fields are always filled in for &lt;em&gt;all&lt;/em&gt; OST/MDT RPCs, but they could be.&lt;/li&gt;
	&lt;li&gt;alternately, it might be enough to do round-robin over the UID/GID of the objects being accessed?  It wouldn&apos;t be 100% fair in every case, but would work for the large majority of cases and would avoid the need to change the network protocol just for this.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;In the long term, I&apos;d prefer to develop only a small number of policies that are more sophisticated.  Having separate policies for each &quot;parameter&quot; means that it will be difficult to get the best overall performance.  Separate UID/GID policies will allow load balancing between users, but will not optimize the IO ordering like ORR.&lt;/p&gt;

&lt;p&gt;It would be better to have a single NRS policy that can do many things at once, like balance between nodes, users, jobs, sort RPCs within objects, both round-robin and constrained with upper and lower limits for bandwidth or IOPS.&lt;/p&gt;</comment>
                            <comment id="60616" author="lixi" created="Fri, 14 Jun 2013 01:30:56 +0000"  >&lt;p&gt;Hi Andreas,&lt;/p&gt;

&lt;p&gt;Thank you so much for the advice! It is really helpful!&lt;/p&gt;</comment>
                            <comment id="74828" author="laytonjb" created="Mon, 13 Jan 2014 16:21:36 +0000"  >&lt;p&gt;Has there been any further development on this patch? How does it compare to TBF (&lt;a href=&quot;https://jira.whamcloud.com/browse/LU-3558&quot; title=&quot;NRS TBF policy for QoS purposes&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-3558&quot;&gt;&lt;del&gt;LU-3558&lt;/del&gt;&lt;/a&gt;)? Thanks!&lt;/p&gt;</comment>
                            <comment id="74877" author="lixi" created="Tue, 14 Jan 2014 00:40:59 +0000"  >&lt;p&gt;Hi Jeff,&lt;/p&gt;

&lt;p&gt;This a earlier ticket than TBF. Now TBF has implemented jobstat support, which I think can cover most use cases of UID/GID based RPC scheduler. It would be good for me if this ticket is closed.&lt;/p&gt;

&lt;p&gt;Thank you!&lt;/p&gt;</comment>
                            <comment id="74885" author="pjones" created="Tue, 14 Jan 2014 02:04:26 +0000"  >&lt;p&gt;ok thanks Li Xi!&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                            <attachment id="13043" name="lustre-nrs-urr.patch" size="5190" author="lixi" created="Thu, 13 Jun 2013 04:51:34 +0000"/>
                    </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|hzvt9r:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>8678</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>