<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 03:06: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>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[SERVER-4719] crash on invalid BSON data when constructing BSONObj</title>
                <link>https://jira.mongodb.org/browse/SERVER-4719</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;::mongo::BSONObj class has insufficient validation for bad data. This means that on some bad input it may crash. See the attached test case which shows an example bad data which demonstrates the problem - this is based on real data we&apos;ve got from core dump in our application. See also the proposed fix for the code in the attached diff.&lt;/p&gt;</description>
                <environment>Linux 2.6.38-13-generic-pae #53-Ubuntu SMP  i686 athlon i386 GNU/Linux</environment>
        <key id="28659">SERVER-4719</key>
            <summary>crash on invalid BSON data when constructing BSONObj</summary>
                <type id="1" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14703&amp;avatarType=issuetype">Bug</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="4">Incomplete</resolution>
                                        <assignee username="milkie@mongodb.com">Eric Milkie</assignee>
                                    <reporter username="serj">Sergey</reporter>
                        <labels>
                            <label>C++</label>
                            <label>bson</label>
                            <label>crash</label>
                    </labels>
                <created>Thu, 19 Jan 2012 09:29:13 +0000</created>
                <updated>Fri, 8 Mar 2013 15:55:26 +0000</updated>
                            <resolved>Mon, 5 Nov 2012 18:07:41 +0000</resolved>
                                                                    <component>Internal Client</component>
                                        <votes>0</votes>
                                    <watches>6</watches>
                                                                                                                <comments>
                            <comment id="168609" author="mpugachev" created="Thu, 27 Sep 2012 06:52:26 +0000"  >&lt;p&gt;OK, thanks, Eric!&lt;/p&gt;</comment>
                            <comment id="168448" author="milkie" created="Wed, 26 Sep 2012 20:57:37 +0000"  >&lt;p&gt;I recommend calling validate() then.  It really only checks if BSON String-type elements are correct, and shouldn&apos;t have much of an effect on performance.&lt;/p&gt;</comment>
                            <comment id="168114" author="mpugachev" created="Wed, 26 Sep 2012 06:50:58 +0000"  >&lt;p&gt;Unfortunately, no: iterator.next(true) gives me &quot;Segmentation fault&quot;, but iterator.next().validate() works well and throws exception while checking invalid data.&lt;/p&gt;</comment>
                            <comment id="167926" author="milkie" created="Tue, 25 Sep 2012 20:48:08 +0000"  >&lt;p&gt;Would calling next(true) work for you?  This would achieve the same checking, and it&apos;s already present in the server.&lt;/p&gt;</comment>
                            <comment id="165505" author="mpugachev" created="Tue, 18 Sep 2012 14:20:46 +0000"  >&lt;p&gt;Yes, I think this method will help us. Thanks!&lt;/p&gt;</comment>
                            <comment id="165497" author="milkie" created="Tue, 18 Sep 2012 14:12:33 +0000"  >&lt;p&gt;I see.  We could add a nextSafe() to BSONObjIterator which does the checking in the proposed patch, and then you could use that in your code.  Would that work?&lt;/p&gt;</comment>
                            <comment id="165465" author="mpugachev" created="Tue, 18 Sep 2012 13:01:00 +0000"  >&lt;p&gt;We&apos;ve got it from mongo server. Maybe it was some specific network error, dunno.&lt;br/&gt;
validate() can help but I need to do it every time with every BSONObject. This is a performance penalty too, unfortunately.&lt;/p&gt;</comment>
                            <comment id="165204" author="milkie" created="Mon, 17 Sep 2012 20:19:43 +0000"  >&lt;p&gt;Hi. Recently I&apos;ve had some time to think about what this check will do.&lt;br/&gt;
For every routine call to next() when iterating over a BSONObject, the proposed patch adds a call to strnlen() over the next BSONElement.  For large elements or objects with many elements, this strnlen scanning could add a material performance penalty.  I&apos;m not sure that adding the check to next() is the right way to fix the crashing issue.&lt;br/&gt;
For the crashes you experienced, from where did the bad BSON data originate?  The test provided in this ticket hardcodes BSON values in a way that doesn&apos;t represent real-world use.  Perhaps just running validate() on known bad data will be sufficient to avoid server crashes?&lt;/p&gt;</comment>
                            <comment id="134202" author="mpugachev" created="Tue, 19 Jun 2012 06:50:51 +0000"  >&lt;p&gt;Great, thanks!&lt;/p&gt;</comment>
                            <comment id="133966" author="milkie" created="Mon, 18 Jun 2012 18:00:50 +0000"  >&lt;p&gt;Thanks. We&apos;re in code freeze for the moment but as soon as 2.1 is branched, I can submit to head and then consider backporting to 2.0.7.&lt;/p&gt;</comment>
                            <comment id="133903" author="mpugachev" created="Mon, 18 Jun 2012 13:08:34 +0000"  >&lt;p&gt;Done.&lt;/p&gt;</comment>
                            <comment id="133895" author="milkie" created="Mon, 18 Jun 2012 12:41:41 +0000"  >&lt;p&gt;Thanks, I&apos;d like to incorporate this patch into the mongodb source.  Can you first sign the contributor agreement here: &lt;a href=&quot;http://www.10gen.com/contributor&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://www.10gen.com/contributor&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="133828" author="mpugachev" created="Mon, 18 Jun 2012 07:33:34 +0000"  >&lt;p&gt;Hi Eric!&lt;br/&gt;
