<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 02:55:50 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-1020] Assertion: 13000:invalid keyNode</title>
                <link>https://jira.mongodb.org/browse/SERVER-1020</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;I am looping through all artists in the db and issuing following three queries for each:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Update img in artist by id&lt;br/&gt;
db.artists.update(
{ _id: &quot;sSKwjm_S1go&quot; }
&lt;p&gt; ,&lt;/p&gt;
&lt;div class=&quot;error&quot;&gt;&lt;span class=&quot;error&quot;&gt;Unknown macro: { $set}&lt;/span&gt; &lt;/div&gt;
&lt;p&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Update all simarts.img for all artists&lt;br/&gt;
db.artists.update(
{ simarts.id: &quot;sSKwjm_S1go&quot; }
&lt;p&gt; ,&lt;/p&gt;
&lt;div class=&quot;error&quot;&gt;&lt;span class=&quot;error&quot;&gt;Unknown macro: { $set}&lt;/span&gt; &lt;/div&gt;
&lt;p&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Update all tagart img by artistId&lt;br/&gt;
update cl.tagarts  query: 
{ artistid: &quot;sSKwjm_S1go&quot; }
&lt;p&gt; update: &lt;/p&gt;
&lt;div class=&quot;error&quot;&gt;&lt;span class=&quot;error&quot;&gt;Unknown macro: { $set}&lt;/span&gt; &lt;/div&gt;
&lt;p&gt;db.tagarts.update(&lt;/p&gt;
{ artistid: &quot;sSKwjm_S1go&quot; }
&lt;p&gt;,&lt;/p&gt;
&lt;div class=&quot;error&quot;&gt;&lt;span class=&quot;error&quot;&gt;Unknown macro: { $set}&lt;/span&gt; &lt;/div&gt;
&lt;p&gt;)&lt;br/&gt;
THIS IS THE QUERY WHICH FAILS SOMETIMES&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Get this exceptions in the log when i am updating, example log:&lt;/p&gt;

&lt;p&gt;update cl.artists  query: &lt;/p&gt;
{ _id: &quot;sSKwjm_S1go&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ img: &quot;D1FD71F8B062F0C8&quot; }
&lt;p&gt; } 0ms &lt;br/&gt;
update cl.artists  query: &lt;/p&gt;
{ simarts.id: &quot;sSKwjm_S1go&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ simarts.$.img: &quot;D1FD71F8B062F0C8&quot; }
&lt;p&gt; } 31ms &lt;br/&gt;
Assertion: 13000:invalid keyNode: &lt;/p&gt;
{ &quot;i&quot; : 100, &quot;n&quot; : 100 }
&lt;p&gt;    &lt;br/&gt;
  Caught Assertion in update , continuing &lt;br/&gt;
