killbill-aplcache
Changes
meter/src/main/java/com/ning/billing/meter/timeline/aggregator/TimelineAggregatorSqlDao.java 4(+0 -4)
Details
diff --git a/meter/src/main/java/com/ning/billing/meter/timeline/aggregator/TimelineAggregator.java b/meter/src/main/java/com/ning/billing/meter/timeline/aggregator/TimelineAggregator.java
index f39a547..505a114 100644
--- a/meter/src/main/java/com/ning/billing/meter/timeline/aggregator/TimelineAggregator.java
+++ b/meter/src/main/java/com/ning/billing/meter/timeline/aggregator/TimelineAggregator.java
@@ -295,6 +295,9 @@ public class TimelineAggregator {
@Override
public Void withHandle(final Handle handle) throws Exception {
+ // MySQL needs special setup to make it stream the results. See:
+ // http://javaquirks.blogspot.com/2007/12/mysql-streaming-result-set.html
+ // http://stackoverflow.com/questions/2447324/streaming-large-result-sets-with-mysql
final Query<Map<String, Object>> query = handle.createQuery("getStreamingAggregationCandidates")
.setFetchSize(Integer.MIN_VALUE)
.bind("aggregationLevel", aggregationLevel)
diff --git a/meter/src/main/java/com/ning/billing/meter/timeline/aggregator/TimelineAggregatorSqlDao.java b/meter/src/main/java/com/ning/billing/meter/timeline/aggregator/TimelineAggregatorSqlDao.java
index d239d0a..e034a33 100644
--- a/meter/src/main/java/com/ning/billing/meter/timeline/aggregator/TimelineAggregatorSqlDao.java
+++ b/meter/src/main/java/com/ning/billing/meter/timeline/aggregator/TimelineAggregatorSqlDao.java
@@ -19,7 +19,6 @@ package com.ning.billing.meter.timeline.aggregator;
import java.util.List;
import org.skife.jdbi.v2.sqlobject.Bind;
-import org.skife.jdbi.v2.sqlobject.SqlQuery;
import org.skife.jdbi.v2.sqlobject.SqlUpdate;
import org.skife.jdbi.v2.sqlobject.mixins.Transactional;
import org.skife.jdbi.v2.sqlobject.stringtemplate.UseStringTemplate3StatementLocator;
@@ -31,9 +30,6 @@ import com.ning.billing.util.callcontext.InternalTenantContextBinder;
@UseStringTemplate3StatementLocator()
public interface TimelineAggregatorSqlDao extends Transactional<TimelineAggregatorSqlDao> {
- @SqlQuery
- int getLastInsertedId();
-
@SqlUpdate
void makeTimelineChunkValid(@Bind("chunkId") final long chunkId,
@InternalTenantContextBinder final InternalCallContext context);
diff --git a/meter/src/main/resources/com/ning/billing/meter/timeline/aggregator/TimelineAggregatorSqlDao.sql.stg b/meter/src/main/resources/com/ning/billing/meter/timeline/aggregator/TimelineAggregatorSqlDao.sql.stg
index bbb566a..418da2d 100644
--- a/meter/src/main/resources/com/ning/billing/meter/timeline/aggregator/TimelineAggregatorSqlDao.sql.stg
+++ b/meter/src/main/resources/com/ning/billing/meter/timeline/aggregator/TimelineAggregatorSqlDao.sql.stg
@@ -42,10 +42,6 @@ and metric_record_id in (<metricIds>)
;
>>
-getLastInsertedId() ::= <<
-select last_insert_id();
->>
-
makeTimelineChunkValid() ::= <<
update timeline_chunks
set not_valid = 0
diff --git a/meter/src/test/java/com/ning/billing/meter/timeline/aggregator/TestTimelineAggregator.java b/meter/src/test/java/com/ning/billing/meter/timeline/aggregator/TestTimelineAggregator.java
index bb202dc..716a4e3 100644
--- a/meter/src/test/java/com/ning/billing/meter/timeline/aggregator/TestTimelineAggregator.java
+++ b/meter/src/test/java/com/ning/billing/meter/timeline/aggregator/TestTimelineAggregator.java
@@ -70,7 +70,7 @@ public class TestTimelineAggregator extends MeterTestSuiteWithEmbeddedDB {
private Integer minHeapUsedKindId = null;
private Integer maxHeapUsedKindId = null;
- @BeforeMethod(groups = "slow")
+ @BeforeMethod(groups = "mysql")
public void setUp() throws Exception {
timelineDao = new DefaultTimelineDao(getDBI());
final Properties properties = System.getProperties();
@@ -79,7 +79,7 @@ public class TestTimelineAggregator extends MeterTestSuiteWithEmbeddedDB {
aggregator = new TimelineAggregator(getDBI(), timelineDao, timelineCoder, sampleCoder, config, internalCallContextFactory);
}
- @Test(groups = "slow")
+ @Test(groups = "mysql")
public void testAggregation() throws Exception {
// Create the host
hostId = timelineDao.getOrAddSource(HOST_NAME, internalCallContext);