I`ve tested this issue again using source code directly from the git repository (git clone &lt;a href=&quot;https://github.com/mongodb/mongo.git&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo.git&lt;/a&gt;). Unfortunately, results are the same:&lt;/p&gt;

&lt;p&gt;Program received signal SIGSEGV, Segmentation fault.&lt;br/&gt;
0x08049ae4 in mongo::BSONElement::type (this=0xbffff27c) at /home/mpugachev/work/mongodb/src/mongo/bson/bsonelement.h:110&lt;br/&gt;
110	        BSONType type() const &lt;/p&gt;
{ return (BSONType) *reinterpret_cast&amp;lt; const signed char * &amp;gt;(data); }
&lt;p&gt;(gdb) bt&lt;br/&gt;
#0  0x08049ae4 in mongo::BSONElement::type (this=0xbffff27c) at /home/mpugachev/work/mongodb/src/mongo/bson/bsonelement.h:110&lt;br/&gt;
#1  0x08049afd in mongo::BSONElement::eoo (this=0xbffff27c) at /home/mpugachev/work/mongodb/src/mongo/bson/bsonelement.h:126&lt;br/&gt;
#2  0x0804a025 in mongo::BSONElement::BSONElement (this=0xbffff27c, d=0x5e50142 &amp;lt;Address 0x5e50142 out of bounds&amp;gt;) at /home/mpugachev/work/mongodb/src/mongo/bson/bsonelement.h:448&lt;br/&gt;
#3  0x0804a403 in mongo::BSONObjIterator::next (this=0xbffff288) at /home/mpugachev/work/mongodb/src/mongo/bson/bsonobjiterator.h:70&lt;br/&gt;
#4  0x0804a6ff in mongo::BSONObj::getField (this=0xbffff2f8, name=...) at /home/mpugachev/work/mongodb/src/mongo/bson/bson-inl.h:266&lt;br/&gt;
#5  0x0804a1a7 in mongo::BSONObj::hasField (this=0xbffff2f8, name=0x804d0d8 &quot;$err&quot;) at /home/mpugachev/work/mongodb/src/mongo/bson/bsonobj.h:227&lt;br/&gt;
#6  0x08049193 in main (argc=1, argv=0xbffff3c4) at crash.cpp:9&lt;/p&gt;

&lt;p&gt;In bsonfix-nightly.patch you can find updated patch.&lt;/p&gt;</comment>
                            <comment id="133743" author="milkie" created="Sun, 17 Jun 2012 19:55:45 +0000"  >&lt;p&gt;Hi Pugachev, &lt;br/&gt;
The latest sources are not for version 2.0.6; they are for candidate version 2.1.2, which can be found in the Nightly development builds.  I can&apos;t apply patches to older version code such as version 2.0.6.  I need to apply them to the latest code and then backport it.  I believe the latest code already does more BSON validation.  If someone can show the latest code hitting this same issue, I can fix it and backport it for release in 2.0.7.&lt;/p&gt;</comment>
                            <comment id="131582" author="mpugachev" created="Wed, 13 Jun 2012 08:53:42 +0000"  >&lt;p&gt;Hi all!&lt;br/&gt;
I`ve retested this issue and got similar result with the latest sources. My test environment:&lt;/p&gt;

&lt;p&gt;Linux iceland 2.6.38-15-generic-pae #60-Ubuntu SMP Tue May 22 11:48:17 UTC 2012 i686 i686 i386 GNU/Linux&lt;br/&gt;
db version v2.0.6, pdfile version 4.5&lt;br/&gt;
MongoDB shell version: 2.0.6&lt;/p&gt;