update cl.tagarts  query: &lt;/p&gt;
{ artistid: &quot;sSKwjm_S1go&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ image: &quot;D1FD71F8B062F0C8&quot; }
&lt;p&gt; } exception massert:invalid keyNode: &lt;/p&gt;
{ &quot;i&quot; : 100, &quot;n&quot; : 100 }
&lt;p&gt; 15ms &lt;br/&gt;
update cl.artists  query: &lt;/p&gt;
{ _id: &quot;Nd4OdVNHflU&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ img: &quot;E2CD326B2E47EF56&quot; }
&lt;p&gt; } 0ms &lt;br/&gt;
update cl.artists  query: &lt;/p&gt;
{ simarts.id: &quot;Nd4OdVNHflU&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ simarts.$.img: &quot;E2CD326B2E47EF56&quot; }
&lt;p&gt; } 31ms &lt;br/&gt;
update cl.tagarts  query: &lt;/p&gt;
{ artistid: &quot;Nd4OdVNHflU&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ image: &quot;E2CD326B2E47EF56&quot; }
&lt;p&gt; } 0ms &lt;br/&gt;
update cl.artists  query: &lt;/p&gt;
{ _id: &quot;jeX7zu5fEYE&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ img: &quot;3F8264975F62116C&quot; }
&lt;p&gt; } 0ms &lt;br/&gt;
update cl.artists  query: &lt;/p&gt;
{ simarts.id: &quot;jeX7zu5fEYE&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ simarts.$.img: &quot;3F8264975F62116C&quot; }
&lt;p&gt; } 31ms &lt;br/&gt;
update cl.tagarts  query: &lt;/p&gt;
{ artistid: &quot;jeX7zu5fEYE&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ image: &quot;3F8264975F62116C&quot; }
&lt;p&gt; } 0ms &lt;br/&gt;
update cl.artists  query: &lt;/p&gt;
{ _id: &quot;JsSAZfOn7NA&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ img: &quot;61EE3041543A7F18&quot; }
&lt;p&gt; } 0ms &lt;br/&gt;
update cl.artists  query: &lt;/p&gt;
{ simarts.id: &quot;JsSAZfOn7NA&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ simarts.$.img: &quot;61EE3041543A7F18&quot; }
&lt;p&gt; } 15ms &lt;br/&gt;
Assertion: 13000:invalid keyNode: &lt;/p&gt;
{ &quot;i&quot; : 96, &quot;n&quot; : 96 }
&lt;p&gt; &lt;br/&gt;
   Caught Assertion in update , continuing &lt;br/&gt;
update cl.tagarts  query: &lt;/p&gt;
{ artistid: &quot;JsSAZfOn7NA&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ image: &quot;61EE3041543A7F18&quot; }
&lt;p&gt; } exception massert:invalid keyNode: &lt;/p&gt;
{ &quot;i&quot; : 96, &quot;n&quot; : 96 }
&lt;p&gt; 0ms &lt;br/&gt;
update cl.artists  query: &lt;/p&gt;
{ _id: &quot;fcdNwrJjCLw&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ img: &quot;2E68C6FF30CCD6B9&quot; }
&lt;p&gt; } 0ms &lt;br/&gt;
update cl.artists  query: &lt;/p&gt;
{ simarts.id: &quot;fcdNwrJjCLw&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ simarts.$.img: &quot;2E68C6FF30CCD6B9&quot; }
&lt;p&gt; } 31ms &lt;br/&gt;
Assertion: 13000:invalid keyNode: &lt;/p&gt;
{ &quot;i&quot; : 100, &quot;n&quot; : 100 }
&lt;p&gt; &lt;br/&gt;
   Caught Assertion in update , continuing &lt;br/&gt;
update cl.tagarts  query: &lt;/p&gt;
{ artistid: &quot;fcdNwrJjCLw&quot; }
&lt;p&gt; update: { $set: &lt;/p&gt;
{ image: &quot;2E68C6FF30CCD6B9&quot; }
&lt;p&gt; } exception massert:invalid keyNode: &lt;/p&gt;
{ &quot;i&quot; : 100, &quot;n&quot; : 100 }
&lt;p&gt; 0ms &lt;/p&gt;</description>
                <environment>WIndows 2003 server 32-bit</environment>
        <key id="11783">SERVER-1020</key>
            <summary>Assertion: 13000:invalid keyNode</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="9">Done</resolution>
                                        <assignee username="eliot">Eliot Horowitz</assignee>
                                    <reporter username="okku">Okku Touronen</reporter>
                        <labels>
                    </labels>
                <created>Wed, 14 Apr 2010 03:50:26 +0000</created>
                <updated>Tue, 12 Jul 2016 00:28:09 +0000</updated>
                            <resolved>Mon, 17 May 2010 10:44:57 +0000</resolved>
                                    <version>1.4.0</version>
                                    <fixVersion>1.5.2</fixVersion>
                                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="14325" author="eliot" created="Wed, 19 May 2010 10:15:18 +0000"  >&lt;p&gt;I think this issue &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-1060&quot; title=&quot;multi-update only affects &quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-1060&quot;&gt;&lt;del&gt;SERVER-1060&lt;/del&gt;&lt;/a&gt; is very similar and will go out with 1.4.3.&lt;br/&gt;
