<p>Creating a system that can scale out means taking some trade-offs - one of these is facilitating "idempotent" operations in your application. </p>

<p>This means that you would either:</p>

<ul>
<li><p>assume that the data was written somewhere and that the node will
eventually become consistent </p></li>
<li><p>fire the entire contents of the write again, perhaps sleeping a given amount of time or<br>
at a less restrictive consistency level</p></li>
</ul>

<p>A good description of this approach can be found in section 6 of Pat Helland's "Building on Quicksand" paper: <a href="http://arxiv.org/pdf/0909.1788" rel="nofollow">http://arxiv.org/pdf/0909.1788</a></p>
Cassandra TimedOutException and data modification for batch updates
<p>I execute batch update which modifies few rows within few column families. In case of TimedOutException some data could be modified, but possibly not whole set....</p>

<p>In order to implement compensating transaction, I would need to know what data (rows)  was modified - is there a way to find this out? Does exception contain this information?</p>

<p>Thanks,
Maciej</p>