diff --git a/CHANGES.txt b/CHANGES.txt index 018646e1ec..f3ef292155 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -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) diff --git a/NEWS.txt b/NEWS.txt index ad22610707..a2d0ce1952 100644 --- a/NEWS.txt +++ b/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 ===== diff --git a/build.xml b/build.xml index 08b597b05f..551e1bd6a0 100644 --- a/build.xml +++ b/build.xml @@ -25,7 +25,7 @@ - + diff --git a/debian/changelog b/debian/changelog index 8e6b389ab4..8503c52709 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +cassandra (1.1.6) unstable; urgency=low + + * New release + + -- Sylvain Lebresne Tue, 09 Oct 2012 16:38:02 +0200 + cassandra (1.1.5) unstable; urgency=low * New release diff --git a/test/unit/org/apache/cassandra/db/HintedHandOffTest.java b/test/unit/org/apache/cassandra/db/HintedHandOffTest.java index 18c3695d13..62179c462b 100644 --- a/test/unit/org/apache/cassandra/db/HintedHandOffTest.java +++ b/test/unit/org/apache/cassandra/db/HintedHandOffTest.java @@ -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()); + } +}