I think there is a high probability that will fix your problem.&lt;/p&gt;</comment>
                            <comment id="14316" author="jeremykahn" created="Tue, 18 May 2010 19:16:21 +0000"  >&lt;p&gt;I am having the same problem &amp;#8211; or a very similar one &amp;#8211; on 1.4.1 mongo on OS-X 64-bit.&lt;/p&gt;

&lt;p&gt;Is there any workaround besides building the post-bleeding edge 1.5.2?&lt;/p&gt;</comment>
                            <comment id="14283" author="auto" created="Mon, 17 May 2010 10:44:55 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;login&apos;: &apos;erh&apos;, &apos;name&apos;: &apos;Eliot Horowitz&apos;, &apos;email&apos;: &apos;eliot@10gen.com&apos;}
&lt;p&gt;Message: fix for yield on multi-updatre &lt;a href=&quot;https://jira.mongodb.org/browse/SERVER-1020&quot; title=&quot;Assertion: 13000:invalid keyNode&quot; class=&quot;issue-link&quot; data-issue-key=&quot;SERVER-1020&quot;&gt;&lt;del&gt;SERVER-1020&lt;/del&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://github.com/mongodb/mongo/commit/016af45e0b5cbe1711906fb75002031b0b573183&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://github.com/mongodb/mongo/commit/016af45e0b5cbe1711906fb75002031b0b573183&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="14254" author="okku" created="Fri, 14 May 2010 02:41:52 +0000"  >&lt;p&gt;I created this simple script to replicate the problem, since this is really annoying for me I would like to know if this can be reproduced by someone else and what the status is.&lt;/p&gt;

&lt;p&gt;Create some data:&lt;br/&gt;
&amp;gt; for(i=0;i&amp;lt;1000;i++){ db.t2.insert({_id:i,k:i%12,v:&quot;v&quot;+i%12}); }&lt;/p&gt;

&lt;p&gt;Add index for k:&lt;br/&gt;
&amp;gt; db.t2.ensureIndex(&lt;/p&gt;
{k:1}
&lt;p&gt;)&lt;/p&gt;

&lt;p&gt;Update v for all k=2:&lt;br/&gt;
&amp;gt; db.t2.update(&lt;/p&gt;
{k:2}
&lt;p&gt;,{$set:{v:&quot;two v2&quot;}},false,true)&lt;br/&gt;
invalid keyNode: &lt;/p&gt;
{ &quot;i&quot; : 207, &quot;n&quot; : 207 }

&lt;p&gt;Execute some counts:&lt;br/&gt;
&amp;gt; db.t2.count(&lt;/p&gt;
{k:2,v:&quot;v2&quot;}
&lt;p&gt;)&lt;br/&gt;
45&lt;br/&gt;
&amp;gt; db.t2.count(&lt;/p&gt;
{k:2,v:&quot;two v2&quot;}
&lt;p&gt;)&lt;br/&gt;
39&lt;/p&gt;

&lt;p&gt;Remove index:&lt;br/&gt;
db.t2.dropIndexes();&lt;/p&gt;

&lt;p&gt;Update v for all k=2:&lt;br/&gt;
&amp;gt; db.t2.update(&lt;/p&gt;
{k:2}
&lt;p&gt;,{$set:{v:&quot;three v2&quot;}},false,true)&lt;/p&gt;

