You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vo...@apache.org on 2016/08/16 08:18:28 UTC

ignite git commit: IGNITE-3692: Implemented.

Repository: ignite
Updated Branches:
  refs/heads/ignite-3692 [created] 7674f0cdb


IGNITE-3692: Implemented.


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/7674f0cd
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/7674f0cd
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/7674f0cd

Branch: refs/heads/ignite-3692
Commit: 7674f0cdb6b37d8d14880d9730c0f9d4e4ded0f3
Parents: 278633e
Author: vozerov-gridgain <vo...@gridgain.com>
Authored: Tue Aug 16 11:18:17 2016 +0300
Committer: vozerov-gridgain <vo...@gridgain.com>
Committed: Tue Aug 16 11:18:17 2016 +0300

----------------------------------------------------------------------
 .../internal/processors/igfs/IgfsAsyncImpl.java |  5 ++
 .../ignite/internal/processors/igfs/IgfsEx.java |  7 ++
 .../internal/processors/igfs/IgfsImpl.java      |  8 +-
 .../processors/igfs/IgfsAbstractSelfTest.java   | 86 ++++++++++----------
 .../igfs/IgfsBackupFailoverSelfTest.java        |  2 +-
 .../igfs/IgfsDualAbstractSelfTest.java          | 86 +-------------------
 .../internal/processors/igfs/IgfsMock.java      |  5 ++
 .../igfs/HadoopIgfsDualAbstractSelfTest.java    |  2 +-
 8 files changed, 66 insertions(+), 135 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/7674f0cd/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsAsyncImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsAsyncImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsAsyncImpl.java
index bf3d22b..07b070e 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsAsyncImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsAsyncImpl.java
@@ -322,4 +322,9 @@ public class IgfsAsyncImpl extends AsyncSupportAdapter<IgniteFileSystem> impleme
     @Override public IgfsSecondaryFileSystem asSecondary() {
         return igfs.asSecondary();
     }
