diff --git a/CHANGES.txt b/CHANGES.txt
index ae36b06c20..1d827cf63e 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -2,7 +2,7 @@
* describe_ring should include datacenter/topology information (CASSANDRA-2882)
-1.0
+1.0.0-beta1
* removed binarymemtable (CASSANDRA-2692)
* add commitlog_total_space_in_mb to prevent fragmented logs (CASSANDRA-2427)
* removed commitlog_rotation_threshold_in_mb configuration (CASSANDRA-2771)
@@ -76,6 +76,8 @@
* Add RowLevel support to secondary index API (CASSANDRA-3147)
* Make SerializingCacheProvider the default if JNA is available (CASSANDRA-3183)
* Fix backwards compatibilty for CQL memtable properties (CASSANDRA-3190)
+ * Add five-minute delay before starting compactions on a restarted server
+ (CASSANDRA-3181)
0.8.6
diff --git a/NEWS.txt b/NEWS.txt
index 3484b60288..2e92b3386a 100644
--- a/NEWS.txt
+++ b/NEWS.txt
@@ -60,6 +60,10 @@ Other
This does not affect client compatibility -- the old options are
still allowed, but have no effect. These options may be removed
entirely in a future release.
+ - Backlogged compactions will begin five minutes after startup. The 0.8
+ behavior of never starting compaction until a flush happens is usually
+ not what is desired, but a short grace period is useful to allow caches
+ to warm up first.
0.8.5
diff --git a/NOTICE.txt b/NOTICE.txt
index 6c73c2eeba..0f033f1f16 100644
--- a/NOTICE.txt
+++ b/NOTICE.txt
@@ -31,3 +31,8 @@ YAML support provided by snakeyaml (http://code.google.com/p/snakeyaml/).
Copyright (c) 2008-2010 Andrey Somov
Compression support provided by snappy-java (http://code.google.com/p/snappy-java/)
+Written by Taro L. Saito.
+
+Streaming compression support provided by ning-compress
+(https://github.com/ning/compress)
+Copyright 2009-2010 Ning, Inc.
diff --git a/build.xml b/build.xml
index c9aceb6cd6..823617de7c 100644
--- a/build.xml
+++ b/build.xml
@@ -25,7 +25,7 @@
-
+
diff --git a/debian/changelog b/debian/changelog
index 9bdd0cf1cb..12e2c1acc8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+cassandra (1.0.0-beta1) unstable; urgency=low
+
+ * New beta release
+
+ -- Sylvain Lebresne Wed, 14 Sep 2011 11:07:47 +0200
+
cassandra (0.8.1) unstable; urgency=low
* New release
diff --git a/src/java/org/apache/cassandra/cql/jdbc/JdbcCounterColumn.java b/src/java/org/apache/cassandra/cql/jdbc/JdbcCounterColumn.java
index 46108543c3..da40e16314 100644
--- a/src/java/org/apache/cassandra/cql/jdbc/JdbcCounterColumn.java
+++ b/src/java/org/apache/cassandra/cql/jdbc/JdbcCounterColumn.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.cql.jdbc;
+/*
+ *
+ * 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.
+ *
+ */
+
public class JdbcCounterColumn extends JdbcLong
{
diff --git a/src/java/org/apache/cassandra/cql/jdbc/TypesMap.java b/src/java/org/apache/cassandra/cql/jdbc/TypesMap.java
index 94ff9a33aa..e1d649cdf8 100644
--- a/src/java/org/apache/cassandra/cql/jdbc/TypesMap.java
+++ b/src/java/org/apache/cassandra/cql/jdbc/TypesMap.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.cql.jdbc;
+/*
+ *
+ * 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.HashMap;
import java.util.Map;
diff --git a/src/java/org/apache/cassandra/db/columniterator/ICountableColumnIterator.java b/src/java/org/apache/cassandra/db/columniterator/ICountableColumnIterator.java
index 33a19e0825..5ad7d03f8c 100644
--- a/src/java/org/apache/cassandra/db/columniterator/ICountableColumnIterator.java
+++ b/src/java/org/apache/cassandra/db/columniterator/ICountableColumnIterator.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.db.columniterator;
+/*
+ *
+ * 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.
+ *
+ */
+
public interface ICountableColumnIterator extends IColumnIterator
{
diff --git a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
index 1524dcbd14..fa6173569a 100644
--- a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
+++ b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.db.compaction;
+/*
+ *
+ * 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.io.IOException;
import java.util.ArrayList;
diff --git a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionStrategy.java b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionStrategy.java
index e465071d7b..050e13e466 100644
--- a/src/java/org/apache/cassandra/db/compaction/AbstractCompactionStrategy.java
+++ b/src/java/org/apache/cassandra/db/compaction/AbstractCompactionStrategy.java
@@ -18,21 +18,14 @@
package org.apache.cassandra.db.compaction;
-import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
+import java.util.concurrent.TimeUnit;
-import org.apache.commons.lang.StringUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import org.apache.cassandra.config.CFMetaData;
-import org.apache.cassandra.db.Table;
import org.apache.cassandra.db.ColumnFamilyStore;
import org.apache.cassandra.io.sstable.SSTableReader;
-import org.apache.cassandra.utils.DefaultInteger;
-import org.apache.cassandra.utils.Pair;
+import org.apache.cassandra.service.StorageService;
/**
@@ -53,6 +46,19 @@ public abstract class AbstractCompactionStrategy
assert cfs != null;
this.cfs = cfs;
this.options = options;
+
+ // start compactions in five minutes (if no flushes have occurred by then to do so)
+ Runnable runnable = new Runnable()
+ {
+ public void run()
+ {
+ if (CompactionManager.instance.getActiveCompactions() == 0)
+ {
+ CompactionManager.instance.submitBackground(AbstractCompactionStrategy.this.cfs);
+ }
+ }
+ };
+ StorageService.tasks.schedule(runnable, 5 * 60, TimeUnit.SECONDS);
}
/**
diff --git a/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java b/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java
index 876c7f774d..32b8a2b678 100644
--- a/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java
+++ b/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.db.compaction;
+/*
+ *
+ * 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.Collection;
import java.util.Collections;
@@ -29,24 +50,6 @@ public class LeveledCompactionStrategy extends AbstractCompactionStrategy implem
private final int maxSSTableSize;
private final AtomicReference task = new AtomicReference();
- public class ScheduledBackgroundCompaction implements Runnable
- {
- ColumnFamilyStore cfs;
-
- public ScheduledBackgroundCompaction(ColumnFamilyStore cfs)
- {
- this.cfs = cfs;
- }
-
- public void run()
- {
- if (CompactionManager.instance.getActiveCompactions() == 0)
- {
- CompactionManager.instance.submitBackground(cfs);
- }
- }
- }
-
public LeveledCompactionStrategy(ColumnFamilyStore cfs, Map options)
{
super(cfs, options);
@@ -76,13 +79,11 @@ public class LeveledCompactionStrategy extends AbstractCompactionStrategy implem
// override min/max for this strategy
cfs.setMaximumCompactionThreshold(Integer.MAX_VALUE);
cfs.setMinimumCompactionThreshold(1);
-
- DebuggableScheduledThreadPoolExecutor st = StorageService.scheduledTasks;
- st.scheduleAtFixedRate(new ScheduledBackgroundCompaction(cfs), 10000, 3000, TimeUnit.MILLISECONDS);
}
public void shutdown()
{
+ super.shutdown();
cfs.getDataTracker().unsubscribe(this);
}
@@ -110,7 +111,7 @@ public class LeveledCompactionStrategy extends AbstractCompactionStrategy implem
public List getMaximalTasks(int gcBefore)
{
- return Collections.emptyList();
+ return getBackgroundTasks(gcBefore);
}
public AbstractCompactionTask getUserDefinedTask(Collection sstables, int gcBefore)
@@ -138,4 +139,4 @@ public class LeveledCompactionStrategy extends AbstractCompactionStrategy implem
manifest.logDistribution();
}
}
-}
\ No newline at end of file
+}
diff --git a/src/java/org/apache/cassandra/db/compaction/LeveledCompactionTask.java b/src/java/org/apache/cassandra/db/compaction/LeveledCompactionTask.java
index cf7e70954c..abdb59f601 100644
--- a/src/java/org/apache/cassandra/db/compaction/LeveledCompactionTask.java
+++ b/src/java/org/apache/cassandra/db/compaction/LeveledCompactionTask.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.db.compaction;
+/*
+ *
+ * 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.io.IOException;
import java.util.Collection;
diff --git a/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java b/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
index e2073b15ee..e596b7f429 100644
--- a/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
+++ b/src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.db.compaction;
+/*
+ *
+ * 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.io.File;
import java.io.IOError;
diff --git a/src/java/org/apache/cassandra/locator/Ec2MultiRegionSnitch.java b/src/java/org/apache/cassandra/locator/Ec2MultiRegionSnitch.java
index 195ff27611..b5a7deb298 100644
--- a/src/java/org/apache/cassandra/locator/Ec2MultiRegionSnitch.java
+++ b/src/java/org/apache/cassandra/locator/Ec2MultiRegionSnitch.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.locator;
+/*
+ *
+ * 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.io.IOException;
import java.net.InetAddress;
diff --git a/src/java/org/apache/cassandra/notifications/INotification.java b/src/java/org/apache/cassandra/notifications/INotification.java
index 58d12391b1..f37bf1c096 100644
--- a/src/java/org/apache/cassandra/notifications/INotification.java
+++ b/src/java/org/apache/cassandra/notifications/INotification.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.notifications;
+/*
+ *
+ * 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.
+ *
+ */
+
/**
* Created by IntelliJ IDEA.
diff --git a/src/java/org/apache/cassandra/notifications/INotificationConsumer.java b/src/java/org/apache/cassandra/notifications/INotificationConsumer.java
index e37a71c945..7d5dcb6db2 100644
--- a/src/java/org/apache/cassandra/notifications/INotificationConsumer.java
+++ b/src/java/org/apache/cassandra/notifications/INotificationConsumer.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.notifications;
+/*
+ *
+ * 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.
+ *
+ */
+
public interface INotificationConsumer
{
diff --git a/src/java/org/apache/cassandra/notifications/SSTableAddedNotification.java b/src/java/org/apache/cassandra/notifications/SSTableAddedNotification.java
index 2329de1b00..7705d0c8dd 100644
--- a/src/java/org/apache/cassandra/notifications/SSTableAddedNotification.java
+++ b/src/java/org/apache/cassandra/notifications/SSTableAddedNotification.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.notifications;
+/*
+ *
+ * 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 org.apache.cassandra.io.sstable.SSTableReader;
diff --git a/src/java/org/apache/cassandra/notifications/SSTableListChangedNotification.java b/src/java/org/apache/cassandra/notifications/SSTableListChangedNotification.java
index 561150502c..480dcf2a4b 100644
--- a/src/java/org/apache/cassandra/notifications/SSTableListChangedNotification.java
+++ b/src/java/org/apache/cassandra/notifications/SSTableListChangedNotification.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.notifications;
+/*
+ *
+ * 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 org.apache.cassandra.io.sstable.SSTableReader;
diff --git a/src/java/org/apache/cassandra/utils/IntervalTree/Interval.java b/src/java/org/apache/cassandra/utils/IntervalTree/Interval.java
index 024905ac62..ce1952acf2 100644
--- a/src/java/org/apache/cassandra/utils/IntervalTree/Interval.java
+++ b/src/java/org/apache/cassandra/utils/IntervalTree/Interval.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.utils.IntervalTree;
+/*
+ *
+ * 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 com.google.common.collect.Ordering;
diff --git a/src/java/org/apache/cassandra/utils/IntervalTree/IntervalNode.java b/src/java/org/apache/cassandra/utils/IntervalTree/IntervalNode.java
index dde4871cc4..a35447ddfe 100644
--- a/src/java/org/apache/cassandra/utils/IntervalTree/IntervalNode.java
+++ b/src/java/org/apache/cassandra/utils/IntervalTree/IntervalNode.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.utils.IntervalTree;
+/*
+ *
+ * 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.ArrayList;
import java.util.Collections;
diff --git a/src/java/org/apache/cassandra/utils/IntervalTree/IntervalTree.java b/src/java/org/apache/cassandra/utils/IntervalTree/IntervalTree.java
index 0c08fe1bdf..313796c815 100644
--- a/src/java/org/apache/cassandra/utils/IntervalTree/IntervalTree.java
+++ b/src/java/org/apache/cassandra/utils/IntervalTree/IntervalTree.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.utils.IntervalTree;
+/*
+ *
+ * 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.LinkedList;
import java.util.List;
diff --git a/test/unit/org/apache/cassandra/db/ArrayBackedSortedColumnsTest.java b/test/unit/org/apache/cassandra/db/ArrayBackedSortedColumnsTest.java
index 165ca0b120..160873c44b 100644
--- a/test/unit/org/apache/cassandra/db/ArrayBackedSortedColumnsTest.java
+++ b/test/unit/org/apache/cassandra/db/ArrayBackedSortedColumnsTest.java
@@ -1,4 +1,25 @@
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.nio.ByteBuffer;
import java.util.*;
diff --git a/test/unit/org/apache/cassandra/net/MessageSerializer.java b/test/unit/org/apache/cassandra/net/MessageSerializer.java
index 633a0726f3..8734c0601e 100644
--- a/test/unit/org/apache/cassandra/net/MessageSerializer.java
+++ b/test/unit/org/apache/cassandra/net/MessageSerializer.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.net;
+/*
+ *
+ * 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.io.DataInputStream;
import java.io.DataOutputStream;
diff --git a/test/unit/org/apache/cassandra/utils/IntervalTest.java b/test/unit/org/apache/cassandra/utils/IntervalTest.java
index 38d9d020c5..ac2a1bf903 100644
--- a/test/unit/org/apache/cassandra/utils/IntervalTest.java
+++ b/test/unit/org/apache/cassandra/utils/IntervalTest.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.utils;
+/*
+ *
+ * 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 junit.framework.Assert;
import junit.framework.TestCase;
diff --git a/test/unit/org/apache/cassandra/utils/IntervalTreeTest.java b/test/unit/org/apache/cassandra/utils/IntervalTreeTest.java
index 580c021e86..ccb5df6b42 100644
--- a/test/unit/org/apache/cassandra/utils/IntervalTreeTest.java
+++ b/test/unit/org/apache/cassandra/utils/IntervalTreeTest.java
@@ -1,4 +1,25 @@
package org.apache.cassandra.utils;
+/*
+ *
+ * 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 junit.framework.TestCase;
import org.apache.cassandra.utils.IntervalTree.*;