<?xml version="1.0" encoding="utf-8" ?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://purl.org/rss/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:wiki="http://purl.org/rss/1.0/modules/wiki/" >
<channel rdf:about="https://www.atomikos.com/Blog%/TheAchillesHeelOfTheCAPTheorem">
  <title>Atomikos - Comments on The Achilles heel of the CAP theorem</title>
  <link>https://www.atomikos.com/Blog/TheAchillesHeelOfTheCAPTheorem</link>
  <description>Comments</description>
  <image rdf:resource="https://www.atomikos.com/pub/System/ProjectLogos/foswiki-logo.png" />
  <dc:language>en-us</dc:language>
  <dc:rights>Copyright 2026 Atomikos BVBA</dc:rights>
  <dc:publisher>Wiki Administrator [webmaster@atomikos.com]</dc:publisher>
  <dc:creator>The contributing authors of Atomikos</dc:creator>
  <dc:source>Atomikos</dc:source>
  <items>
    <rdf:Seq>
      <rdf:li rdf:resource="https://www.atomikos.com/Blog/TheAchillesHeelOfTheCAPTheorem#comment27" />
      <rdf:li rdf:resource="https://www.atomikos.com/Blog/TheAchillesHeelOfTheCAPTheorem#comment12" />
      <rdf:li rdf:resource="https://www.atomikos.com/Blog/TheAchillesHeelOfTheCAPTheorem#comment11" />
    </rdf:Seq>
  </items>
</channel>
<image rdf:about="https://www.atomikos.com/pub/System/ProjectLogos/foswiki-logo.png">
  <title>Powered by Foswiki, The Free and Open Source Wiki</title>
  <link>/Main/WebHome</link>
  <url>https://www.atomikos.com/pub/System/ProjectLogos/foswiki-logo.png</url>
</image>
<item rdf:about="https://www.atomikos.com/Blog/TheAchillesHeelOfTheCAPTheorem#comment27">
  <title>The Achilles heel of the CAP theorem</title>
  <link>https://www.atomikos.com/Blog/TheAchillesHeelOfTheCAPTheorem#comment27</link>
  <dc:creator>barry</dc:creator>
  <dc:date>2009-03-28T20:45:54Z</dc:date>
  <dc:subject></dc:subject>
  <dc:contributor>
	 <rdf:Description link="https://www.atomikos.com/Users/barry">
		<rdf:value>barry</rdf:value>
	 </rdf:Description>
  </dc:contributor>
  <description>
	  » Only process requests when there is no partition problem.&#10;&#10;Doesn&#39;t this mean that you are sacrificing availability? You&#39;ve turned a failure in partitioning into a failure in availability. While the answers and responses are queued so no request or response is lost, that doesn&#39;t mean all is well. A response may take a long time to come back which is as much of a problem as getting an error.
  </description>
</item>
<item rdf:about="https://www.atomikos.com/Blog/TheAchillesHeelOfTheCAPTheorem#comment12">
  <title>The Achilles heel of the CAP theorem</title>
  <link>https://www.atomikos.com/Blog/TheAchillesHeelOfTheCAPTheorem#comment12</link>
  <dc:creator>Guy</dc:creator>
  <dc:date>2009-01-20T19:30:00Z</dc:date>
  <dc:subject></dc:subject>
  <dc:contributor>
	 <rdf:Description link="https://www.atomikos.com/Users/Guy">
		<rdf:value>Guy</rdf:value>
	 </rdf:Description>
  </dc:contributor>
  <description>
	  Hi Dan,&#10;&#10;Sure have I read &#34;Impossibility of distributed consensus with one faulty process&#34; - it is at the basis of the heuristic exceptions in all two-phase commit solutions (including Atomikos).&#10;&#10;However, what I am saying is that the failure usually only lasts for so long, and afterward things can move on. Exploiting the right tools to do that can help availability.&#10;&#10;That is the main advantages of (persistent) queues and that is all I am saying. Lynch et al do not seem to exploit it as much as they could...&#10;&#10;Guy
  </description>
</item>
<item rdf:about="https://www.atomikos.com/Blog/TheAchillesHeelOfTheCAPTheorem#comment11">
  <title>The Achilles heel of the CAP theorem</title>
  <link>https://www.atomikos.com/Blog/TheAchillesHeelOfTheCAPTheorem#comment11</link>
  <dc:creator>PetrolHead</dc:creator>
  <dc:date>2009-01-20T19:11:00Z</dc:date>
  <dc:subject></dc:subject>
  <dc:contributor>
	 <rdf:Description link="https://www.atomikos.com/Users/PetrolHead">
		<rdf:value>PetrolHead</rdf:value>
	 </rdf:Description>
  </dc:contributor>
  <description>
	  Have you read:&#10;&#10;http://portal.acm.org/citation.cfm?id&#61;214121&#10;&#10;&#34;Impossibility of distributed consensus with one faulty process&#34;?&#10;&#10;This is an important result and has significance to your comments and the CAP theorem. Essentially one can&#39;t tell the difference between a genuine failure and a slow running machine or busy network.&#10;&#10;Thus your solution might work for a very small number of machines all in a single data-centre but for larger installations, failure of machines, routers, switches, cables etc will happen several times a day and thus quorums and clusters become considerably less practical and loose consistency more attractive.&#10;&#10;Note also that the theorem isn&#39;t just about clustered services in the traditional sense but also services that run across multiple data-centres.&#10;&#10;I also have a specific observation:&#10;&#10;&#34;....note that quorum solutions exist to avoid that the complete cluster has to be up at the same time.&#34;&#10;&#10;This is true but they are limited by a number of factors practically:&#10;&#10;(1) The assumption that you will have a majority - seemingly this is straightforward but a partition plus a loss of a machine can leave you without a majority.&#10;&#10;(2) Getting all members back into sync. Can require all sorts of special admin involvement and it can go wrong.&#10;&#10;(3) Performance - quorum protocols especially across enough nodes to ensure survival can be slow.&#10;&#10;(4) Ensuring that clients don&#39;t continue to make use of the minority during a partition e.g. reporting out-of-date information.&#10;&#10;(5) You can have a cluster capable of achieving consensus but you can&#39;t reach it because the network is broken between cluster and clients.&#10;&#10;Best,&#10;&#10;Dan.&#60;br /&#62;http://www.dancres.org/blitzblog
  </description>
</item>
</rdf:RDF>