<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://www.pluralsight.com/community/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Jim Johnson's Blog - All Comments</title><link>http://www.pluralsight.com/community/blogs/jimjohn/default.aspx</link><description>Adventures in Atomicity</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP1 (Build: 31106.3070)</generator><item><title>re: Designing protocols</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2009/05/27/designing-protocols.aspx#63923</link><pubDate>Fri, 29 May 2009 08:47:12 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:63923</guid><dc:creator>Rod Widdowson</dc:creator><description>&lt;p&gt;Don&amp;#39;t forget the need for profiles as well as protocols ! &amp;nbsp;They are often overlooked...&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=63923" width="1" height="1"&gt;</description></item><item><title>re: How to get PSPE-like behavior from a non-PSPE database</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2005/09/13/14795.aspx#63717</link><pubDate>Wed, 27 May 2009 17:52:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:63717</guid><dc:creator>jim-johnson</dc:creator><description>&lt;p&gt;I was pointed at &lt;a rel="nofollow" target="_new" href="http://blogs.msdn.com/adonet/archive/2008/03/26/extending-lightweight-transactions-in-sqlclient.aspx"&gt;blogs.msdn.com/.../extending-lightweight-transactions-in-sqlclient.aspx&lt;/a&gt;, which describes some improvements in this space for Sql 2008.&lt;/p&gt;
&lt;p&gt;Jim.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=63717" width="1" height="1"&gt;</description></item><item><title>re: How to get PSPE-like behavior from a non-PSPE database</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2005/09/13/14795.aspx#63714</link><pubDate>Wed, 27 May 2009 14:19:09 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:63714</guid><dc:creator>jim-johnson</dc:creator><description>&lt;p&gt;I&amp;#39;m not on the transactions team anymore, so I&amp;#39;m not the best source for an update. &amp;nbsp;I&amp;#39;ve forwarded this to them, and hope that they&amp;#39;ll give an update here.&lt;/p&gt;
&lt;p&gt;Jim.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=63714" width="1" height="1"&gt;</description></item><item><title>re: How to get PSPE-like behavior from a non-PSPE database</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2005/09/13/14795.aspx#63415</link><pubDate>Mon, 25 May 2009 04:03:24 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:63415</guid><dc:creator>jeff S.</dc:creator><description>&lt;p&gt;It&amp;#39;s now 4 years since this. Is there any way for that adapter not to have to own the Connection? The suggested approach works when the connections are created in one&amp;#39;s code but no suitable for the cases where the connections are created by other resources (we&amp;#39;re still talking about the same resource though). Is there a more ubiquaous way similar to what the transactionScope and SqlConnection work. By virtue of creating the scope, my connection knows how to take advantage of that. Can this adapter be adjusted to play a role like that? To ultimately allow programmers use one scope with as many connections within to connect to one single database without having to involve MSDTC? thanks&lt;/p&gt;
&lt;p&gt;jeff&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=63415" width="1" height="1"&gt;</description></item><item><title>re: Interlude: The Day the Earth Stood Still</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2009/05/03/interlude-the-day-the-earth-stood-still.aspx#62073</link><pubDate>Tue, 05 May 2009 06:34:04 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:62073</guid><dc:creator>Simon</dc:creator><description>&lt;p&gt;I 100% agree. The old version was more a message for peace and against cold war. The new one is rather quite agressive. The new GORT is pretty cool in terms of special fx, but it&amp;#39;s mean! that&amp;#39;s a total nonsense.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=62073" width="1" height="1"&gt;</description></item><item><title>re: Interlude: The Day the Earth Stood Still</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2009/05/03/interlude-the-day-the-earth-stood-still.aspx#62066</link><pubDate>Mon, 04 May 2009 08:49:18 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:62066</guid><dc:creator>Karen</dc:creator><description>&lt;p&gt;My review. In it I agree with you!&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=62066" width="1" height="1"&gt;</description></item><item><title>re: MSDTC changes in WS2008, Part 3: Cluster features</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2008/03/23/50536.aspx#62052</link><pubDate>Fri, 01 May 2009 21:32:26 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:62052</guid><dc:creator>jim-johnson</dc:creator><description>&lt;p&gt;Yes.&lt;/p&gt;
&lt;p&gt;Do remember that this will not be highly available, though.&lt;/p&gt;
&lt;p&gt;Jim.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=62052" width="1" height="1"&gt;</description></item><item><title>re: Understanding nested transaction scopes</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2005/06/18/11451.aspx#62045</link><pubDate>Fri, 01 May 2009 14:31:58 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:62045</guid><dc:creator>jim-johnson</dc:creator><description>&lt;p&gt;Rick, &amp;nbsp;I assume that you&amp;#39;re referring to the declarative transaction attributes that originated in MTS and later moved to Java and .Net? &amp;nbsp;Yes, I&amp;#39;m well aware of them, and have been for years. &amp;nbsp;The MTS team certainly introduced a much better assembly construct than transaction monitors had had previously.&lt;/p&gt;
&lt;p&gt;However, while you spotted that there&amp;#39;s a relationship to declarative transactions, I think you may have missed a couple of notable differences between those features and the TransactionScope class.&lt;/p&gt;
&lt;p&gt;First, TransactionScope is about bringing declarative transaction expressiveness to any imperative .Net code. &amp;nbsp;If you look at MTS, .Net, or Java, the declarative transaction support exists outside of the imperative code. &amp;nbsp;It is a function of the container, and can only be expressed at entry points into the container. &amp;nbsp;If a programmer just wants to demarcate some imperative code they have to use a different model (e.g. MSDTC, XA, or some variant thereof). &amp;nbsp;And those models do not support the composition characteristics found in declarative transactions.&lt;/p&gt;
&lt;p&gt;Second, the declarative transactions found in MTS, Java, and .Net do not represent the semantics that I called out in my post. &amp;nbsp;Specifically, they do not provide the first one (&amp;quot;How does the contained code handle errors: does it require a transaction rollback, does it assume that it does the compensation itself?&amp;quot;). &amp;nbsp;This is a structural limitation --the attribution is available to the system assembler, which means that the attribution does not allow a developer to securely state the atomicity execution requirements of the code. &amp;nbsp;Instead, it allows the system assembler to state the atomicity environment that they will provide to the code.&lt;/p&gt;
&lt;p&gt;[I do realize that in, e.g., JEE 5 you can use attributes placed in the source, but use of these just reverses the problem -- that you _do_ want the system assembler to be able to specify whether a transaction can flow into an exported interface, and just putting it all in the code removes that ability.&lt;/p&gt;
&lt;p&gt;This, btw, is why the WCF attribution does not look like that found in MTS, Java, or .Net. &amp;nbsp;The attribution available to the system assembler is about flow, the attribution reserved solely to the developer is about the atomicity requirements of the code. &amp;nbsp;But I digress.]&lt;/p&gt;
&lt;p&gt;Hope this helps,&lt;/p&gt;
&lt;p&gt;Jim.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=62045" width="1" height="1"&gt;</description></item><item><title>re: MSDTC changes in WS2008, Part 3: Cluster features</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2008/03/23/50536.aspx#61764</link><pubDate>Mon, 27 Apr 2009 21:38:29 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:61764</guid><dc:creator>Eric Stephani</dc:creator><description>&lt;p&gt;If the caller (clustered application) doesn&amp;#39;t specify if it is local or clustered (SQL Server 2005 in this case), and you don&amp;#39;t have any clustered DTC instances configured, will it default to the local DTC instance on the node the application is running on?&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=61764" width="1" height="1"&gt;</description></item><item><title>re: Understanding nested transaction scopes</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2005/06/18/11451.aspx#60285</link><pubDate>Tue, 14 Apr 2009 15:59:52 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:60285</guid><dc:creator>Rick O'Shay</dc:creator><description>&lt;p&gt;Did you &amp;quot;think about&amp;quot; and &amp;quot;realize&amp;quot; or simply regurgitate the transaction scopes that have been around for decades, and prominently so within Java and later .NET? Corollary: skip the example if you aren&amp;#39;t willing to bother proof reading your sloppy, confusing comments vis-a-vis names of transactions. Jeezuz. &lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=60285" width="1" height="1"&gt;</description></item><item><title>re: Vista: An MSDTC proxy enhancement (MLTM)</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2006/09/01/36863.aspx#57771</link><pubDate>Tue, 17 Mar 2009 07:25:30 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:57771</guid><dc:creator>Ruth</dc:creator><description>&lt;p&gt;I recently came across your blog and have been reading along. I thought I would leave my first comment. I don&amp;#39;t know what to say except that I have enjoyed reading. Nice blog. I will keep visiting this blog very often.&lt;/p&gt;
&lt;p&gt;Ruth&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://ramupgrade.info"&gt;http://ramupgrade.info&lt;/a&gt; &lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=57771" width="1" height="1"&gt;</description></item><item><title>How to Configure Multiple Instances of Distributed Transaction Coordinator (DTC) on a Windows Server Failover Cluster 2008</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2008/04/06/50667.aspx#56791</link><pubDate>Wed, 18 Feb 2009 00:46:04 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:56791</guid><dc:creator>Ask the Core Team</dc:creator><description>&lt;p&gt;What we will be going over in this blog is one of the improvements of Distributed Transaction Coordinator&lt;/p&gt;
&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=56791" width="1" height="1"&gt;</description></item><item><title>How to Configure Multiple Instances of Distributed Transaction Coordinator (DTC) on a Windows Server Failover Cluster 2008</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2008/03/23/50536.aspx#56790</link><pubDate>Wed, 18 Feb 2009 00:46:03 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:56790</guid><dc:creator>Ask the Core Team</dc:creator><description>&lt;p&gt;What we will be going over in this blog is one of the improvements of Distributed Transaction Coordinator&lt;/p&gt;
&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=56790" width="1" height="1"&gt;</description></item><item><title>How to Configure Multiple Instances of Distributed Transaction Coordinator (DTC) on a Windows Server Failover Cluster 2008</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2008/03/16/50489.aspx#56789</link><pubDate>Wed, 18 Feb 2009 00:46:02 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:56789</guid><dc:creator>Ask the Core Team</dc:creator><description>&lt;p&gt;What we will be going over in this blog is one of the improvements of Distributed Transaction Coordinator&lt;/p&gt;
&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=56789" width="1" height="1"&gt;</description></item><item><title>How to Configure Multiple Instances of Distributed Transaction Coordinator (DTC) on a Windows Server Failover Cluster 2008</title><link>http://www.pluralsight.com/community/blogs/jimjohn/archive/2008/03/15/50484.aspx#56788</link><pubDate>Wed, 18 Feb 2009 00:45:57 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:56788</guid><dc:creator>Ask the Core Team</dc:creator><description>&lt;p&gt;What we will be going over in this blog is one of the improvements of Distributed Transaction Coordinator&lt;/p&gt;
&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=56788" width="1" height="1"&gt;</description></item></channel></rss>