Revert "HADOOP-17306. RawLocalFileSystem's lastModifiedTime() looses milli seconds in JDK < 10.b09 (#2387)"
This reverts commit e21b81276e
.
This commit is contained in:
parent
cfa0986d00
commit
41d58d190d
@ -72,12 +72,7 @@ public class RawLocalFileSystem extends FileSystem {
|
|||||||
public static void useStatIfAvailable() {
|
public static void useStatIfAvailable() {
|
||||||
useDeprecatedFileStatus = !Stat.isAvailable();
|
useDeprecatedFileStatus = !Stat.isAvailable();
|
||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
|
||||||
static void setUseDeprecatedFileStatus(boolean useDeprecatedFileStatus) {
|
|
||||||
RawLocalFileSystem.useDeprecatedFileStatus = useDeprecatedFileStatus;
|
|
||||||
}
|
|
||||||
|
|
||||||
public RawLocalFileSystem() {
|
public RawLocalFileSystem() {
|
||||||
workingDir = getInitialWorkingDirectory();
|
workingDir = getInitialWorkingDirectory();
|
||||||
}
|
}
|
||||||
@ -705,8 +700,8 @@ private static long getLastAccessTime(File f) throws IOException {
|
|||||||
DeprecatedRawLocalFileStatus(File f, long defaultBlockSize, FileSystem fs)
|
DeprecatedRawLocalFileStatus(File f, long defaultBlockSize, FileSystem fs)
|
||||||
throws IOException {
|
throws IOException {
|
||||||
super(f.length(), f.isDirectory(), 1, defaultBlockSize,
|
super(f.length(), f.isDirectory(), 1, defaultBlockSize,
|
||||||
Files.getLastModifiedTime(f.toPath()).toMillis(),
|
f.lastModified(), getLastAccessTime(f),
|
||||||
getLastAccessTime(f),null, null, null,
|
null, null, null,
|
||||||
new Path(f.getPath()).makeQualified(fs.getUri(),
|
new Path(f.getPath()).makeQualified(fs.getUri(),
|
||||||
fs.getWorkingDirectory()));
|
fs.getWorkingDirectory()));
|
||||||
}
|
}
|
||||||
|
@ -203,28 +203,4 @@ public void testPermission() throws Exception {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testMTimeAtime() throws IOException {
|
|
||||||
RawLocalFileSystem.setUseDeprecatedFileStatus(true);
|
|
||||||
try {
|
|
||||||
Path testDir = getTestBaseDir();
|
|
||||||
String testFilename = "testmtime";
|
|
||||||
Path path = new Path(testDir, testFilename);
|
|
||||||
Path file = new Path(path, "file");
|
|
||||||
fs.create(file);
|
|
||||||
long now = System.currentTimeMillis();
|
|
||||||
long mtime = (now % 1000 == 0) ? now + 1 : now;
|
|
||||||
long atime = (now % 1000 == 0) ? now + 2 : now;
|
|
||||||
fs.setTimes(file, mtime, atime);
|
|
||||||
FileStatus fileStatus = fs.getFileStatus(file);
|
|
||||||
if (!Shell.MAC) {
|
|
||||||
// HADOOP-17306 ; Skip MacOS because HFS+ does not support
|
|
||||||
// milliseconds for mtime.
|
|
||||||
assertEquals(mtime, fileStatus.getModificationTime());
|
|
||||||
}
|
|
||||||
assertEquals(atime, fileStatus.getAccessTime());
|
|
||||||
} finally {
|
|
||||||
RawLocalFileSystem.useStatIfAvailable();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user