You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2010/04/22 14:02:45 UTC
svn commit: r936801 - in /camel/trunk/components/camel-hawtdb/src:
main/java/org/apache/camel/component/hawtdb/
test/java/org/apache/camel/component/hawtdb/
Author: davsclaus
Date: Thu Apr 22 12:02:44 2010
New Revision: 936801
URL: http://svn.apache.org/viewvc?rev=936801&view=rev
Log:
Refined tests due sync and flush is default now. Also refined default segmenet and page sizes to be less big.
Modified:
camel/trunk/components/camel-hawtdb/src/main/java/org/apache/camel/component/hawtdb/HawtDBAggregationRepository.java
camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateConcurrentDifferentGroupsTest.java
camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateConcurrentSameGroupTest.java
camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateLoadAndRecoverTest.java
camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateLoadConcurrentTest.java
Modified: camel/trunk/components/camel-hawtdb/src/main/java/org/apache/camel/component/hawtdb/HawtDBAggregationRepository.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-hawtdb/src/main/java/org/apache/camel/component/hawtdb/HawtDBAggregationRepository.java?rev=936801&r1=936800&r2=936801&view=diff
==============================================================================
--- camel/trunk/components/camel-hawtdb/src/main/java/org/apache/camel/component/hawtdb/HawtDBAggregationRepository.java (original)
+++ camel/trunk/components/camel-hawtdb/src/main/java/org/apache/camel/component/hawtdb/HawtDBAggregationRepository.java Thu Apr 22 12:02:44 2010
@@ -21,7 +21,6 @@ import java.io.IOException;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedHashSet;
-import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;
@@ -47,8 +46,9 @@ public class HawtDBAggregationRepository
private HawtDBFile hawtDBFile;
private String persistentFileName;
private String repositoryName;
- private Integer bufferSize;
+ private int bufferSize = 8 * 1024 * 1024;
private boolean sync = true;
+ private short pageSize = 512;
private boolean returnOldExchange;
private HawtDBCamelMarshaller marshaller = new HawtDBCamelMarshaller();
private long recoveryInterval = 5000;
@@ -442,6 +442,14 @@ public class HawtDBAggregationRepository
this.deadLetterUri = deadLetterUri;
}
+ public short getPageSize() {
+ return pageSize;
+ }
+
+ public void setPageSize(short pageSize) {
+ this.pageSize = pageSize;
+ }
+
@Override
protected void doStart() throws Exception {
// either we have a HawtDB configured or we use a provided fileName
@@ -452,6 +460,9 @@ public class HawtDBAggregationRepository
if (getBufferSize() != null) {
hawtDBFile.setMappingSegementSize(getBufferSize());
}
+ if (getPageSize() > 0) {
+ hawtDBFile.setPageSize(getPageSize());
+ }
}
ObjectHelper.notNull(hawtDBFile, "Either set a persistentFileName or a hawtDBFile");
Modified: camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateConcurrentDifferentGroupsTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateConcurrentDifferentGroupsTest.java?rev=936801&r1=936800&r2=936801&view=diff
==============================================================================
--- camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateConcurrentDifferentGroupsTest.java (original)
+++ camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateConcurrentDifferentGroupsTest.java Thu Apr 22 12:02:44 2010
@@ -79,6 +79,8 @@ public class HawtDBAggregateConcurrentDi
public Object call() throws Exception {
String id = index % 2 == 0 ? "A" : "B";
template.sendBodyAndHeader("direct:start", index, "id", id);
+ // simulate a little delay
+ Thread.sleep(3);
return null;
}
});
Modified: camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateConcurrentSameGroupTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateConcurrentSameGroupTest.java?rev=936801&r1=936800&r2=936801&view=diff
==============================================================================
--- camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateConcurrentSameGroupTest.java (original)
+++ camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateConcurrentSameGroupTest.java Thu Apr 22 12:02:44 2010
@@ -78,6 +78,8 @@ public class HawtDBAggregateConcurrentSa
executor.submit(new Callable<Object>() {
public Object call() throws Exception {
template.sendBodyAndHeader("direct:start", index, "id", 123);
+ // simulate a little delay
+ Thread.sleep(3);
return null;
}
});
Modified: camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateLoadAndRecoverTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateLoadAndRecoverTest.java?rev=936801&r1=936800&r2=936801&view=diff
==============================================================================
--- camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateLoadAndRecoverTest.java (original)
+++ camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateLoadAndRecoverTest.java Thu Apr 22 12:02:44 2010
@@ -34,7 +34,7 @@ import org.junit.Test;
public class HawtDBAggregateLoadAndRecoverTest extends CamelTestSupport {
private static final Log LOG = LogFactory.getLog(HawtDBAggregateLoadAndRecoverTest.class);
- private static final int SIZE = 1000;
+ private static final int SIZE = 200;
private static AtomicInteger counter = new AtomicInteger();
@Before
@@ -62,6 +62,8 @@ public class HawtDBAggregateLoadAndRecov
LOG.debug("Sending " + value + " with id " + id);
}
template.sendBodyAndHeaders("seda:start?size=" + SIZE, value, headers);
+ // simulate a little delay
+ Thread.sleep(3);
}
LOG.info("Sending all " + SIZE + " message done. Now waiting for aggregation to complete.");
@@ -74,7 +76,8 @@ public class HawtDBAggregateLoadAndRecov
recovered++;
}
}
- assertEquals("There should be 5 recovered", 5, recovered);
+ int expected = SIZE / 10 / 10;
+ assertEquals("There should be " + expected + " recovered", expected, recovered);
}
@Override
@@ -91,11 +94,11 @@ public class HawtDBAggregateLoadAndRecov
.aggregationRepository(repo)
.completionSize(10)
.to("log:output?showHeaders=true")
- // have every 20th exchange fail which should then be recovered
+ // have every 10th exchange fail which should then be recovered
.process(new Processor() {
public void process(Exchange exchange) throws Exception {
int num = counter.incrementAndGet();
- if (num % 20 == 0) {
+ if (num % 10 == 0) {
throw new IllegalStateException("Failed for num " + num);
}
}
Modified: camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateLoadConcurrentTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateLoadConcurrentTest.java?rev=936801&r1=936800&r2=936801&view=diff
==============================================================================
--- camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateLoadConcurrentTest.java (original)
+++ camel/trunk/components/camel-hawtdb/src/test/java/org/apache/camel/component/hawtdb/HawtDBAggregateLoadConcurrentTest.java Thu Apr 22 12:02:44 2010
@@ -63,6 +63,8 @@ public class HawtDBAggregateLoadConcurre
LOG.debug("Sending " + value + " with id " + id);
}
template.sendBodyAndHeader("direct:start", value, "id", "" + id);
+ // simulate a little delay
+ Thread.sleep(3);
return null;
}
});