mirror of https://github.com/apache/cassandra
Versions, changes, news for 1.1.6 release
This commit is contained in:
parent
488f83466c
commit
2773f7cd8b
|
|
@ -21,6 +21,14 @@
|
|||
* (CQL3) Don't return ReversedType in result set metadata (CASSANDRA-4717)
|
||||
* Backport adding AlterKeyspace statement (CASSANDRA-4611)
|
||||
* (CQL3) Correcty accept upper-case data types (CASSANDRA-4770)
|
||||
* (cqlsh) Fix table completion for CREATE KEYSPACE (CASSANDRA-4334)
|
||||
* Support allow_deletes for Hadoop clusters (CASSANDRA-4499)
|
||||
* (cqlsh) Provide consistent ordering for COPY TO and COPY FROM (CASSANDRA-4594)
|
||||
* Fix race when setting cql version with thrift sync server (CASSANDRA-4657)
|
||||
* (CQL3) Fix start IN queries with ORDER BY (CASSANDRA-4689)
|
||||
* (cqlsh) Fix auto completion with fully qualified names (CASSANDRA-4423)
|
||||
* (CLI) allow to insert double values (CASSANDRA-4661)
|
||||
* (cqlsh) Multi-line support for history buffer (CASSANDRA-4666)
|
||||
Merged from 1.0:
|
||||
* Switch from NBHM to CHM in MessagingService's callback map, which
|
||||
prevents OOM in long-running instances (CASSANDRA-4708)
|
||||
|
|
|
|||
9
NEWS.txt
9
NEWS.txt
|
|
@ -9,6 +9,15 @@ upgrade, just in case you need to roll back to the previous version.
|
|||
by version X, but the inverse is not necessarily the case.)
|
||||
|
||||
|
||||
1.1.6
|
||||
=====
|
||||
|
||||
Upgrading
|
||||
---------
|
||||
- Nothing specific to this release, but please see 1.1 if you are upgrading
|
||||
from a previous version.
|
||||
|
||||
|
||||
1.1.5
|
||||
=====
|
||||
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@
|
|||
<property name="debuglevel" value="source,lines,vars"/>
|
||||
|
||||
<!-- default version and SCM information -->
|
||||
<property name="base.version" value="1.1.5"/>
|
||||
<property name="base.version" value="1.1.6"/>
|
||||
<property name="scm.connection" value="scm:git://git.apache.org/cassandra.git"/>
|
||||
<property name="scm.developerConnection" value="scm:git://git.apache.org/cassandra.git"/>
|
||||
<property name="scm.url" value="http://git-wip-us.apache.org/repos/asf?p=cassandra.git;a=tree"/>
|
||||
|
|
|
|||
|
|
@ -1,3 +1,9 @@
|
|||
cassandra (1.1.6) unstable; urgency=low
|
||||
|
||||
* New release
|
||||
|
||||
-- Sylvain Lebresne <slebresne@apache.org> Tue, 09 Oct 2012 16:38:02 +0200
|
||||
|
||||
cassandra (1.1.5) unstable; urgency=low
|
||||
|
||||
* New release
|
||||
|
|
|
|||
|
|
@ -1,65 +1,86 @@
|
|||
package org.apache.cassandra.db;
|
||||
|
||||
import java.util.UUID;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import org.apache.cassandra.SchemaLoader;
|
||||
import org.apache.cassandra.db.ColumnFamilyStore;
|
||||
import org.apache.cassandra.db.HintedHandOffManager;
|
||||
import org.apache.cassandra.db.RowMutation;
|
||||
import org.apache.cassandra.db.Table;
|
||||
import org.apache.cassandra.db.compaction.CompactionManager;
|
||||
import org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy;
|
||||
import org.apache.cassandra.db.filter.QueryPath;
|
||||
import org.apache.cassandra.dht.IPartitioner;
|
||||
import org.apache.cassandra.service.StorageService;
|
||||
import org.apache.cassandra.utils.ByteBufferUtil;
|
||||
import org.apache.cassandra.utils.FBUtilities;
|
||||
|
||||
import static junit.framework.Assert.assertEquals;
|
||||
|
||||
public class HintedHandOffTest extends SchemaLoader
|
||||
{
|
||||
|
||||
public static final String TABLE4 = "Keyspace4";
|
||||
public static final String STANDARD1_CF = "Standard1";
|
||||
public static final String COLUMN1 = "column1";
|
||||
|
||||
// Test compaction of hints column family. It shouldn't remove all columns on compaction.
|
||||
@Test
|
||||
public void testCompactionOfHintsCF() throws Exception
|
||||
{
|
||||
// prepare hints column family
|
||||
Table systemTable = Table.open("system");
|
||||
ColumnFamilyStore hintStore = systemTable.getColumnFamilyStore(HintedHandOffManager.HINTS_CF);
|
||||
hintStore.clearUnsafe();
|
||||
hintStore.metadata.gcGraceSeconds(36000); // 10 hours
|
||||
hintStore.setCompactionStrategyClass(SizeTieredCompactionStrategy.class.getCanonicalName());
|
||||
hintStore.disableAutoCompaction();
|
||||
|
||||
// insert 1 hint
|
||||
RowMutation rm = new RowMutation(TABLE4, ByteBufferUtil.bytes(1));
|
||||
rm.add(new QueryPath(STANDARD1_CF,
|
||||
null,
|
||||
ByteBufferUtil.bytes(String.valueOf(COLUMN1))),
|
||||
ByteBufferUtil.EMPTY_BYTE_BUFFER,
|
||||
System.currentTimeMillis());
|
||||
|
||||
RowMutation.hintFor(rm, ByteBufferUtil.bytes("foo")).apply();
|
||||
|
||||
// flush data to disk
|
||||
hintStore.forceBlockingFlush();
|
||||
assertEquals(1, hintStore.getSSTables().size());
|
||||
|
||||
// submit compaction
|
||||
FBUtilities.waitOnFuture(HintedHandOffManager.instance.compact());
|
||||
while (CompactionManager.instance.getPendingTasks() > 0 || CompactionManager.instance.getActiveCompactions() > 0)
|
||||
TimeUnit.SECONDS.sleep(1);
|
||||
|
||||
// single row should not be removed because of gc_grace_seconds
|
||||
// is 10 hours and there are no any tombstones in sstable
|
||||
assertEquals(1, hintStore.getSSTables().size());
|
||||
}
|
||||
}
|
||||
package org.apache.cassandra.db;
|
||||
/*
|
||||
*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
import java.util.UUID;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import org.apache.cassandra.SchemaLoader;
|
||||
import org.apache.cassandra.db.ColumnFamilyStore;
|
||||
import org.apache.cassandra.db.HintedHandOffManager;
|
||||
import org.apache.cassandra.db.RowMutation;
|
||||
import org.apache.cassandra.db.Table;
|
||||
import org.apache.cassandra.db.compaction.CompactionManager;
|
||||
import org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy;
|
||||
import org.apache.cassandra.db.filter.QueryPath;
|
||||
import org.apache.cassandra.dht.IPartitioner;
|
||||
import org.apache.cassandra.service.StorageService;
|
||||
import org.apache.cassandra.utils.ByteBufferUtil;
|
||||
import org.apache.cassandra.utils.FBUtilities;
|
||||
|
||||
import static junit.framework.Assert.assertEquals;
|
||||
|
||||
public class HintedHandOffTest extends SchemaLoader
|
||||
{
|
||||
|
||||
public static final String TABLE4 = "Keyspace4";
|
||||
public static final String STANDARD1_CF = "Standard1";
|
||||
public static final String COLUMN1 = "column1";
|
||||
|
||||
// Test compaction of hints column family. It shouldn't remove all columns on compaction.
|
||||
@Test
|
||||
public void testCompactionOfHintsCF() throws Exception
|
||||
{
|
||||
// prepare hints column family
|
||||
Table systemTable = Table.open("system");
|
||||
ColumnFamilyStore hintStore = systemTable.getColumnFamilyStore(HintedHandOffManager.HINTS_CF);
|
||||
hintStore.clearUnsafe();
|
||||
hintStore.metadata.gcGraceSeconds(36000); // 10 hours
|
||||
hintStore.setCompactionStrategyClass(SizeTieredCompactionStrategy.class.getCanonicalName());
|
||||
hintStore.disableAutoCompaction();
|
||||
|
||||
// insert 1 hint
|
||||
RowMutation rm = new RowMutation(TABLE4, ByteBufferUtil.bytes(1));
|
||||
rm.add(new QueryPath(STANDARD1_CF,
|
||||
null,
|
||||
ByteBufferUtil.bytes(String.valueOf(COLUMN1))),
|
||||
ByteBufferUtil.EMPTY_BYTE_BUFFER,
|
||||
System.currentTimeMillis());
|
||||
|
||||
RowMutation.hintFor(rm, ByteBufferUtil.bytes("foo")).apply();
|
||||
|
||||
// flush data to disk
|
||||
hintStore.forceBlockingFlush();
|
||||
assertEquals(1, hintStore.getSSTables().size());
|
||||
|
||||
// submit compaction
|
||||
FBUtilities.waitOnFuture(HintedHandOffManager.instance.compact());
|
||||
while (CompactionManager.instance.getPendingTasks() > 0 || CompactionManager.instance.getActiveCompactions() > 0)
|
||||
TimeUnit.SECONDS.sleep(1);
|
||||
|
||||
// single row should not be removed because of gc_grace_seconds
|
||||
// is 10 hours and there are no any tombstones in sstable
|
||||
assertEquals(1, hintStore.getSSTables().size());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue