<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 03:30:11 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-16808] lfs find --printf fails on FIFOs and special files</title>
                <link>https://jira.whamcloud.com/browse/LU-16808</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&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;
$ mkfifo myfifo
$ lfs find myfifo
myfifo 
$ lfs find myfifo --printf &lt;span class=&quot;code-quote&quot;&gt;&quot;%p\n&quot;&lt;/span&gt;
** command hangs **
^C

$ sudo mknod mychardev c 1 5
$ lfs find mychardev
mychardev
$ lfs find mychardev --printf &lt;span class=&quot;code-quote&quot;&gt;&quot;%p\n&quot;&lt;/span&gt;
lfs: failed &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; &lt;span class=&quot;code-quote&quot;&gt;&apos;mychardev&apos;&lt;/span&gt;: Inappropriate ioctl &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; device&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment></environment>
        <key id="75966">LU-16808</key>
            <summary>lfs find --printf fails on FIFOs and special files</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</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="1">Fixed</resolution>
                                        <assignee username="bobijam">Zhenyu Xu</assignee>
                                    <reporter username="bertschinger">Thomas Bertschinger</reporter>
                        <labels>
                    </labels>
                <created>Tue, 9 May 2023 14:33:38 +0000</created>
                <updated>Tue, 20 Jun 2023 17:23:54 +0000</updated>
                            <resolved>Tue, 20 Jun 2023 17:23:54 +0000</resolved>
                                                    <fixVersion>Lustre 2.16.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>5</watches>
                                                                            <comments>
                            <comment id="371660" author="paf0186" created="Tue, 9 May 2023 14:47:40 +0000"  >&lt;p&gt;So it shouldn&apos;t hang on the fifo obviously, but can you explain the behavior you&apos;d expect on these special files?&#160; I mean, what does lfs find do in general if called on a regular file rather than a directory?&lt;/p&gt;</comment>
                            <comment id="371672" author="JIRAUSER18444" created="Tue, 9 May 2023 15:53:48 +0000"  >&lt;p&gt;I suppose I&apos;d expect the printf to print out the desired information without error (as long as there are no Lustre-specific format directives that don&apos;t apply to special files). I think this would mainly be relevant if you pass `lfs find` a directory and there are special files under that directory tree. I guess it&apos;s probably not common to put special files on Lustre so I&apos;ll admit this likely wouldn&apos;t be seen on real systems.&lt;/p&gt;

&lt;p&gt;I would expect this to work without error:&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;
$ cd /mnt/lustre
$ touch a
$ mknod mychardev c 1 5
$ lfs find /mnt/lustre --printf &lt;span class=&quot;code-quote&quot;&gt;&quot;%p\n&quot;&lt;/span&gt;
/mnt/lustre
/mnt/lustre/a
lfs: failed &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; &lt;span class=&quot;code-quote&quot;&gt;&apos;/mnt/lustre&apos;&lt;/span&gt;: Inappropriate ioctl &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; device

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;But this is probably fine failing (unless maybe the %Li should just be empty or have a placeholder value in the line for the special file?):&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 find /mnt/lustre --printf &lt;span class=&quot;code-quote&quot;&gt;&quot;%Li %p\n&quot;&lt;/span&gt;
0 /mnt/lustre
1 /mnt/lustre/a
lfs: failed &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; &lt;span class=&quot;code-quote&quot;&gt;&apos;/mnt/lustre&apos;&lt;/span&gt;: Inappropriate ioctl &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; device&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Also, I think that error message should include the filename that failed because if you&apos;re running find on a big tree it won&apos;t necessarily be obvious what failed.&lt;/p&gt;</comment>
                            <comment id="371679" author="paf0186" created="Tue, 9 May 2023 16:39:33 +0000"  >&lt;p&gt;&quot;I guess it&apos;s probably not common to put special files on Lustre so I&apos;ll admit this likely wouldn&apos;t be seen on real systems.&quot;&lt;br/&gt;
Well, people definitely do it, and special files can also be an implementation detail of some libraries/program environments/build systems/etc, so they do matter for us.&#160; I agree it&apos;s not a massive gap, but it&apos;s a valid concern.&lt;/p&gt;

&lt;p&gt;FWIW, after reading your response, I think in general we should probably not return inappropriate ioctl (and obviously not for the requests which have a clear correct answer) - we should return whatever makes the most sense.&#160; imo, it&apos;s confusing to get an error in the middle of an fs scan type operation.&lt;/p&gt;

