Updated Branches:
  refs/heads/cassandra-1.2 950efdef9 -> dac699266
  refs/heads/trunk f3b42d2a6 -> c609f27cd


fix overflow possibility
patch by Mikhail Mazursky; reviewed by jbellis for CASSANDRA-5584


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/dac69926
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/dac69926
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/dac69926

Branch: refs/heads/cassandra-1.2
Commit: dac69926613f96fdbacd49ada869bded21d0e3ab
Parents: 950efde
Author: Jonathan Ellis <jbel...@apache.org>
Authored: Tue May 21 14:18:49 2013 -0500
Committer: Jonathan Ellis <jbel...@apache.org>
Committed: Tue May 21 14:18:49 2013 -0500

----------------------------------------------------------------------
 .../commitlog/BatchCommitLogExecutorService.java   |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/dac69926/src/java/org/apache/cassandra/db/commitlog/BatchCommitLogExecutorService.java
----------------------------------------------------------------------
diff --git 
a/src/java/org/apache/cassandra/db/commitlog/BatchCommitLogExecutorService.java 
b/src/java/org/apache/cassandra/db/commitlog/BatchCommitLogExecutorService.java
index 4434532..39c33b2 100644
--- 
a/src/java/org/apache/cassandra/db/commitlog/BatchCommitLogExecutorService.java
+++ 
b/src/java/org/apache/cassandra/db/commitlog/BatchCommitLogExecutorService.java
@@ -76,7 +76,8 @@ class BatchCommitLogExecutorService extends 
AbstractCommitLogExecutorService
         //  so we have to break it into firstTask / extra tasks)
         incompleteTasks.clear();
         taskValues.clear();
-        long end = System.nanoTime() + (long)(1000000 * 
DatabaseDescriptor.getCommitLogSyncBatchWindow());
+        long start = System.nanoTime();
+        long window = (long)(1000000 * 
DatabaseDescriptor.getCommitLogSyncBatchWindow());
 
         // it doesn't seem worth bothering future-izing the exception
         // since if a commitlog op throws, we're probably screwed anyway
@@ -84,7 +85,7 @@ class BatchCommitLogExecutorService extends 
AbstractCommitLogExecutorService
         taskValues.add(firstTask.getRawCallable().call());
         while (!queue.isEmpty()
                && queue.peek().getRawCallable() instanceof 
CommitLog.LogRecordAdder
-               && System.nanoTime() < end)
+               && System.nanoTime() - start < window)
         {
             CheaterFutureTask task = queue.remove();
             incompleteTasks.add(task);

Reply via email to