private MapJoinTableContainer load(FileSystem fs, Path path,
MapJoinTableContainerSerDe mapJoinTableSerde) throws HiveException {
LOG.info("\tLoad back all hashtable files from tmp folder uri:" + path);
if (!SparkUtilities.isDedicatedCluster(hconf)) {
return useFastContainer ? mapJoinTableSerde.loadFastContainer(desc, fs, path, hconf) :
mapJoinTableSerde.load(fs, path, hconf);
}
MapJoinTableContainer mapJoinTable = SmallTableCache.get(path);
if (mapJoinTable == null) {
synchronized (path.toString().intern()) {
mapJoinTable = SmallTableCache.get(path);
if (mapJoinTable == null) {
mapJoinTable = useFastContainer ?
mapJoinTableSerde.loadFastContainer(desc, fs, path, hconf) :
mapJoinTableSerde.load(fs, path, hconf);
SmallTableCache.cache(path, mapJoinTable);
}
}
}
return mapJoinTable;
}