diff --git a/CHANGES.txt b/CHANGES.txt
index d9cb6ae..99a4d93 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -40,6 +40,8 @@
  
 BUG FIXES
 
+PIG-5278: Unit test failures because of PIG-5264 (nkollar via rohini)
+
 PIG-5276: building "jar" should not call "clean" (nkollar via szita)
 
 PIG-5246: Modify bin/pig about SPARK_HOME, SPARK_ASSEMBLY_JAR after upgrading spark to 2 (liyunzhang)
diff --git a/test/excluded-tests-spark b/test/excluded-tests-spark
index 38317fe..55b1a4a 100644
--- a/test/excluded-tests-spark
+++ b/test/excluded-tests-spark
@@ -2,3 +2,5 @@
 **/tez/*.java
 **/TestNativeMapReduce.java
 **/TestCounters.java
+**/TestMultiQueryCompiler.java
+**/TestAutoLocalMode.java
\ No newline at end of file
diff --git a/test/excluded-tests-tez b/test/excluded-tests-tez
index 9c3505a..0e98939 100644
--- a/test/excluded-tests-tez
+++ b/test/excluded-tests-tez
@@ -1,2 +1,4 @@
 **/Test*MR.java
-**/spark/*.java
\ No newline at end of file
+**/spark/*.java
+**/TestMultiQueryCompiler.java
+**/TestAutoLocalMode.java
\ No newline at end of file
diff --git a/test/org/apache/pig/test/TestAutoLocalMode.java b/test/org/apache/pig/test/TestAutoLocalMode.java
index 6dab274..1258109 100644
--- a/test/org/apache/pig/test/TestAutoLocalMode.java
+++ b/test/org/apache/pig/test/TestAutoLocalMode.java
@@ -33,6 +33,7 @@
 import org.apache.log4j.Level;
 import org.apache.log4j.Logger;
 import org.apache.log4j.SimpleLayout;
+import org.apache.pig.ExecType;
 import org.apache.pig.PigConfiguration;
 import org.apache.pig.PigServer;
 import org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler;
@@ -40,9 +41,10 @@
 import org.junit.Before;
 import org.junit.Test;
 
+// Auto local mode is not implemented for Spark and Tez (PIG-5281, PIG-5280)
 public class TestAutoLocalMode {
 
-    static MiniGenericCluster cluster = MiniGenericCluster.buildCluster();
+    static MiniGenericCluster cluster = MiniGenericCluster.buildCluster(MiniGenericCluster.EXECTYPE_MR);
     private PigServer pigServer;
     private File logFile;
 
diff --git a/test/org/apache/pig/test/TestMultiQueryCompiler.java b/test/org/apache/pig/test/TestMultiQueryCompiler.java
index fec4440..4bd7426 100644
--- a/test/org/apache/pig/test/TestMultiQueryCompiler.java
+++ b/test/org/apache/pig/test/TestMultiQueryCompiler.java
@@ -57,6 +57,7 @@
 import org.junit.runner.RunWith;
 import org.junit.runners.JUnit4;
 
+// This test is specific to MR, not intended to pass in spark and tez mode
 @RunWith(JUnit4.class)
 public class TestMultiQueryCompiler {
 
@@ -66,7 +67,7 @@
 
     @BeforeClass
     public static void setUpBeforeClass() throws IOException {
-        cluster = MiniGenericCluster.buildCluster();
+        cluster = MiniGenericCluster.buildCluster(MiniGenericCluster.EXECTYPE_MR);
         Util.copyFromLocalToCluster(cluster,
                 "test/org/apache/pig/test/data/passwd", "passwd");
         Util.copyFromLocalToCluster(cluster,