&lt;p&gt;Stacktrace:&lt;br/&gt;
Program received signal SIGSEGV, Segmentation fault.&lt;br/&gt;
0x08049f4a in mongo::BSONElement::type (this=0xbffff27c) at /home/mpugachev/Downloads/mongodb-src-r2.0.6/bson/bsonelement.h:107&lt;br/&gt;
107	        BSONType type() const &lt;/p&gt;
{ return (BSONType) *data; }
&lt;p&gt;(gdb) bt&lt;br/&gt;
#0  0x08049f4a in mongo::BSONElement::type (this=0xbffff27c) at /home/mpugachev/Downloads/mongodb-src-r2.0.6/bson/bsonelement.h:107&lt;br/&gt;
#1  0x08049f63 in mongo::BSONElement::eoo (this=0xbffff27c) at /home/mpugachev/Downloads/mongodb-src-r2.0.6/bson/bsonelement.h:123&lt;br/&gt;
#2  0x0804a3f9 in mongo::BSONElement::BSONElement (this=0xbffff27c, d=0x5e51162 &amp;lt;Address 0x5e51162 out of bounds&amp;gt;) at /home/mpugachev/Downloads/mongodb-src-r2.0.6/bson/bsonelement.h:405&lt;br/&gt;
#3  0x0804a972 in mongo::BSONObjIterator::next (this=0xbffff288) at /home/mpugachev/Downloads/mongodb-src-r2.0.6/bson/bsonobjiterator.h:70&lt;br/&gt;
#4  0x0804ad57 in mongo::BSONObj::getField (this=0xbffff2f8, name=...) at /home/mpugachev/Downloads/mongodb-src-r2.0.6/bson/bson-inl.h:267&lt;br/&gt;
#5  0x0804a5f3 in mongo::BSONObj::hasField (this=0xbffff2f8, name=0x804d4c2 &quot;$err&quot;) at /home/mpugachev/Downloads/mongodb-src-r2.0.6/bson/bsonobj.h:221&lt;br/&gt;
#6  0x08049243 in main (argc=1, argv=0xbffff3c4) at crash.cpp:9&lt;/p&gt;

