You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jm...@apache.org on 2015/03/11 17:27:26 UTC
[1/2] cassandra git commit: Expose commit log archiver status via JMX
Repository: cassandra
Updated Branches:
refs/heads/cassandra-2.1 2047b2ae3 -> 8eea35863
Expose commit log archiver status via JMX
Patch by clohfink; reviewed by jmckenzie for CASSANDRA-8734
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/77c66bf9
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/77c66bf9
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/77c66bf9
Branch: refs/heads/cassandra-2.1
Commit: 77c66bf9f50228306d4bf76bb2721c731875f261
Parents: d6ea0ff
Author: Chris Lohfink <cl...@gmail.com>
Authored: Wed Mar 11 11:14:59 2015 -0500
Committer: Joshua McKenzie <jm...@apache.org>
Committed: Wed Mar 11 11:14:59 2015 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../cassandra/db/commitlog/CommitLog.java | 30 +++++++++++++++++++
.../db/commitlog/CommitLogArchiver.java | 6 ++--
.../cassandra/db/commitlog/CommitLogMBean.java | 31 ++++++++++++++++++++
4 files changed, 65 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/77c66bf9/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index d240a10..382b3dd 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.0.14:
+ * Expose commit log archive status via JMX (CASSANDRA-8734)
* Provide better exceptions for invalid replication strategy parameters
(CASSANDRA-8909)
* Fix regression in mixed single and multi-column relation support for
http://git-wip-us.apache.org/repos/asf/cassandra/blob/77c66bf9/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/commitlog/CommitLog.java b/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
index 7a27653..a3ce804 100644
--- a/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
+++ b/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
@@ -299,6 +299,36 @@ public class CommitLog implements CommitLogMBean
return metrics.totalCommitLogSize.value();
}
+ @Override
+ public String getArchiveCommand()
+ {
+ return archiver.archiveCommand;
+ }
+
+ @Override
+ public String getRestoreCommand()
+ {
+ return archiver.restoreCommand;
+ }
+
+ @Override
+ public String getRestoreDirectories()
+ {
+ return archiver.restoreDirectories;
+ }
+
+ @Override
+ public long getRestorePointInTime()
+ {
+ return archiver.restorePointInTime;
+ }
+
+ @Override
+ public String getRestorePrecision()
+ {
+ return archiver.precision.toString();
+ }
+
/**
* Fetches a new segment file from the allocator and activates it.
*
http://git-wip-us.apache.org/repos/asf/cassandra/blob/77c66bf9/src/java/org/apache/cassandra/db/commitlog/CommitLogArchiver.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/commitlog/CommitLogArchiver.java b/src/java/org/apache/cassandra/db/commitlog/CommitLogArchiver.java
index 8957643..fd03624 100644
--- a/src/java/org/apache/cassandra/db/commitlog/CommitLogArchiver.java
+++ b/src/java/org/apache/cassandra/db/commitlog/CommitLogArchiver.java
@@ -53,9 +53,9 @@ public class CommitLogArchiver
public final Map<String, Future<?>> archivePending = new ConcurrentHashMap<String, Future<?>>();
public final ExecutorService executor = new JMXEnabledThreadPoolExecutor("commitlog_archiver");
- private final String archiveCommand;
- private final String restoreCommand;
- private final String restoreDirectories;
+ final String archiveCommand;
+ final String restoreCommand;
+ final String restoreDirectories;
public final long restorePointInTime;
public final TimeUnit precision;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/77c66bf9/src/java/org/apache/cassandra/db/commitlog/CommitLogMBean.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/commitlog/CommitLogMBean.java b/src/java/org/apache/cassandra/db/commitlog/CommitLogMBean.java
index 6c0d8d7..9f3eb9b 100644
--- a/src/java/org/apache/cassandra/db/commitlog/CommitLogMBean.java
+++ b/src/java/org/apache/cassandra/db/commitlog/CommitLogMBean.java
@@ -45,6 +45,37 @@ public interface CommitLogMBean
public long getTotalCommitlogSize();
/**
+ * Command to execute to archive a commitlog segment. Blank to disabled.
+ */
+ public String getArchiveCommand();
+
+ /**
+ * Command to execute to make an archived commitlog live again
+ */
+ public String getRestoreCommand();
+
+ /**
+ * Directory to scan the recovery files in
+ */
+ public String getRestoreDirectories();
+
+ /**
+ * Restore mutations created up to and including this timestamp in GMT
+ * Format: yyyy:MM:dd HH:mm:ss (2012:04:31 20:43:12)
+ *
+ * Recovery will continue through the segment when the first client-supplied
+ * timestamp greater than this time is encountered, but only mutations less than
+ * or equal to this timestamp will be applied.
+ */
+ public long getRestorePointInTime();
+
+ /**
+ * get precision of the timestamp used in the restore (MILLISECONDS, MICROSECONDS, ...)
+ * to determine if passed the restore point in time.
+ */
+ public String getRestorePrecision();
+
+ /**
* Recover a single file.
*/
public void recover(String path) throws IOException;
[2/2] cassandra git commit: Merge branch 'cassandra-2.0' into
cassandra-2.1
Posted by jm...@apache.org.
Merge branch 'cassandra-2.0' into cassandra-2.1
Conflicts:
src/java/org/apache/cassandra/db/commitlog/CommitLog.java
src/java/org/apache/cassandra/db/commitlog/CommitLogArchiver.java
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8eea3586
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8eea3586
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8eea3586
Branch: refs/heads/cassandra-2.1
Commit: 8eea35863bd1e2bafdaabfb586348a034ae56ada
Parents: 2047b2a 77c66bf
Author: Joshua McKenzie <jm...@apache.org>
Authored: Wed Mar 11 11:23:09 2015 -0500
Committer: Joshua McKenzie <jm...@apache.org>
Committed: Wed Mar 11 11:23:09 2015 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../cassandra/db/commitlog/CommitLog.java | 30 +++++++++++++++++++
.../db/commitlog/CommitLogArchiver.java | 6 ++--
.../cassandra/db/commitlog/CommitLogMBean.java | 31 ++++++++++++++++++++
4 files changed, 65 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/8eea3586/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 29e7541,382b3dd..24a8bb7
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,43 -1,5 +1,44 @@@
+2.1.4
+ * Fix rare NPE in ColumnDefinition#hasIndexOption() (CASSANDRA-8786)
+ * cassandra-stress reports per-operation statistics, plus misc (CASSANDRA-8769)
+ * Add SimpleDate (cql date) and Time (cql time) types (CASSANDRA-7523)
+ * Use long for key count in cfstats (CASSANDRA-8913)
+ * Make SSTableRewriter.abort() more robust to failure (CASSANDRA-8832)
+ * Remove cold_reads_to_omit from STCS (CASSANDRA-8860)
+ * Make EstimatedHistogram#percentile() use ceil instead of floor (CASSANDRA-8883)
+ * Fix top partitions reporting wrong cardinality (CASSANDRA-8834)
+ * Fix rare NPE in KeyCacheSerializer (CASSANDRA-8067)
+ * Pick sstables for validation as late as possible inc repairs (CASSANDRA-8366)
+ * Fix commitlog getPendingTasks to not increment (CASSANDRA-8856)
+ * Fix parallelism adjustment in range and secondary index queries
+ when the first fetch does not satisfy the limit (CASSANDRA-8856)
+ * Check if the filtered sstables is non-empty in STCS (CASSANDRA-8843)
+ * Upgrade java-driver used for cassandra-stress (CASSANDRA-8842)
+ * Fix CommitLog.forceRecycleAllSegments() memory access error (CASSANDRA-8812)
+ * Improve assertions in Memory (CASSANDRA-8792)
+ * Fix SSTableRewriter cleanup (CASSANDRA-8802)
+ * Introduce SafeMemory for CompressionMetadata.Writer (CASSANDRA-8758)
+ * 'nodetool info' prints exception against older node (CASSANDRA-8796)
+ * Ensure SSTableReader.last corresponds exactly with the file end (CASSANDRA-8750)
+ * Make SSTableWriter.openEarly more robust and obvious (CASSANDRA-8747)
+ * Enforce SSTableReader.first/last (CASSANDRA-8744)
+ * Cleanup SegmentedFile API (CASSANDRA-8749)
+ * Avoid overlap with early compaction replacement (CASSANDRA-8683)
+ * Safer Resource Management++ (CASSANDRA-8707)
+ * Write partition size estimates into a system table (CASSANDRA-7688)
+ * cqlsh: Fix keys() and full() collection indexes in DESCRIBE output
+ (CASSANDRA-8154)
+ * Show progress of streaming in nodetool netstats (CASSANDRA-8886)
+ * IndexSummaryBuilder utilises offheap memory, and shares data between
+ each IndexSummary opened from it (CASSANDRA-8757)
+ * markCompacting only succeeds if the exact SSTableReader instances being
+ marked are in the live set (CASSANDRA-8689)
+ * cassandra-stress support for varint (CASSANDRA-8882)
+ * Fix Adler32 digest for compressed sstables (CASSANDRA-8778)
+ * Add nodetool statushandoff/statusbackup (CASSANDRA-8912)
+Merged from 2.0:
2.0.14:
+ * Expose commit log archive status via JMX (CASSANDRA-8734)
* Provide better exceptions for invalid replication strategy parameters
(CASSANDRA-8909)
* Fix regression in mixed single and multi-column relation support for
http://git-wip-us.apache.org/repos/asf/cassandra/blob/8eea3586/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/commitlog/CommitLog.java
index 9b51a33,a3ce804..40b90ff
--- a/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
+++ b/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
@@@ -311,9 -299,50 +311,39 @@@ public class CommitLog implements Commi
return metrics.totalCommitLogSize.value();
}
+ @Override
+ public String getArchiveCommand()
+ {
+ return archiver.archiveCommand;
+ }
+
+ @Override
+ public String getRestoreCommand()
+ {
+ return archiver.restoreCommand;
+ }
+
+ @Override
+ public String getRestoreDirectories()
+ {
+ return archiver.restoreDirectories;
+ }
+
+ @Override
+ public long getRestorePointInTime()
+ {
+ return archiver.restorePointInTime;
+ }
+
+ @Override
+ public String getRestorePrecision()
+ {
+ return archiver.precision.toString();
+ }
+
- /**
- * Fetches a new segment file from the allocator and activates it.
- *
- * @return the newly activated segment
- */
- private void activateNextSegment()
- {
- activeSegment = allocator.fetchSegment();
- logger.debug("Active segment is now {}", activeSegment);
- }
-
public List<String> getActiveSegmentNames()
{
- List<String> segmentNames = new ArrayList<String>();
+ List<String> segmentNames = new ArrayList<>();
for (CommitLogSegment segment : allocator.getActiveSegments())
segmentNames.add(segment.getName());
return segmentNames;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/8eea3586/src/java/org/apache/cassandra/db/commitlog/CommitLogArchiver.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/commitlog/CommitLogArchiver.java
index 6cba603,fd03624..602cf94
--- a/src/java/org/apache/cassandra/db/commitlog/CommitLogArchiver.java
+++ b/src/java/org/apache/cassandra/db/commitlog/CommitLogArchiver.java
@@@ -52,10 -52,10 +52,10 @@@ public class CommitLogArchive
}
public final Map<String, Future<?>> archivePending = new ConcurrentHashMap<String, Future<?>>();
- public final ExecutorService executor = new JMXEnabledThreadPoolExecutor("commitlog_archiver");
+ private final ExecutorService executor = new JMXEnabledThreadPoolExecutor("CommitLogArchiver");
- private final String archiveCommand;
- private final String restoreCommand;
- private final String restoreDirectories;
+ final String archiveCommand;
+ final String restoreCommand;
+ final String restoreDirectories;
public final long restorePointInTime;
public final TimeUnit precision;