in src/main/java/com/netflix/bdp/s3mper/listing/ConsistentListingAspect.java [401:422]
private List<Path> checkListing(List<FileInfo> metastoreListing, FileStatus [] s3Listing) {
Map<String, FileStatus> s3paths = new HashMap<String, FileStatus>();
if(s3Listing != null) {
for (FileStatus fileStatus : s3Listing) {
s3paths.put(fileStatus.getPath().toUri().normalize().getSchemeSpecificPart(), fileStatus);
}
}
List<Path> missingPaths = new ArrayList<Path>();
for (FileInfo f : metastoreListing) {
if(f.isDeleted()) {
continue;
}
if (!s3paths.containsKey(f.getPath().toUri().normalize().getSchemeSpecificPart())) {
missingPaths.add(f.getPath());
}
}
return missingPaths;
}