&lt;p&gt;After debugging I understand that the error was in size calculation logic (BSONElement::valuestrsize() method). To be more precise, the error was in data itself (provided in crash.cpp, we`ve got it from mongod) and this method just returned a garbage. So, the question is why mongod give us corrupted data. Maybe a network error or something, dunno.&lt;/p&gt;

&lt;p&gt;Sergey`s patch helps to catch this event.&lt;/p&gt;</comment>
                            <comment id="105146" author="milkie" created="Fri, 30 Mar 2012 13:44:09 +0000"  >&lt;p&gt;Hi Sergey,&lt;br/&gt;
Can you try the same test with crash.cpp using a Nightly build?  Paste in the backtrace of the crash as you did with version 2.0 above.  Since I am unable to reproduce the issue here, I&apos;m hoping the further information will give me enough confidence that your suggested patch will fix the issue.&lt;/p&gt;</comment>
                            <comment id="101751" author="serj" created="Fri, 23 Mar 2012 06:30:19 +0000"  >&lt;p&gt;binary file&lt;/p&gt;</comment>
                            <comment id="101419" author="milkie" created="Thu, 22 Mar 2012 15:38:48 +0000"  >&lt;p&gt;I don&apos;t understand why the stack trace keeps changing for you. It says that line 9 is now crashing.&lt;br/&gt;
The core file is not useful without the binary that created it.&lt;/p&gt;</comment>
                            <comment id="101396" author="serj" created="Thu, 22 Mar 2012 15:11:22 +0000"  >&lt;p&gt;core dump from crash.cpp&lt;/p&gt;</comment>
                            <comment id="101394" author="serj" created="Thu, 22 Mar 2012 15:10:35 +0000"  >&lt;p&gt;I added mu core file&lt;br/&gt;
I repeated  again bt:&lt;br/&gt;
#0  0x08049c48 in mongo::BSONElement::type (this=0xbfdd40bc) at /home/skablov/mongodb-src-r2.0.4/bson/bsonelement.h:107&lt;br/&gt;
107	        BSONType type() const &lt;/p&gt;
{ return (BSONType) *data; }
&lt;p&gt;(gdb) bt&lt;br/&gt;
#0  0x08049c48 in mongo::BSONElement::type (this=0xbfdd40bc) at /home/skablov/mongodb-src-r2.0.4/bson/bsonelement.h:107&lt;br/&gt;
#1  0x08049c61 in mongo::BSONElement::eoo (this=0xbfdd40bc) at /home/skablov/mongodb-src-r2.0.4/bson/bsonelement.h:123&lt;br/&gt;
#2  0x0804a0c3 in mongo::BSONElement::BSONElement (this=0xbfdd40bc, d=0x5e50122 &amp;lt;Address 0x5e50122 out of bounds&amp;gt;) at /home/skablov/mongodb-src-r2.0.4/bson/bsonelement.h:403&lt;br/&gt;
#3  0x0804a507 in mongo::BSONObjIterator::next (this=0xbfdd40c8) at /home/skablov/mongodb-src-r2.0.4/bson/bsonobjiterator.h:68&lt;br/&gt;
#4  0x0804a83f in mongo::BSONObj::getField (this=0xbfdd4138, name=...) at /home/skablov/mongodb-src-r2.0.4/bson/bson-inl.h:267&lt;br/&gt;
#5  0x0804a27b in mongo::BSONObj::hasField (this=0xbfdd4138, name=0x804cd7c &quot;$err&quot;) at /home/skablov/mongodb-src-r2.0.4/bson/bsonobj.h:221&lt;br/&gt;
#6  0x08049073 in main (argc=1, argv=0xbfdd4204) at crash1.cpp:9&lt;br/&gt;
(gdb) f 6&lt;br/&gt;
#6  0x08049073 in main (argc=1, argv=0xbfdd4204) at crash1.cpp:9&lt;br/&gt;
9		if ( bson.hasField(&quot;$err&quot;) ) {&lt;br/&gt;
(gdb) l&lt;br/&gt;
4	&lt;br/&gt;
5	int main(int argc, const char* argv[])&lt;br/&gt;
6	{&lt;br/&gt;
7		::mongo::BSONObj bson(reinterpret_cast&amp;lt;const char*&amp;gt;(buf));&lt;br/&gt;
8		printf(&quot;%d\n&quot;, bson.objsize());&lt;br/&gt;
9		if ( bson.hasField(&quot;$err&quot;) ) &lt;/p&gt;
{
10			printf(&quot;Has Field\n&quot;);
11		}
&lt;p&gt;12		return 0;&lt;br/&gt;
13	}&lt;br/&gt;
(gdb) &lt;/p&gt;</comment>
                            <comment id="101352" author="milkie" created="Thu, 22 Mar 2012 14:16:09 +0000"  >&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;#3 0x0804902b in main (argc=1, argv=0xbf9ca594) at crash.cpp:6&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;
&lt;p&gt;When I look at your crash.cpp attachment, line 6 is an open brace.  Was your stack trace generated using the same crash.cpp?&lt;/p&gt;</comment>
                            <comment id="101336" author="serj" created="Thu, 22 Mar 2012 13:53:48 +0000"  >&lt;p&gt;You are right I have compiled with wrong header, I&apos; ve recompiled and now I&apos;ve  got the following  backtrace&lt;br/&gt;
#0  0x0804a92d in mongo::BSONObj::toString (this=0x804cd52, isArray=false, full=255) at /home/.../mongodb-src-r2.0.4/bson/bson-inl.h:444&lt;br/&gt;
444	        if ( isEmpty() ) return &quot;{}&quot;;&lt;br/&gt;
(gdb) bt&lt;br/&gt;
#0  0x0804a92d in mongo::BSONObj::toString (this=0x804cd52, isArray=false, full=255) at /home/.../mongodb-src-r2.0.4/bson/bson-inl.h:444&lt;br/&gt;
#1  0x0804ab7b in mongo::BSONObj::toString (this=0xbf9ca48c, s=..., isArray=false, full=255) at /home/.../mongodb-src-r2.0.4/bson/bson-inl.h:462&lt;br/&gt;
#2  0x0804a52b in mongo::BSONElement::embeddedObject (this=0xb766aff4) at /home/.../mongodb-src-r2.0.4/bson/bson-inl.h:183&lt;br/&gt;
#3  0x0804902b in main (argc=1, argv=0xbf9ca594) at crash.cpp:6&lt;br/&gt;
(gdb) f 0&lt;br/&gt;
#0  0x0804a92d in mongo::BSONObj::toString (this=0x804cd52, isArray=false, full=255) at /home/.../mongodb-src-r2.0.4/bson/bson-inl.h:444&lt;br/&gt;
444	        if ( isEmpty() ) return &quot;{}&quot;;&lt;br/&gt;
(gdb) l&lt;br/&gt;
439	            s.insert( it.next() );&lt;br/&gt;
440	        return s;&lt;br/&gt;
441	    }&lt;br/&gt;
442	&lt;br/&gt;
443	    inline string BSONObj::toString( bool isArray, bool full ) const {&lt;br/&gt;
444	        if ( isEmpty() ) return &quot;{}&quot;;&lt;br/&gt;
445	        StringBuilder s;&lt;br/&gt;
446	        toString(s, isArray, full);&lt;br/&gt;
447	        return s.str();&lt;br/&gt;
448	    }&lt;br/&gt;
(gdb) &lt;/p&gt;</comment>
                            <comment id="101328" author="milkie" created="Thu, 22 Mar 2012 13:41:16 +0000"  >&lt;p&gt;Please ensure that the headers you are using match the libraries you are linking.  In the stack trace I see a reference to bsoninlines.h, which hasn&apos;t existed since October 2010.  Are you sure you&apos;re using headers from 2.0.4?&lt;/p&gt;</comment>
                            <comment id="101316" author="serj" created="Thu, 22 Mar 2012 13:04:29 +0000"  >&lt;p&gt;#0  0x0804a92d in mongo::BSONObjIterator::more (this=0xbf9ca458) at /usr/include/mongo/bson/../bson/bsonobjiterator.h:55&lt;br/&gt;
#1  0x0804ab7b in mongo::BSONObj::getField (this=0xbf9ca4c4, name=...) at /usr/include/mongo/bson/../bson/bsoninlines.h:81&lt;br/&gt;
#2  0x0804a52b in mongo::BSONObj::hasField (this=0xbf9ca4c4, name=0x804cd52 &quot;$err&quot;) at /usr/include/mongo/bson/../bson/bsonobj.h:154&lt;br/&gt;
#3  0x0804902b in main (argc=1, argv=0xbf9ca594) at crash.cpp:9&lt;/p&gt;</comment>
                            <comment id="101306" author="eliot" created="Thu, 22 Mar 2012 12:29:27 +0000"  >&lt;p&gt;Can you send the stack trace you yet?&lt;/p&gt;</comment>
                            <comment id="101282" author="serj" created="Thu, 22 Mar 2012 10:46:49 +0000"  >&lt;p&gt;Hello, Please tell me what version should I use not to get core dump&lt;br/&gt;
I compiled (g++ -o crash crash.cpp -I/home/skablov/mongodb-src-r2.0.4) crash.cpp with mongodb-src-r2.0.4 mongodb-mongo-r2.1.0-1582-g5d3433e.tar.gz mongodb-mongo-r2.0.0-rc2-1631-g524af38.tar.gz&lt;br/&gt;
In all cases I get Segmentation fault.&lt;br/&gt;
Please tell me where the core of the problem is&lt;br/&gt;
or may be I have done something in the wrong way.&lt;/p&gt;</comment>
                            <comment id="86963" author="milkie" created="Thu, 9 Feb 2012 17:42:05 +0000"  >&lt;p&gt;Hi Sergey:&lt;br/&gt;
Thank you for your submission. I tried out crash.cpp but it just prints &quot;4102&quot; for me.  Even when I run it with Valgrind, it doesn&apos;t detect any memory corruption errors.  I am running this on Fedora Linux but I don&apos;t think that should make a difference.&lt;/p&gt;

&lt;p&gt;Can you try running crash.cpp again on the code pulled from the head of master?  If you can still reproduce the crash, I can look into it further.  Thanks!&lt;/p&gt;
</comment>
                    </comments>
                    <attachments>
                            <attachment id="17312" name="bsonfix-nightly.patch" size="1059" author="mpugachev" created="Mon, 18 Jun 2012 07:33:54 +0000"/>
                            <attachment id="14487" name="bsonfix.patch" size="1303" author="serj" created="Thu, 19 Jan 2012 09:29:13 +0000"/>
                            <attachment id="15490" name="core" size="282624" author="serj" created="Thu, 22 Mar 2012 15:11:22 +0000"/>
                            <attachment id="15511" name="crash" size="165972" author="serj" created="Fri, 23 Mar 2012 06:30:19 +0000"/>
                            <attachment id="14486" name="crash.cpp" size="17217" author="serj" created="Thu, 19 Jan 2012 09:29:13 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>27.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Thu, 19 Jan 2012 13:24:27 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        11 years, 20 weeks, 6 days ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[]]></customfieldvalue>


                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>ian@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            11 years, 20 weeks, 6 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10000" key="com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons">
                        <customfieldname>Old_Backport</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10000"><![CDATA[No]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10032" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Operating System</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10020"><![CDATA[Linux]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>eliot</customfieldvalue>
            <customfieldvalue>milkie@mongodb.com</customfieldvalue>
            <customfieldvalue>mpugachev</customfieldvalue>
            <customfieldvalue>serj</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrogg7:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hrg4uv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>7691</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_23361" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Requested By</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_22870" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Triagers</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrnurz:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                    </customfields>
    </item>
</channel>
</rss>