HADOOP-8587. HarFileSystem access of harMetaCache isn't threadsafe. Contributed by Eli Collins
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1360448 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
cdae6953e8
commit
4c13b6f34e
@ -331,6 +331,8 @@ Branch-2 ( Unreleased changes )
|
|||||||
HADOOP-3886. Error in javadoc of Reporter, Mapper and Progressable
|
HADOOP-3886. Error in javadoc of Reporter, Mapper and Progressable
|
||||||
(Jingguo Yao via harsh)
|
(Jingguo Yao via harsh)
|
||||||
|
|
||||||
|
HADOOP-8587. HarFileSystem access of harMetaCache isn't threadsafe. (eli)
|
||||||
|
|
||||||
BREAKDOWN OF HDFS-3042 SUBTASKS
|
BREAKDOWN OF HDFS-3042 SUBTASKS
|
||||||
|
|
||||||
HADOOP-8220. ZKFailoverController doesn't handle failure to become active
|
HADOOP-8220. ZKFailoverController doesn't handle failure to become active
|
||||||
|
@ -24,11 +24,11 @@
|
|||||||
import java.net.URISyntaxException;
|
import java.net.URISyntaxException;
|
||||||
import java.net.URLDecoder;
|
import java.net.URLDecoder;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.EnumSet;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.TreeMap;
|
import java.util.TreeMap;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
|
||||||
import org.apache.hadoop.conf.Configuration;
|
import org.apache.hadoop.conf.Configuration;
|
||||||
import org.apache.hadoop.fs.permission.FsPermission;
|
import org.apache.hadoop.fs.permission.FsPermission;
|
||||||
@ -52,7 +52,8 @@
|
|||||||
public class HarFileSystem extends FilterFileSystem {
|
public class HarFileSystem extends FilterFileSystem {
|
||||||
public static final int VERSION = 3;
|
public static final int VERSION = 3;
|
||||||
|
|
||||||
private static final Map<URI, HarMetaData> harMetaCache = new HashMap<URI, HarMetaData>();
|
private static final Map<URI, HarMetaData> harMetaCache =
|
||||||
|
new ConcurrentHashMap<URI, HarMetaData>();
|
||||||
|
|
||||||
// uri representation of this Har filesystem
|
// uri representation of this Har filesystem
|
||||||
private URI uri;
|
private URI uri;
|
||||||
@ -1055,7 +1056,7 @@ private void parseMetaData() throws IOException {
|
|||||||
FileStatus archiveStat = fs.getFileStatus(archiveIndexPath);
|
FileStatus archiveStat = fs.getFileStatus(archiveIndexPath);
|
||||||
archiveIndexTimestamp = archiveStat.getModificationTime();
|
archiveIndexTimestamp = archiveStat.getModificationTime();
|
||||||
LineReader aLin;
|
LineReader aLin;
|
||||||
String retStr = null;
|
|
||||||
// now start reading the real index file
|
// now start reading the real index file
|
||||||
for (Store s: stores) {
|
for (Store s: stores) {
|
||||||
read = 0;
|
read = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user