diff --git a/src/Control/Distributed/Task/DataAccess/HdfsDataSource.hs b/src/Control/Distributed/Task/DataAccess/HdfsDataSource.hs
--- a/src/Control/Distributed/Task/DataAccess/HdfsDataSource.hs
+++ b/src/Control/Distributed/Task/DataAccess/HdfsDataSource.hs
@@ -4,10 +4,11 @@
 import qualified Data.ByteString.Char8 as BC
 import qualified Data.ByteString.Lazy as BL
 import qualified Data.ByteString.Lazy.Char8 as BLC
+import qualified Codec.Compression.BZip as BZip
 import qualified Codec.Compression.GZip as GZip
 import qualified Data.Hadoop.Configuration as HDFS
 import qualified Data.Hadoop.Types as HDFS
-import Data.List (isSuffixOf)
+import Data.List.Split (splitOn)
 import qualified Data.Text as T
 import Network.Hadoop.Hdfs
 import Network.Hadoop.Read
@@ -32,7 +33,13 @@
   where
     targetDescription = show hdfsLocation
     doLoad = readHdfsFile hdfsLocation
-    unzipIfNecessary = if ".gz" `isSuffixOf` (snd hdfsLocation) then GZip.decompress else id
+    unzipIfNecessary =
+      let parts = splitOn "." (snd hdfsLocation)
+          suffix = if null parts then "" else last parts
+      in case suffix of
+          "gz" -> GZip.decompress
+          "bz2" -> BZip.decompress
+          _ -> id
 
 readHdfsFile :: HdfsLocation -> IO BL.ByteString
 readHdfsFile (hdfsConfig, path) = do
diff --git a/task-distribution.cabal b/task-distribution.cabal
--- a/task-distribution.cabal
+++ b/task-distribution.cabal
@@ -1,5 +1,5 @@
 name:                task-distribution
-version:             0.1.0.0
+version:             0.1.0.1
 synopsis:            Initial project template from stack
 description:         Please see README.md
 homepage:            http://github.com/michaxm/task-distribution#readme
@@ -64,7 +64,8 @@
                      , time
                      , hashable
                      , zlib
-                     , hadoop-rpc
+                     , bzlib
+                     , hadoop-rpc < 1.1
                      , vector
                      , containers
                      , async
@@ -120,17 +121,18 @@
                      , filepath
                      , distributed-process
                      , async
-                     , hadoop-rpc
+                     , hadoop-rpc < 1.1
                      , vector
                      , text
                      , zlib
+                     , bzlib
   default-language:    Haskell2010
 
 executable run-demo-task
   hs-source-dirs:      app
   main-is:             RunDemoTask.hs
   other-modules:       DemoTask
-  ghc-options:         -threaded -rtsopts -with-rtsopts=-N -auto-all -caf-all
+  ghc-options:         -threaded -rtsopts -with-rtsopts=-N -O2 -auto-all -caf-all
   build-depends:       base
                      , bytestring
                      , zlib
@@ -176,7 +178,7 @@
                      , rank1dynamic
                      , distributed-static
                      , text
-                     , hadoop-rpc
+                     , hadoop-rpc < 1.1
                      , vector
                      , split
                      , hslogger