+
+    /** {@inheritDoc} */
+    @Override public void await(IgfsPath... paths) {
+        igfs.await(paths);
+    }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/7674f0cd/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsEx.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsEx.java
index 4c64bc9..9760f43 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsEx.java
@@ -142,4 +142,11 @@ public interface IgfsEx extends IgniteFileSystem {
      * @return Secondary file system wrapper.
      */
     public IgfsSecondaryFileSystem asSecondary();
+
+    /**
+     * Await for any pending finished writes on the children paths.
+     *
+     * @param paths Paths to check.
+     */
+    public void await(IgfsPath... paths);
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/7674f0cd/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsImpl.java
index e1f8e61..6707acc 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsImpl.java
@@ -374,12 +374,8 @@ public final class IgfsImpl implements IgfsEx {
         return busyLock.enterBusy();
     }
 
-    /**
-     * Await for any pending finished writes on the children paths.
-     *
-     * @param paths Paths to check.
-     */
-    void await(IgfsPath... paths) {
+    /** {@inheritDoc} */
+    @Override public void await(IgfsPath... paths) {
         assert paths != null;
 
         for (Map.Entry<IgfsPath, IgfsFileWorkerBatch> workerEntry : workerMap.entrySet()) {

http://git-wip-us.apache.org/repos/asf/ignite/blob/7674f0cd/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsAbstractSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsAbstractSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsAbstractSelfTest.java
index 08cb929..236a589 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsAbstractSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsAbstractSelfTest.java
@@ -489,7 +489,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
      * @throws Exception If failed.
      */
     public void testExists() throws Exception {
-        create(igfs.asSecondary(), paths(DIR), null);
+        create(igfs, paths(DIR), null);
 
         checkExist(igfs, igfsSecondary, DIR);
     }
@@ -600,7 +600,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
         IgfsPath file1 = new IgfsPath("/file1");
         IgfsPath file2 = new IgfsPath("/file2");
 
-        create(igfs.asSecondary(), null, paths(file1));
+        create(igfs, null, paths(file1));
 
         igfs.rename(file1, file2);
 
@@ -632,7 +632,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
         IgfsPath dir1 = new IgfsPath("/dir1");
         IgfsPath dir2 = new IgfsPath("/dir2");
 
-        create(igfs.asSecondary(), paths(dir1), null);
+        create(igfs, paths(dir1), null);
 
         igfs.rename(dir1, dir2);
 
@@ -661,7 +661,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
      * @throws Exception If failed.
      */
     public void testMoveFileDestinationRoot() throws Exception {
-        create(igfs.asSecondary(), paths(DIR, SUBDIR), paths(FILE));
+        create(igfs, paths(DIR, SUBDIR), paths(FILE));
 
         igfs.rename(FILE, new IgfsPath());
 
@@ -753,7 +753,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
      * @throws Exception If failed.
      */
     public void testMoveDirectoryDestinationRoot() throws Exception {
-        create(igfs.asSecondary(), paths(DIR, SUBDIR, SUBSUBDIR), null);
+        create(igfs, paths(DIR, SUBDIR, SUBSUBDIR), null);
 
         igfs.rename(SUBSUBDIR, new IgfsPath());
 
@@ -769,7 +769,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
     public void testMoveDirectorySourceParentRoot() throws Exception {
         IgfsPath dir = new IgfsPath("/" + SUBSUBDIR.name());
 
-        create(igfs.asSecondary(), paths(DIR_NEW, SUBDIR_NEW, dir), null);
+        create(igfs, paths(DIR_NEW, SUBDIR_NEW, dir), null);
 
         igfs.rename(dir, SUBDIR_NEW);
 
@@ -1163,7 +1163,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
     public void testOpen() throws Exception {
         create(igfs, paths(DIR, SUBDIR), null);
 
-        createFile(igfs.asSecondary(), FILE, true, chunk);
+        createFile(igfs, FILE, true, chunk);
 
         checkFileContent(igfs, FILE, chunk);
 
@@ -1200,7 +1200,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
      * @throws Exception If failed.
      */
     public void testSetTimes() throws Exception {
-        createFile(igfs.asSecondary(), FILE, true, chunk);
+        createFile(igfs, FILE, true, chunk);
 
         checkExist(igfs, igfsSecondary, DIR);
         checkExist(igfs, igfsSecondary, SUBDIR);
@@ -1312,7 +1312,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
     public void testCreate() throws Exception {
         create(igfs, paths(DIR, SUBDIR), null);
 
-        createFile(igfs.asSecondary(), FILE, true, chunk);
+        createFile(igfs, FILE, true, chunk);
 
         checkFile(igfs, igfsSecondary, FILE, chunk);
 
@@ -1396,7 +1396,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
     public void testCreateParentRoot() throws Exception {
         IgfsPath file = new IgfsPath("/" + FILE.name());
 
-        createFile(igfs.asSecondary(), file, true, chunk);
+        createFile(igfs, file, true, chunk);
 
         checkFile(igfs, igfsSecondary, file, chunk);
     }
@@ -1681,7 +1681,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
                         assert igfs.exists(path);
                     }
 
-                    awaitFileClose(igfs.asSecondary(), path);
+                    awaitFileClose(igfs, path);
 
                     checkFileContent(igfs, path, chunk);
                 }
@@ -1806,7 +1806,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
             } finally {
                 U.closeQuiet(os);
 
-                awaitFileClose(igfs.asSecondary(), path2);
+                awaitFileClose(igfs, path2);
             }
 
             try {
@@ -1816,7 +1816,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
             } finally {
                 U.closeQuiet(os);
 
-                awaitFileClose(igfs.asSecondary(), path2);
+                awaitFileClose(igfs, path2);
             }
 
             checkFile(igfs, igfsSecondary, path2, chunk, chunk);
@@ -1944,7 +1944,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
         if (appendSupported()) {
             create(igfs, paths(DIR, SUBDIR), null);
 
-            createFile(igfs.asSecondary(), FILE, false);
+            createFile(igfs, FILE, false);
 
             GridTestUtils.assertThrowsInherited(log(), new Callable<Object>() {
                 @Override
@@ -1978,7 +1978,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
         if (appendSupported()) {
             create(igfs, paths(DIR, SUBDIR), null);
 
-            createFile(igfs.asSecondary(), FILE, false);
+            createFile(igfs, FILE, false);
 
             IgfsOutputStream os = null;
 
@@ -2004,9 +2004,9 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
             return;
 
         if (appendSupported()) {
-            create(igfs.asSecondary(), paths(DIR, SUBDIR), null);
+            create(igfs, paths(DIR, SUBDIR), null);
 
-            createFile(igfs.asSecondary(), FILE, false);
+            createFile(igfs, FILE, false);
 
             IgfsOutputStream os = null;
 
@@ -2034,7 +2034,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
         if (appendSupported()) {
             create(igfs, paths(DIR, SUBDIR), null);
 
-            createFile(igfs.asSecondary(), FILE, false);
+            createFile(igfs, FILE, false);
 
             IgfsOutputStream os = null;
             IgniteUuid id = null;
@@ -2089,7 +2089,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
         if (appendSupported()) {
             create(igfs, paths(DIR, SUBDIR), null);
 
-            createFile(igfs.asSecondary(), FILE, false);
+            createFile(igfs, FILE, false);
 
             IgfsOutputStream os = null;
             IgniteUuid id = null;
@@ -2146,7 +2146,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
 
             create(igfs, paths(DIR, SUBDIR), null);
 
-            createFile(igfs.asSecondary(), FILE, false);
+            createFile(igfs, FILE, false);
 
             IgfsOutputStream os = null;
 
@@ -2176,7 +2176,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
             int threadCnt = 10;
 
             for (int i = 0; i < threadCnt; i++)
-                createFile(igfs.asSecondary(), new IgfsPath("/file" + i), false);
+                createFile(igfs, new IgfsPath("/file" + i), false);
 
             multithreaded(new Runnable() {
                 @Override
@@ -2200,7 +2200,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
                             assert igfs.exists(path);
                         }
 
-                        awaitFileClose(igfs.asSecondary(), path);
+                        awaitFileClose(igfs, path);
 
                         checkFileContent(igfs, path, chunks);
                     } catch (IOException | IgniteCheckedException e) {
@@ -2271,7 +2271,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
 
             fut.get();
 
-            awaitFileClose(igfs.asSecondary(), FILE);
+            awaitFileClose(igfs, FILE);
 
             if (err.get() != null) {
                 X.println("Test failed: rethrowing first error: " + err.get());
@@ -2952,20 +2952,8 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
      * @param files Files.
      * @throws Exception If failed.
      */
+    @SuppressWarnings("EmptyTryBlock")
     public static void create(IgfsImpl igfs, @Nullable IgfsPath[] dirs, @Nullable IgfsPath[] files) throws Exception {
-        create(igfs.asSecondary(), dirs, files);
-    }
-
-    /**
-     * Create the given directories and files in the given IGFS.
-     *
-     * @param igfs IGFS.
-     * @param dirs Directories.
-     * @param files Files.
-     * @throws Exception If failed.
-     */
-    public static void create(IgfsSecondaryFileSystem igfs, @Nullable IgfsPath[] dirs, @Nullable IgfsPath[] files)
-        throws Exception {
         if (dirs != null) {
             for (IgfsPath dir : dirs)
                 igfs.mkdirs(dir);
@@ -2973,9 +2961,11 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
 
         if (files != null) {
             for (IgfsPath file : files) {
-                OutputStream os = igfs.create(file, true);
+                try (OutputStream os = igfs.create(file, true)) {
+                    // No-op.
+                }
 
-                os.close();
+                igfs.await(file);
             }
         }
     }
@@ -3013,8 +3003,8 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
      * @param chunks Data chunks.
      * @throws IOException In case of IO exception.
      */
-    protected static void createFile(IgfsSecondaryFileSystem igfs, IgfsPath file, boolean overwrite,
-        @Nullable byte[]... chunks) throws IOException {
+    protected static void createFile(IgfsEx igfs, IgfsPath file, boolean overwrite, @Nullable byte[]... chunks)
+        throws IOException {
         OutputStream os = null;
 
         try {
@@ -3051,7 +3041,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
             IgfsEx igfsEx = uni.igfs();
 
             if (igfsEx != null)
-                awaitFileClose(igfsEx.asSecondary(), file);
+                awaitFileClose(igfsEx, file);
         }
     }
 
@@ -3077,7 +3067,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
         finally {
             U.closeQuiet(os);
 
-            awaitFileClose(igfs.asSecondary(), file);
+            awaitFileClose(igfs, file);
         }
     }
 
@@ -3101,7 +3091,7 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
         finally {
             U.closeQuiet(os);
 
-            awaitFileClose(igfs.asSecondary(), file);
+            awaitFileClose(igfs, file);
         }
     }
 
@@ -3135,6 +3125,16 @@ public abstract class IgfsAbstractSelfTest extends IgfsCommonAbstractTest {
     }
 
     /**
+     * Await for previously opened output stream to close.
+     *
+     * @param igfs IGFS.
+     * @param file File.
+     */
+    public static void awaitFileClose(@Nullable IgfsEx igfs, IgfsPath file) {
+        igfs.await(file);
+    }
+
+    /**
      * Ensure that the given paths exist in the given IGFSs.
      *
      * @param igfs First IGFS.

http://git-wip-us.apache.org/repos/asf/ignite/blob/7674f0cd/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsBackupFailoverSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsBackupFailoverSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsBackupFailoverSelfTest.java
index 5be9c09..187aeeb 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsBackupFailoverSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsBackupFailoverSelfTest.java
@@ -563,7 +563,7 @@ public class IgfsBackupFailoverSelfTest extends IgfsCommonAbstractTest {
 
             U.closeQuiet(ios);
 
-            awaitFileClose(igfs0.asSecondary(), filePath(fileIdx));
+            awaitFileClose(igfs0, filePath(fileIdx));
         }
     }
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/7674f0cd/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsDualAbstractSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsDualAbstractSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsDualAbstractSelfTest.java
index b4ca0ca..02027d6 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsDualAbstractSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsDualAbstractSelfTest.java
@@ -17,10 +17,8 @@
 
 package org.apache.ignite.internal.processors.igfs;
 
-import org.apache.ignite.IgniteCache;
 import org.apache.ignite.IgniteException;
 import org.apache.ignite.igfs.IgfsFile;
-import org.apache.ignite.igfs.IgfsInputStream;
 import org.apache.ignite.igfs.IgfsMode;
 import org.apache.ignite.igfs.IgfsPath;
 import org.apache.ignite.igfs.secondary.IgfsSecondaryFileSystem;
@@ -28,7 +26,6 @@ import org.apache.ignite.internal.IgniteInternalFuture;
 import org.apache.ignite.internal.util.typedef.T2;
 import org.apache.ignite.internal.util.typedef.internal.U;
 
-import java.io.OutputStream;
 import java.util.Collection;
 import java.util.Iterator;
 import java.util.Map;
@@ -1164,85 +1161,6 @@ public abstract class IgfsDualAbstractSelfTest extends IgfsAbstractSelfTest {
     }
 
     /**
-     * Ensure that prefetch occurs in case several blocks are read sequentially.
-     *
-     * @throws Exception If failed.
-     */
-    @SuppressWarnings("ResultOfMethodCallIgnored")
-    public void testOpenPrefetch() throws Exception {
-        create(igfsSecondary, paths(DIR, SUBDIR), paths(FILE));
-
-        // Write enough data to the secondary file system.
-        int blockSize0 = igfs.info(FILE).blockSize();
-        final int blockSize = blockSize0 != 0 ? blockSize0 : 8 * 1024;
-
-        int totalWritten = 0;
-        try (OutputStream out = igfsSecondary.openOutputStream(FILE.toString(), false)) {
-            while (totalWritten < blockSize * 2 + chunk.length) {
-                out.write(chunk);
-
-                totalWritten += chunk.length;
-            }
-        }
-
-        if (propertiesSupported())
-            awaitFileClose(igfsSecondaryFileSystem, FILE);
-        else
-            Thread.sleep(1000);
-
-        // Read the first two blocks.
-        int totalRead = 0;
-
-        IgfsInputStream in = igfs.open(FILE, blockSize);
-
-        final byte[] readBuf = new byte[1024];
-
-        while (totalRead + readBuf.length <= blockSize * 2) {
-            in.read(readBuf);
-
-            totalRead += readBuf.length;
-        }
-
-        // Wait for a while for prefetch to finish.
-        IgfsMetaManager meta = igfs.context().meta();
-
-        IgfsEntryInfo info = meta.info(meta.fileId(FILE));
-
-        assert info != null;
-
-        IgfsBlockKey key = new IgfsBlockKey(info.id(), info.affinityKey(), info.evictExclude(), 2);
-
-        IgniteCache<IgfsBlockKey, byte[]> dataCache = igfs.context().kernalContext().cache().jcache(
-            igfs.configuration().getDataCacheName());
-
-        for (int i = 0; i < 10; i++) {
-            if (dataCache.containsKey(key))
-                break;
-            else
-                U.sleep(100);
-        }
-
-        // Remove the file from the secondary file system.
-        igfsSecondary.delete(FILE.toString(), false);
-
-        // Let's wait for file will be deleted.
-        U.sleep(300);
-
-        // Read the third block.
-        totalRead = 0;
-
-        in.seek(blockSize * 2);
-
-        while (totalRead + readBuf.length <= blockSize) {
-            in.read(readBuf);
-
-            totalRead += readBuf.length;
-        }
-
-        in.close();
-    }
-
-    /**
      * Test create when parent directory is partially missing locally.
      *
      * @throws Exception If failed.
@@ -1251,7 +1169,7 @@ public abstract class IgfsDualAbstractSelfTest extends IgfsAbstractSelfTest {
         create(igfsSecondary, paths(DIR, SUBDIR), null);
         create(igfs, paths(DIR), null);
 
-        createFile(igfs.asSecondary(), FILE, true, chunk);
+        createFile(igfs, FILE, true, chunk);
 
         // Ensure that directory structure was created.
         checkExist(igfs, igfsSecondary, SUBDIR);
@@ -1287,7 +1205,7 @@ public abstract class IgfsDualAbstractSelfTest extends IgfsAbstractSelfTest {
         create(igfsSecondary, paths(DIR, SUBDIR), null);
         create(igfs, null, null);
 
-        createFile(igfs.asSecondary(), FILE, true, chunk);
+        createFile(igfs, FILE, true, chunk);
 
         checkExist(igfs, igfsSecondary, SUBDIR);
         checkFile(igfs, igfsSecondary, FILE, chunk);

http://git-wip-us.apache.org/repos/asf/ignite/blob/7674f0cd/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsMock.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsMock.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsMock.java
index a2bd9ca..0138907 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsMock.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsMock.java
@@ -376,6 +376,11 @@ public class IgfsMock implements IgfsEx {
     }
 
     /** {@inheritDoc} */
+    @Override public void await(IgfsPath... paths) {
+        throwUnsupported();
+    }
+
+    /** {@inheritDoc} */
     @Override public IgniteFileSystem withAsync() {
         throwUnsupported();
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/7674f0cd/modules/hadoop/src/test/java/org/apache/ignite/igfs/HadoopIgfsDualAbstractSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/test/java/org/apache/ignite/igfs/HadoopIgfsDualAbstractSelfTest.java b/modules/hadoop/src/test/java/org/apache/ignite/igfs/HadoopIgfsDualAbstractSelfTest.java
index 40cf493..bb155b4 100644
--- a/modules/hadoop/src/test/java/org/apache/ignite/igfs/HadoopIgfsDualAbstractSelfTest.java
+++ b/modules/hadoop/src/test/java/org/apache/ignite/igfs/HadoopIgfsDualAbstractSelfTest.java
@@ -252,7 +252,7 @@ public abstract class HadoopIgfsDualAbstractSelfTest extends IgfsCommonAbstractT
 
         out.close();
 
-        awaitFileClose(igfsSecondary.asSecondary(), FILE);
+        awaitFileClose(igfsSecondary, FILE);
 
         // Instantiate file system with overridden "seq reads before prefetch" property.
         Configuration cfg = new Configuration();