Index: modules/benchmark/lib/commons-compress-NOTICE.txt
===================================================================
--- modules/benchmark/lib/commons-compress-NOTICE.txt	(revision 1083791)
+++ modules/benchmark/lib/commons-compress-NOTICE.txt	(working copy)
@@ -1,15 +1,5 @@
 Apache Commons Compress
-Copyright 2002-2009 The Apache Software Foundation
+Copyright 2002-2010 The Apache Software Foundation
 
 This product includes software developed by
 The Apache Software Foundation (http://www.apache.org/).
-
-Original BZip2 classes contributed by Keiron Liddle
-<keiron@aftexsw.com>, Aftex Software to the Apache Ant project
-
-Original Tar classes from contributors of the Apache Ant project
-
-Original Zip classes from contributors of the Apache Ant project
-
-Original CPIO classes contributed by Markus Kuss and the jRPM project
-(jrpm.sourceforge.net)
Index: modules/benchmark/lib/commons-compress-1.0.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: modules/benchmark/lib/commons-compress-1.1.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: modules/benchmark/lib/commons-compress-1.1.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Index: modules/benchmark/CHANGES.txt
===================================================================
--- modules/benchmark/CHANGES.txt	(revision 1083816)
+++ modules/benchmark/CHANGES.txt	(working copy)
@@ -3,6 +3,10 @@
 The Benchmark contrib package contains code for benchmarking Lucene in a variety of ways.
 
 03/21/2011
+  LUCENE-2978: Upgrade benchmark from commons-compress-1.0 to commons-compress-1.1 
+  because gzip decompression in 1.0 is 15 times slower than 1.1 or Java's GZipInputStream.
+  
+03/21/2011
   LUCENE-2958: WriteLineDocTask improvements - allow to emit line docs also for empty
   docs, and be flexible about which fields are added to the line file. For this, a header
   line was added to the line file. That header is examined by LineDocSource. Old line
Index: modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/ContentSource.java
===================================================================
--- modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/ContentSource.java	(revision 1083791)
+++ modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/ContentSource.java	(working copy)
@@ -55,15 +55,12 @@
  */
 public abstract class ContentSource {
   
-  private static final int BZIP = 0;
-  private static final int GZIP = 1;
-  private static final int OTHER = 2;
-  private static final Map<String,Integer> extensionToType = new HashMap<String,Integer>();
+  private static final Map<String,String> extensionToType = new HashMap<String,String>();
   static {
-    extensionToType.put(".bz2", Integer.valueOf(BZIP));
-    extensionToType.put(".bzip", Integer.valueOf(BZIP));
-    extensionToType.put(".gz", Integer.valueOf(GZIP));
-    extensionToType.put(".gzip", Integer.valueOf(GZIP));
+    extensionToType.put(".bz2", CompressorStreamFactory.BZIP2);
+    extensionToType.put(".bzip", CompressorStreamFactory.BZIP2);
+    extensionToType.put(".gz", CompressorStreamFactory.GZIP);
+    extensionToType.put(".gzip", CompressorStreamFactory.GZIP);
   }
   
   protected static final int BUFFER_SIZE = 1 << 16; // 64K
@@ -128,28 +125,15 @@
     
     String fileName = file.getName();
     int idx = fileName.lastIndexOf('.');
-    int type = OTHER;
+    String type = null;
     if (idx != -1) {
-      Integer typeInt = extensionToType.get(fileName.substring(idx));
-      if (typeInt != null) {
-        type = typeInt.intValue();
-      }
+      type = extensionToType.get(fileName.substring(idx));
     }
     
     try {
-      switch (type) {
-        case BZIP:
-          // According to BZip2CompressorInputStream's code, it reads the first 
-          // two file header chars ('B' and 'Z'). It is important to wrap the
-          // underlying input stream with a buffered one since
-          // Bzip2CompressorInputStream uses the read() method exclusively.
-          is = csFactory.createCompressorInputStream("bzip2", is);
-          break;
-        case GZIP:
-          is = csFactory.createCompressorInputStream("gz", is);
-          break;
-        default: // Do nothing, stay with FileInputStream
-      }
+      if (type!=null) { // bzip or gzip
+        return csFactory.createCompressorInputStream(type, is);
+      } 
     } catch (CompressorException e) {
       IOException ioe = new IOException(e.getMessage());
       ioe.initCause(e);
Index: dev-tools/eclipse/dot.classpath
===================================================================
--- dev-tools/eclipse/dot.classpath	(revision 1083791)
+++ dev-tools/eclipse/dot.classpath	(working copy)
@@ -90,7 +90,7 @@
 	<classpathentry kind="lib" path="modules/analysis/phonetic/lib/commons-codec-1.4.jar"/>
 	<classpathentry kind="lib" path="modules/benchmark/lib/commons-beanutils-1.7.0.jar"/>
 	<classpathentry kind="lib" path="modules/benchmark/lib/commons-collections-3.1.jar"/>
-	<classpathentry kind="lib" path="modules/benchmark/lib/commons-compress-1.0.jar"/>
+	<classpathentry kind="lib" path="modules/benchmark/lib/commons-compress-1.1.jar"/>
 	<classpathentry kind="lib" path="modules/benchmark/lib/commons-digester-1.7.jar"/>
 	<classpathentry kind="lib" path="modules/benchmark/lib/commons-logging-1.0.4.jar"/>
 	<classpathentry kind="lib" path="modules/benchmark/lib/xercesImpl-2.9.1-patched-XERCESJ-1257.jar"/>
