You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sirona.apache.org by rm...@apache.org on 2013/11/12 09:39:59 UTC

svn commit: r1540969 - in /incubator/sirona/trunk/server/store/cassandra: ./ src/main/java/org/apache/sirona/cassandra/collector/ src/main/java/org/apache/sirona/cassandra/collector/gauge/ src/test/java/org/apache/sirona/cassandra/collector/gauge/

Author: rmannibucau
Date: Tue Nov 12 08:39:58 2013
New Revision: 1540969

URL: http://svn.apache.org/r1540969
Log:
adding some exclusion in cassandra module + fixing comparator type for gauges

Modified:
    incubator/sirona/trunk/server/store/cassandra/pom.xml
    incubator/sirona/trunk/server/store/cassandra/src/main/java/org/apache/sirona/cassandra/collector/CassandraSirona.java
    incubator/sirona/trunk/server/store/cassandra/src/main/java/org/apache/sirona/cassandra/collector/gauge/CassandraCollectorGaugeDataStore.java
    incubator/sirona/trunk/server/store/cassandra/src/test/java/org/apache/sirona/cassandra/collector/gauge/AgentGaugeTest.java

Modified: incubator/sirona/trunk/server/store/cassandra/pom.xml
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/server/store/cassandra/pom.xml?rev=1540969&r1=1540968&r2=1540969&view=diff
==============================================================================
--- incubator/sirona/trunk/server/store/cassandra/pom.xml (original)
+++ incubator/sirona/trunk/server/store/cassandra/pom.xml Tue Nov 12 08:39:58 2013
@@ -34,12 +34,27 @@
       <groupId>org.apache.sirona</groupId>
       <artifactId>sirona-collector</artifactId>
       <classifier>classes</classifier>
+      <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>org.hectorclient</groupId>
       <artifactId>hector-core</artifactId>
       <version>1.1-4</version>
+      <exclusions>
+        <exclusion>
+          <groupId>javax.servlet</groupId>
+          <artifactId>servlet-api</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>com.ecyrd.speed4j</groupId>
+          <artifactId>speed4j</artifactId>
+        </exclusion>
+        <exclusion>
+          <groupId>com.yammer.metrics</groupId>
+          <artifactId>metrics-core</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
 
     <dependency>

Modified: incubator/sirona/trunk/server/store/cassandra/src/main/java/org/apache/sirona/cassandra/collector/CassandraSirona.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/server/store/cassandra/src/main/java/org/apache/sirona/cassandra/collector/CassandraSirona.java?rev=1540969&r1=1540968&r2=1540969&view=diff
==============================================================================
--- incubator/sirona/trunk/server/store/cassandra/src/main/java/org/apache/sirona/cassandra/collector/CassandraSirona.java (original)
+++ incubator/sirona/trunk/server/store/cassandra/src/main/java/org/apache/sirona/cassandra/collector/CassandraSirona.java Tue Nov 12 08:39:58 2013
@@ -59,10 +59,10 @@ public class CassandraSirona {
 
         keyspace = HFactory.createKeyspace(keyspaceName, cluster);
 
-        final ColumnFamilyDefinition gauges = HFactory.createColumnFamilyDefinition(keyspaceName, builder.getGaugeValuesColumnFamily(), ComparatorType.UTF8TYPE);
+        final ColumnFamilyDefinition gauges = HFactory.createColumnFamilyDefinition(keyspaceName, builder.getGaugeValuesColumnFamily(), ComparatorType.LONGTYPE);
         final ColumnFamilyDefinition markersGauges = HFactory.createColumnFamilyDefinition(keyspaceName, builder.getMarkerGaugesColumFamily(), ComparatorType.UTF8TYPE);
-        final ColumnFamilyDefinition counters = createSuperColumn(keyspaceName, builder.getCounterColumnFamily());
-        final ColumnFamilyDefinition statuses = createSuperColumn(keyspaceName, builder.getStatusColumnFamily());
+        final ColumnFamilyDefinition counters = createSuperColumn(keyspaceName, builder.getCounterColumnFamily(), ComparatorType.UTF8TYPE);
+        final ColumnFamilyDefinition statuses = createSuperColumn(keyspaceName, builder.getStatusColumnFamily(), ComparatorType.UTF8TYPE);
 
         { // ensure keyspace exists, here if the keyspace doesn't exist we suppose nothing exist
             if (cluster.describeKeyspace(keyspaceName) == null) {
@@ -144,10 +144,10 @@ public class CassandraSirona {
         return set;
     }
 
-    private static ColumnFamilyDefinition createSuperColumn(final String keyspaceName, final String name) {
+    private static ColumnFamilyDefinition createSuperColumn(final String keyspaceName, final String name, final ComparatorType comparator) {
         final ColumnFamilyDefinition statuses = HFactory.createColumnFamilyDefinition(keyspaceName, name, ComparatorType.UTF8TYPE);
         statuses.setColumnType(ColumnType.SUPER);
-        statuses.setSubComparatorType(ComparatorType.UTF8TYPE);
+        statuses.setSubComparatorType(comparator);
         return statuses;
     }
 }

Modified: incubator/sirona/trunk/server/store/cassandra/src/main/java/org/apache/sirona/cassandra/collector/gauge/CassandraCollectorGaugeDataStore.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/server/store/cassandra/src/main/java/org/apache/sirona/cassandra/collector/gauge/CassandraCollectorGaugeDataStore.java?rev=1540969&r1=1540968&r2=1540969&view=diff
==============================================================================
--- incubator/sirona/trunk/server/store/cassandra/src/main/java/org/apache/sirona/cassandra/collector/gauge/CassandraCollectorGaugeDataStore.java (original)
+++ incubator/sirona/trunk/server/store/cassandra/src/main/java/org/apache/sirona/cassandra/collector/gauge/CassandraCollectorGaugeDataStore.java Tue Nov 12 08:39:58 2013
@@ -65,19 +65,23 @@ public class CassandraCollectorGaugeData
 
     @Override
     public void createOrNoopGauge(final Role role, final String marker) {
+        internalCreateOrNoopGauge(role, marker);
+    }
+
+    private String internalCreateOrNoopGauge(final Role role, final String marker) {
         final String id = id(role, marker);
 
         HFactory.createMutator(keyspace, StringSerializer.get())
             .addInsertion(marker, markerFamily, emptyColumn(id))
             .execute();
+
+        return id;
     }
 
     @Override
     public void addToGauge(final Role role, final long time, final double value, final String marker) {
-        createOrNoopGauge(role, marker);
-
         HFactory.createMutator(keyspace, StringSerializer.get())
-            .addInsertion(id(role, marker), valueFamily, column(time, value))
+            .addInsertion(internalCreateOrNoopGauge(role, marker), valueFamily, column(time, value))
             .execute();
     }
 

Modified: incubator/sirona/trunk/server/store/cassandra/src/test/java/org/apache/sirona/cassandra/collector/gauge/AgentGaugeTest.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/server/store/cassandra/src/test/java/org/apache/sirona/cassandra/collector/gauge/AgentGaugeTest.java?rev=1540969&r1=1540968&r2=1540969&view=diff
==============================================================================
--- incubator/sirona/trunk/server/store/cassandra/src/test/java/org/apache/sirona/cassandra/collector/gauge/AgentGaugeTest.java (original)
+++ incubator/sirona/trunk/server/store/cassandra/src/test/java/org/apache/sirona/cassandra/collector/gauge/AgentGaugeTest.java Tue Nov 12 08:39:58 2013
@@ -24,6 +24,7 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 
 import java.util.Collection;
+import java.util.Date;
 import java.util.Map;
 
 import static org.junit.Assert.assertEquals;
@@ -35,6 +36,16 @@ public class AgentGaugeTest {
     private static final String MARKER = "node1";
 
     @Test
+    public void checkLongHandling() {
+        new CassandraCollectorGaugeDataStore()
+            .addToGauge( // was throwing exception cause of a wrong comparator in DDL, that's why we don't have asserts then
+                new Role("/-HTTP-301", Unit.UNARY),
+                new Date().getTime(),
+                0., MARKER
+            );
+    }
+
+    @Test
     public void createGaugeWithMarker() {
         new CassandraCollectorGaugeDataStore().createOrNoopGauge(ROLE, MARKER);
         new CassandraCollectorGaugeDataStore().createOrNoopGauge(ROLE, MARKER); // createOrNoopGauge is reentrant