&lt;p&gt;Glancing in to the code, it looks like our ll_special_inode_operations (our inode operations for all file structs which are not directories, regular files, or links) does not provide the .unlocked_ioctl function, so Lustre has no support for Lustre specific ioctls on special files.&#160; (I&apos;m just going to use &apos;special files&apos; to mean anything that&apos;s not a directory, regular file, or symlink.)&lt;/p&gt;

&lt;p&gt;I think you have opened a bit of a can of worms here, unfortunately, since now you may have to consider which Lustre specific ioctls (and there are a &lt;b&gt;lot&lt;/b&gt; of them) are meaningful on special files and give them implementations.&#160; (Possibly it might make sense to share the ll_file_ioctl function as used for regular files, but you&apos;d still have to walk through all the ioctls and add various checks.)&lt;/p&gt;

&lt;p&gt;Oh and we don&apos;t provide unlocked_ioctl for symlinks either!&#160; That&apos;s interesting; I wonder how that works in practice and how others/VFS handles this.&lt;/p&gt;

&lt;p&gt;Like I said, a little bit of a can of worms.&lt;/p&gt;

&lt;p&gt;It&apos;s probably possible to figure out what ioctls &apos;find&apos; is using and just make sure those have handling for special files (and possibly symlinks too, as appropriate?), and ignore the rest of the Lustre specific ioctls.&#160; That wouldn&apos;t be a regression from current behavior, where no Lustre specific ioctls work on special files at all (afaics).&lt;/p&gt;</comment>
                            <comment id="371680" author="paf0186" created="Tue, 9 May 2023 16:40:25 +0000"  >&lt;p&gt;Oh, and absolutely about the error message including the file name, that&apos;s obviously right.&#160; That could be a quick separate patch if you wanted to do it.&lt;/p&gt;</comment>
                            <comment id="371681" author="paf0186" created="Tue, 9 May 2023 16:41:19 +0000"  >&lt;p&gt;Also, I didn&apos;t look at why find hangs on fifos, that&apos;s probably the most problematic issue here.&lt;/p&gt;</comment>
                            <comment id="371689" author="adilger" created="Tue, 9 May 2023 18:40:12 +0000"  >&lt;p&gt;The FIFO hang is probably because the &lt;tt&gt;open()&lt;/tt&gt; immediately gets blocked on waiting for some data to be available on the pipe?  The strace shows:&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;write(1, &quot;/mnt/testfs/newdir\n&quot;, 19/mnt/testfs/newdir
)    = 19
close(3)                                = 0
fstat(4, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
fcntl(4, F_GETFL)                       = 0x28800 (flags O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_NOFOLLOW)
fcntl(4, F_SETFD, FD_CLOEXEC)           = 0
getdents(4, /* 3 entries */, 32768)     = 72
ioctl(4, _IOC(_IOC_READ|_IOC_WRITE, 0x69, 0x16, 0x140), 0x16f3040) = 0
ioctl(4, _IOC(_IOC_READ, 0x66, 0xaf, 0x4), 0x7ffd455d7480) = 0
open(&quot;/mnt/testfs/newdir/char&quot;, O_RDONLY) = 3
ioctl(3, FS_IOC_FSGETXATTR, 0x7ffd455d70b0) = -1 ENOTTY (Inappropriate ioctl for device)
close(3)                                = 0
ioctl(4, _IOC(_IOC_READ|_IOC_WRITE, 0x69, 0x16, 0x140), 0x1f84040) = 0
ioctl(4, _IOC(_IOC_READ, 0x66, 0xaf, 0x4), 0x7ffc5a629f30) = 0
open(&quot;/mnt/testfs/newdir/fifo&quot;, O_RDONLY
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;I suspect that the &quot;semantic traverse&quot; can already use the file type in the directory entry to skip trying to process such files.&lt;/p&gt;

&lt;p&gt;In fact, looking at the strace output for regular file processing it seems like it is doing far too much for most files already:&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;1683657120.708615 getdents(4, /* 102 entries */, 32768) = 6448 &amp;lt;0.000784&amp;gt;
1683657120.709513 ioctl(4, _IOC(_IOC_READ|_IOC_WRITE, 0x69, 0x16, 0x140), 0xea2040) = 0 &amp;lt;0.002730&amp;gt;
1683657120.712309 open(&quot;/mnt/testfs/dir/filename_is_long-15&quot;, O_RDONLY) = 3 &amp;lt;0.003517&amp;gt;
1683657120.715904 ioctl(3, _IOC(_IOC_READ, 0x66, 0xaf, 0x4), 0x7ffc0a9b3ba0) = 0 &amp;lt;0.000140&amp;gt;
1683657120.716106 ioctl(3, FS_IOC_FSGETXATTR, 0x7ffc0a9b37d0) = 0 &amp;lt;0.000044&amp;gt;
1683657120.716243 newfstatat(4, &quot;filename_is_long-15&quot;, {st_mode=S_IFREG|0644, st_size=0, ...}, AT_SYMLINK_NOFOLLOW) = 0 &amp;lt;0.000683&amp;gt;
1683657120.717022 write(1, &quot;/mnt/testfs/dir/filename_is_long-15&quot;, 36) = 36 &amp;lt;0.000296&amp;gt; /mnt/testfs/dir/filename_is_long-15
1683657120.717386 close(3) = 0 &amp;lt;0.002073&amp;gt;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;The &lt;tt&gt;ioctl(4, _IOC(_IOC_READ|_IOC_WRITE, 0x69, 0x16, 0x140) = IOC_MDC_GETFILEINFO_V2)&lt;/tt&gt; is expected for every file, since it gets the file layout and MDT attributes &lt;b&gt;from the parent directory&lt;/b&gt; but we definitely &lt;b&gt;should not&lt;/b&gt; be doing &lt;tt&gt;open()&lt;/tt&gt; and &lt;tt&gt;ioctl(FS_IOC_FSGETXATTR)&lt;/tt&gt; and &lt;tt&gt;newfstatat()&lt;/tt&gt; on &lt;b&gt;every&lt;/b&gt; file when we are only printing the pathname.  That is a &lt;b&gt;lot&lt;/b&gt; of overhead (more than double the original &lt;tt&gt;ioctl(IOC_MDC_GETFILEINFO_V2)&lt;/tt&gt; call.&lt;/p&gt;

&lt;p&gt;It looks like this was added as part of the &lt;tt&gt;-printf&lt;/tt&gt; functionality, since running without &lt;tt&gt;-printf &quot;%p&quot;&lt;/tt&gt; shows none of that overhead:&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;1683657295.265889 getdents(4, /* 102 entries */, 32768) = 6448 &amp;lt;0.000393&amp;gt;
1683657295.266362 write(1, &quot;/mnt/testfs/dir/filename_is_long-15&quot;..., 36) = 36 &amp;lt;0.000009&amp;gt; /mnt/testfs/dir/filename_is_long-15
1683657295.266446 write(1, &quot;/mnt/testfs/dir/filename_is_long-44&quot;..., 36) = 36 &amp;lt;0.000009&amp;gt; /mnt/testfs/dir/filename_is_long-44
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;I guess that is already described in &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-15837&quot; title=&quot;&amp;quot;lfs find -printf&amp;quot; improvements&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-15837&quot;&gt;LU-15837&lt;/a&gt; under &quot;&lt;tt&gt;selective fetching of metadata attributes. In particular, fetching the projid for a file requires an extra syscall that is unnecessary if the projid is not being printed&lt;/tt&gt;&quot; but it isn&apos;t just one syscall but multiple.&lt;/p&gt;</comment>
                            <comment id="371735" author="gerrit" created="Wed, 10 May 2023 05:29:05 +0000"  >&lt;p&gt;&quot;Zhenyu Xu &amp;lt;bobijam@hotmail.com&amp;gt;&quot; uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/50905&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/50905&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16808&quot; title=&quot;lfs find --printf fails on FIFOs and special files&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16808&quot;&gt;&lt;del&gt;LU-16808&lt;/del&gt;&lt;/a&gt; lfs: lfs find --printf won&apos;t hang on special files&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 935a7716d744d2c2009a363f0b1bdbaee84d0895&lt;/p&gt;</comment>
                            <comment id="371790" author="gerrit" created="Wed, 10 May 2023 15:26:42 +0000"  >&lt;p&gt;&quot;Zhenyu Xu &amp;lt;bobijam@hotmail.com&amp;gt;&quot; uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/50916&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/50916&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16808&quot; title=&quot;lfs find --printf fails on FIFOs and special files&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16808&quot;&gt;&lt;del&gt;LU-16808&lt;/del&gt;&lt;/a&gt; lfs: return error if projid cannot be retrieved&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 37871eccbaafe1e2b7a07dd74070ef7ba2d40751&lt;/p&gt;</comment>
                            <comment id="372420" author="JIRAUSER18444" created="Tue, 16 May 2023 14:17:20 +0000"  >&lt;p&gt;I noticed another (potential) issue with symlinks and the project ID. For most attributes it appears &lt;tt&gt;lfs find&lt;/tt&gt; uses data from the symlink itself, but for project ID, &lt;tt&gt;lfs find&lt;/tt&gt; seems to use the value from the target:&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;
$ touch file20 &amp;amp;&amp;amp; lfs project -p 20 file20
$ ln -s file20 link21 &amp;amp;&amp;amp; lfs project -p 21 link21

$ lfs project .
&#160; &#160;20 - ./file20
&#160; &#160;21 - ./link21

# including %s in the format string to demonstrate that lfs find uses values from the link itself (and not the target) &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; attributes other than project id
$ lfs find . --printf &lt;span class=&quot;code-quote&quot;&gt;&quot;%p %s %LP\n&quot;&lt;/span&gt;
. 4096 0
./file20 0 20
./link21 6 20&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Would we expect that &lt;tt&gt;lfs find&lt;/tt&gt; would use the value from the link in this case?&lt;/p&gt;

&lt;p&gt;Interestingly, I ran a quick test on ext4 and found that (at least in my setup) projid on symlinks did not work:&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;
ext4-mount $ touch file20 &amp;amp;&amp;amp; chattr -p 20 file20
ext4-mount $ ln -s file20 link21
 
ext4-mount $ chattr -p 21 link21
chattr: Operation not supported &lt;span class=&quot;code-keyword&quot;&gt;while&lt;/span&gt; reading flags on link21

ext4-mount $ lsattr -p .
&#160; &#160; 0 --------------e------- ./lost+found
lsattr: Operation not supported While reading flags on ./link21
&#160; &#160;20 --------------e------- ./file20&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;I am not sure what the &quot;expected&quot; behavior of projid and symlinks is so I don&apos;t know if the &lt;tt&gt;lfs find&lt;/tt&gt; behavior above is problematic.&lt;/p&gt;

&lt;p&gt;@adilger any thoughts on this? If the current behavior is wrong should I submit a ticket for this?&lt;/p&gt;</comment>
                            <comment id="372431" author="adilger" created="Tue, 16 May 2023 14:50:19 +0000"  >&lt;p&gt;Getting the projid on the symlink target is intentional behavior (&lt;a href=&quot;https://jira.whamcloud.com/browse/LU-11872&quot; title=&quot;Request for option not to follow symlink when setting project ID&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-11872&quot;&gt;&lt;del&gt;LU-11872&lt;/del&gt;&lt;/a&gt;).&lt;/p&gt;</comment>
                            <comment id="375905" author="gerrit" created="Tue, 20 Jun 2023 03:42:17 +0000"  >&lt;p&gt;&quot;Oleg Drokin &amp;lt;green@whamcloud.com&amp;gt;&quot; merged in patch &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/50905/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/50905/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16808&quot; title=&quot;lfs find --printf fails on FIFOs and special files&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16808&quot;&gt;&lt;del&gt;LU-16808&lt;/del&gt;&lt;/a&gt; lfs: lfs find --printf won&apos;t hang on special files&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: f47f816a5b1deabc1d501332a1a30af205d22515&lt;/p&gt;</comment>
                            <comment id="375906" author="gerrit" created="Tue, 20 Jun 2023 03:43:18 +0000"  >&lt;p&gt;&quot;Oleg Drokin &amp;lt;green@whamcloud.com&amp;gt;&quot; merged in patch &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/50916/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/50916/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16808&quot; title=&quot;lfs find --printf fails on FIFOs and special files&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16808&quot;&gt;&lt;del&gt;LU-16808&lt;/del&gt;&lt;/a&gt; lfs: return invalid=-1 if no projid retrieved&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 8d09b3e77744973d10d2029028d7e6f14591bc6d&lt;/p&gt;</comment>
                            <comment id="375996" author="pjones" created="Tue, 20 Jun 2023 17:23:54 +0000"  >&lt;p&gt;Landed for 2.16&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="54597">LU-11872</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="70232">LU-15837</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|i03kv3:</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>