You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by al...@apache.org on 2014/12/19 20:09:16 UTC
cassandra git commit: Bring consistency to TraceKeyspace
Repository: cassandra
Updated Branches:
refs/heads/trunk f45a1941c -> c0e3f66d6
Bring consistency to TraceKeyspace
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c0e3f66d
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c0e3f66d
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c0e3f66d
Branch: refs/heads/trunk
Commit: c0e3f66d60a77abec11afc8464abbcc7680139a1
Parents: f45a194
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Fri Dec 19 22:08:41 2014 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Fri Dec 19 22:08:57 2014 +0300
----------------------------------------------------------------------
.../org/apache/cassandra/db/SystemKeyspace.java | 3 +-
.../cassandra/service/StorageService.java | 2 +-
.../apache/cassandra/tracing/TraceKeyspace.java | 65 ++++++++++----------
.../apache/cassandra/tracing/TraceState.java | 2 +-
.../org/apache/cassandra/tracing/Tracing.java | 5 +-
5 files changed, 37 insertions(+), 40 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/c0e3f66d/src/java/org/apache/cassandra/db/SystemKeyspace.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/SystemKeyspace.java b/src/java/org/apache/cassandra/db/SystemKeyspace.java
index 503dd7f..f492c39 100644
--- a/src/java/org/apache/cassandra/db/SystemKeyspace.java
+++ b/src/java/org/apache/cassandra/db/SystemKeyspace.java
@@ -214,7 +214,8 @@ public final class SystemKeyspace
private static CFMetaData compile(String name, String description, String schema)
{
- return CFMetaData.compile(String.format(schema, name), NAME).comment(description);
+ return CFMetaData.compile(String.format(schema, name), NAME)
+ .comment(description);
}
public static KSMetaData definition()
http://git-wip-us.apache.org/repos/asf/cassandra/blob/c0e3f66d/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 4d176e6..391f890 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -2641,7 +2641,7 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
throw new Exception("no tracestate");
String format = "select event_id, source, activity from %s.%s where session_id = ? and event_id > ? and event_id < ?;";
- String query = String.format(format, TraceKeyspace.NAME, TraceKeyspace.EVENTS_TABLE);
+ String query = String.format(format, TraceKeyspace.NAME, TraceKeyspace.EVENTS);
SelectStatement statement = (SelectStatement) QueryProcessor.parseStatement(query).prepare().statement;
ByteBuffer sessionIdBytes = ByteBufferUtil.bytes(sessionId);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/c0e3f66d/src/java/org/apache/cassandra/tracing/TraceKeyspace.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tracing/TraceKeyspace.java b/src/java/org/apache/cassandra/tracing/TraceKeyspace.java
index 72a7c47..8c13a81 100644
--- a/src/java/org/apache/cassandra/tracing/TraceKeyspace.java
+++ b/src/java/org/apache/cassandra/tracing/TraceKeyspace.java
@@ -39,13 +39,12 @@ public final class TraceKeyspace
{
public static final String NAME = "system_traces";
- public static final String SESSIONS_TABLE = "sessions";
- public static final String EVENTS_TABLE = "events";
+ public static final String SESSIONS = "sessions";
+ public static final String EVENTS = "events";
- private static final int DAY = (int) TimeUnit.DAYS.toSeconds(1);
-
- private static final CFMetaData SessionsTable =
- compile(SESSIONS_TABLE, "tracing sessions",
+ private static final CFMetaData Sessions =
+ compile(SESSIONS,
+ "tracing sessions",
"CREATE TABLE %s ("
+ "session_id uuid,"
+ "command text,"
@@ -54,11 +53,11 @@ public final class TraceKeyspace
+ "parameters map<text, text>,"
+ "request text,"
+ "started_at timestamp,"
- + "PRIMARY KEY ((session_id)))")
- .defaultTimeToLive(DAY);
+ + "PRIMARY KEY ((session_id)))");
- private static final CFMetaData EventsTable =
- compile(EVENTS_TABLE, "tracing events",
+ private static final CFMetaData Events =
+ compile(EVENTS,
+ "tracing events",
"CREATE TABLE %s ("
+ "session_id uuid,"
+ "event_id timeuuid,"
@@ -66,61 +65,59 @@ public final class TraceKeyspace
+ "source inet,"
+ "source_elapsed int,"
+ "thread text,"
- + "PRIMARY KEY ((session_id), event_id))")
- .defaultTimeToLive(DAY);
+ + "PRIMARY KEY ((session_id), event_id))");
- private static CFMetaData compile(String table, String comment, String cql)
+ private static CFMetaData compile(String name, String description, String schema)
{
- return CFMetaData.compile(String.format(cql, table), NAME).comment(comment);
+ return CFMetaData.compile(String.format(schema, name), NAME)
+ .comment(description)
+ .defaultTimeToLive((int) TimeUnit.DAYS.toSeconds(1));
}
public static KSMetaData definition()
{
- List<CFMetaData> tables = Arrays.asList(SessionsTable, EventsTable);
+ List<CFMetaData> tables = Arrays.asList(Sessions, Events);
return new KSMetaData(NAME, SimpleStrategy.class, ImmutableMap.of("replication_factor", "2"), true, tables);
}
- static Mutation toStopSessionMutation(ByteBuffer sessionId, int elapsed, int ttl)
+ static Mutation makeStartSessionMutation(ByteBuffer sessionId, Map<String, String> parameters, String request, long startedAt, String command, int ttl)
{
Mutation mutation = new Mutation(NAME, sessionId);
- ColumnFamily cells = mutation.addOrGet(SessionsTable);
+ ColumnFamily cells = mutation.addOrGet(TraceKeyspace.Sessions);
- ttl = ttl == DAY ? 0 : ttl;
CFRowAdder adder = new CFRowAdder(cells, cells.metadata().comparator.builder().build(), FBUtilities.timestampMicros(), ttl);
- adder.add("duration", elapsed);
+ adder.add("coordinator", FBUtilities.getBroadcastAddress())
+ .add("request", request)
+ .add("started_at", new Date(startedAt))
+ .add("command", command);
+ for (Map.Entry<String, String> entry : parameters.entrySet())
+ adder.addMapEntry("parameters", entry.getKey(), entry.getValue());
return mutation;
}
- static Mutation toStartSessionMutation(ByteBuffer sessionId, Map<String, String> parameters, String request, long startedAt, String command, int ttl)
+ static Mutation makeStopSessionMutation(ByteBuffer sessionId, int elapsed, int ttl)
{
Mutation mutation = new Mutation(NAME, sessionId);
- ColumnFamily cells = mutation.addOrGet(TraceKeyspace.SessionsTable);
+ ColumnFamily cells = mutation.addOrGet(Sessions);
- ttl = ttl == DAY ? 0 : ttl;
CFRowAdder adder = new CFRowAdder(cells, cells.metadata().comparator.builder().build(), FBUtilities.timestampMicros(), ttl);
- adder.add("coordinator", FBUtilities.getBroadcastAddress());
- for (Map.Entry<String, String> entry : parameters.entrySet())
- adder.addMapEntry("parameters", entry.getKey(), entry.getValue());
- adder.add("request", request);
- adder.add("started_at", new Date(startedAt));
- adder.add("command", command);
+ adder.add("duration", elapsed);
return mutation;
}
- static Mutation toEventMutation(ByteBuffer sessionId, String message, int elapsed, String threadName, int ttl)
+ static Mutation makeEventMutation(ByteBuffer sessionId, String message, int elapsed, String threadName, int ttl)
{
Mutation mutation = new Mutation(NAME, sessionId);
- ColumnFamily cells = mutation.addOrGet(EventsTable);
+ ColumnFamily cells = mutation.addOrGet(Events);
- ttl = ttl == DAY ? 0 : ttl;
CFRowAdder adder = new CFRowAdder(cells, cells.metadata().comparator.make(UUIDGen.getTimeUUID()), FBUtilities.timestampMicros(), ttl);
- adder.add("activity", message);
- adder.add("source", FBUtilities.getBroadcastAddress());
+ adder.add("activity", message)
+ .add("source", FBUtilities.getBroadcastAddress())
+ .add("thread", threadName);
if (elapsed >= 0)
adder.add("source_elapsed", elapsed);
- adder.add("thread", threadName);
return mutation;
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/c0e3f66d/src/java/org/apache/cassandra/tracing/TraceState.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tracing/TraceState.java b/src/java/org/apache/cassandra/tracing/TraceState.java
index f7d2741..c67ad3e 100644
--- a/src/java/org/apache/cassandra/tracing/TraceState.java
+++ b/src/java/org/apache/cassandra/tracing/TraceState.java
@@ -172,7 +172,7 @@ public class TraceState
{
public void runMayThrow()
{
- Tracing.mutateWithCatch(TraceKeyspace.toEventMutation(sessionId, message, elapsed, threadName, ttl));
+ Tracing.mutateWithCatch(TraceKeyspace.makeEventMutation(sessionId, message, elapsed, threadName, ttl));
}
});
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/c0e3f66d/src/java/org/apache/cassandra/tracing/Tracing.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tracing/Tracing.java b/src/java/org/apache/cassandra/tracing/Tracing.java
index 5e76957..d0f496e 100644
--- a/src/java/org/apache/cassandra/tracing/Tracing.java
+++ b/src/java/org/apache/cassandra/tracing/Tracing.java
@@ -53,7 +53,6 @@ public class Tracing
{
public static final String TRACE_HEADER = "TraceSession";
public static final String TRACE_TYPE = "TraceType";
- public static final String TRACE_TTL = "TraceTTL";
public enum TraceType
{
@@ -173,7 +172,7 @@ public class Tracing
{
public void run()
{
- mutateWithCatch(TraceKeyspace.toStopSessionMutation(sessionId, elapsed, ttl));
+ mutateWithCatch(TraceKeyspace.makeStopSessionMutation(sessionId, elapsed, ttl));
}
});
@@ -212,7 +211,7 @@ public class Tracing
{
public void run()
{
- mutateWithCatch(TraceKeyspace.toStartSessionMutation(sessionId, parameters, request, startedAt, command, ttl));
+ mutateWithCatch(TraceKeyspace.makeStartSessionMutation(sessionId, parameters, request, startedAt, command, ttl));
}
});