<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Updater Exception due to Recursion in Revit API Forum</title>
    <link>https://forums.autodesk.com/t5/revit-api-forum/updater-exception-due-to-recursion/m-p/7147003#M57922</link>
    <description>&lt;P&gt;Inside an Updater you&amp;nbsp;&amp;nbsp;aren't allowed to use a transaction. When you do, you'll get the message you described.&lt;/P&gt;</description>
    <pubDate>Mon, 12 Jun 2017 20:37:07 GMT</pubDate>
    <dc:creator>FAIR59</dc:creator>
    <dc:date>2017-06-12T20:37:07Z</dc:date>
    <item>
      <title>Updater Exception due to Recursion</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/updater-exception-due-to-recursion/m-p/7131927#M57919</link>
      <description>&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;the below exception has been thrown when trying to modify the modified elements.&lt;/P&gt;&lt;P&gt;&lt;EM&gt;"Third party updater 'MyUpdater' has experienced a problem and its action had to be canceled."&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I think that happened because my business logic &lt;STRONG&gt;recursion behaviour&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;Any help about how to modify the modified elements?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Thanks in advance.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 06 Jun 2017 14:00:39 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/updater-exception-due-to-recursion/m-p/7131927#M57919</guid>
      <dc:creator>mm1452</dc:creator>
      <dc:date>2017-06-06T14:00:39Z</dc:date>
    </item>
    <item>
      <title>Re: Updater Exception due to Recursion</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/updater-exception-due-to-recursion/m-p/7135812#M57920</link>
      <description>&lt;P&gt;Afaik, the different updater types have different priorities and are executed in a specific order.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Choose the correct updater priority.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If that does not help, check out the hints on&amp;nbsp;Dynamic Update of Elements that Mutually Influence each Other in&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://thebuildingcoder.typepad.com/blog/2013/12/devlab-munich.html" target="_blank"&gt;http://thebuildingcoder.typepad.com/blog/2013/12/devlab-munich.html&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here is The Building Coder topic on DMU:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://thebuildingcoder.typepad.com/blog/about-the-author.html#5.31" target="_blank"&gt;http://thebuildingcoder.typepad.com/blog/about-the-author.html#5.31&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Good luck!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please let us know how you end up solving this.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Cheers,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Jeremy&lt;/P&gt;</description>
      <pubDate>Wed, 07 Jun 2017 18:07:33 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/updater-exception-due-to-recursion/m-p/7135812#M57920</guid>
      <dc:creator>jeremytammik</dc:creator>
      <dc:date>2017-06-07T18:07:33Z</dc:date>
    </item>
    <item>
      <title>Re: Updater Exception due to Recursion</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/updater-exception-due-to-recursion/m-p/7146082#M57921</link>
      <description>&lt;P&gt;Dear Jeremy,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for caring.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regarding the problem, I have tried several approaches like make a condition inside the execute method to end the recursion by checking the equality of the modified elements ids, but the exception still thrown. Also trying to save the elements ids and modify them at the updater destuctor but I have found the updater object still a live! finally I gave up :D.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So I have redefined the problem by customizing the event using&amp;nbsp;GetChangeTypeParameter method instead of&amp;nbsp;GetChangeTypeAny which doesn't throw an exception but doesn't satisfy all my need.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;mm&lt;/P&gt;</description>
      <pubDate>Mon, 12 Jun 2017 15:25:28 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/updater-exception-due-to-recursion/m-p/7146082#M57921</guid>
      <dc:creator>mm1452</dc:creator>
      <dc:date>2017-06-12T15:25:28Z</dc:date>
    </item>
    <item>
      <title>Re: Updater Exception due to Recursion</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/updater-exception-due-to-recursion/m-p/7147003#M57922</link>
      <description>&lt;P&gt;Inside an Updater you&amp;nbsp;&amp;nbsp;aren't allowed to use a transaction. When you do, you'll get the message you described.&lt;/P&gt;</description>
      <pubDate>Mon, 12 Jun 2017 20:37:07 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/updater-exception-due-to-recursion/m-p/7147003#M57922</guid>
      <dc:creator>FAIR59</dc:creator>
      <dc:date>2017-06-12T20:37:07Z</dc:date>
    </item>
    <item>
      <title>Re: Updater Exception due to Recursion</title>
      <link>https://forums.autodesk.com/t5/revit-api-forum/updater-exception-due-to-recursion/m-p/7147777#M57923</link>
      <description>&lt;P&gt;Yes, absolutely!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The updater already has a transaction open.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The whole point of the updater framework is to enable an add-in to include its modifications in the same transaction as the trigger.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Cheers,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Jeremy&lt;/P&gt;</description>
      <pubDate>Tue, 13 Jun 2017 07:35:41 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/revit-api-forum/updater-exception-due-to-recursion/m-p/7147777#M57923</guid>
      <dc:creator>jeremytammik</dc:creator>
      <dc:date>2017-06-13T07:35:41Z</dc:date>
    </item>
  </channel>
</rss>