&lt;p&gt;Execute some counts:&lt;br/&gt;
&amp;gt; db.t2.count(&lt;/p&gt;
{k:2,v:&quot;v2&quot;}
&lt;p&gt;)&lt;br/&gt;
0&lt;br/&gt;
&amp;gt; db.t2.count(&lt;/p&gt;
{k:2,v:&quot;three v2&quot;}
&lt;p&gt;)&lt;br/&gt;
84&lt;/p&gt;</comment>
                            <comment id="13647" author="okku" created="Wed, 14 Apr 2010 18:46:25 +0000"  >&lt;p&gt;If I remove the index &lt;/p&gt;
{artistid:1}
&lt;p&gt; then everything works.&lt;/p&gt;

&lt;p&gt;If I add the index again then I get the same strange behavior.&lt;/p&gt;

&lt;p&gt;This has clearly something to do with indexes on non ids and multi updates using that index.&lt;/p&gt;</comment>
                            <comment id="13645" author="okku" created="Wed, 14 Apr 2010 18:31:26 +0000"  >&lt;p&gt;Argh!&lt;br/&gt;
I was a little to quick to say that this didn&apos;t happen on 64-bit, I have run the script again and have exactly the same problem. And I have isolated it to one simple update query. By just issuing following statement in the consle:&lt;/p&gt;

&lt;p&gt;&amp;gt;db.tagarts.update(&lt;/p&gt;
{artistid:&quot;yp6S4OY9ryc&quot;}
&lt;p&gt;,{$set:{image:&quot;AF429D812D0755D9&quot;}},false,true) &lt;br/&gt;
invalid keyNode: &lt;/p&gt;
{ &quot;i&quot; : 171, &quot;n&quot; : 171 }

&lt;p&gt;It seems to update some of the objects but not all. If I repeat the update command 4-5 times it eventually updates all objects and everything seems ok again, I get no errors even if I repeat the command 10 times after that. &lt;/p&gt;

&lt;p&gt;I notice that I have forgotten to include the update all flags in the initial description above.&lt;/p&gt;


</comment>
                            <comment id="13642" author="okku" created="Wed, 14 Apr 2010 17:42:16 +0000"  >&lt;p&gt;The symptoms for me on both my 32bit dev machine and the server also 32bit is that not all objects was updated correctly after i run the script. I never found any assertions messages in the log in my 32bit dev machine, but I didn&apos;t go through the entire log either. But if I run the script 4-5 times eventually all objects was updated.&lt;/p&gt;

&lt;p&gt;I can reproduce the assertions on my server.&lt;/p&gt;

&lt;p&gt;I tried to make a simple more isolated script but it didn&apos;t trig the bug. &lt;/p&gt;

&lt;p&gt;Sorry if I can&apos;t be more exact.&lt;/p&gt;

&lt;p&gt;If you really need help with this I can put some more time into it.&lt;/p&gt;

&lt;p&gt;We will go 64bit on the server and hopefully avoid the bug.&lt;/p&gt;</comment>
                            <comment id="13640" author="eliot" created="Wed, 14 Apr 2010 17:11:47 +0000"  >&lt;p&gt;I have been unable to reproduce on linux.&lt;br/&gt;
Can you confirm this is reproducable on win32?&lt;/p&gt;</comment>
                            <comment id="13639" author="okku" created="Wed, 14 Apr 2010 17:08:35 +0000"  >&lt;p&gt;I have tried my scripts on a modern dev machine (windows 7 64bit) and on this machine I can&apos;t reproduce the errors. Maybe this is a windows 32-bit only error?&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                            <attachment id="10199" name="db.rar" size="14627458" author="okku" created="Wed, 14 Apr 2010 04:38:18 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Wed, 14 Apr 2010 17:11:47 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        13 years, 40 weeks 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>ramon.fernandez@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            13 years, 40 weeks 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_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>auto</customfieldvalue>
            <customfieldvalue>eliot</customfieldvalue>
            <customfieldvalue>jeremykahn</customfieldvalue>
            <customfieldvalue>okku</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrpnjj:</customfieldvalue>

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

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>22668</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|hsgvsf:</customfieldvalue>

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