diff --git a/CHANGES.txt b/CHANGES.txt
index 45ee799..d8c8cf3 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -205,6 +205,9 @@
     MAPREDUCE-1701. Fixes a problem to do with exception handling in 
     delegation-token renewals. (Boris Shkolnik via ddas)
 
+    MAPREDUCE-1686. Fixes StreamUtil.goodClassOrNull to find classes without
+    package names. (Paul Burkhardt via amareshwari)
+
 Release 0.21.0 - Unreleased
 
   INCOMPATIBLE CHANGES
diff --git a/src/contrib/streaming/src/java/org/apache/hadoop/streaming/StreamUtil.java b/src/contrib/streaming/src/java/org/apache/hadoop/streaming/StreamUtil.java
index 3930db7..88ef99b 100644
--- a/src/contrib/streaming/src/java/org/apache/hadoop/streaming/StreamUtil.java
+++ b/src/contrib/streaming/src/java/org/apache/hadoop/streaming/StreamUtil.java
@@ -55,14 +55,20 @@
    * (repeat for -reducer, -combiner) </pre>
    */
   public static Class goodClassOrNull(Configuration conf, String className, String defaultPackage) {
-    if (className.indexOf('.') == -1 && defaultPackage != null) {
-      className = defaultPackage + "." + className;
-    }
     Class clazz = null;
     try {
       clazz = conf.getClassByName(className);
     } catch (ClassNotFoundException cnf) {
     }
+    if (clazz == null) {
+      if (className.indexOf('.') == -1 && defaultPackage != null) {
+        className = defaultPackage + "." + className;
+        try {
+          clazz = conf.getClassByName(className);
+        } catch (ClassNotFoundException cnf) {
+        }
+      }
+    }
     return clazz;
   }
 
