diff options
author | Jacques Nadeau <jacques@apache.org> | 2015-07-28 15:29:32 -0700 |
---|---|---|
committer | Parth Chandra <parthc@apache.org> | 2016-11-01 10:42:21 -0700 |
commit | 818f94507b9d1792282a4bb8abd2d22d2fc2eb57 (patch) | |
tree | 2d0268b057be813d80666b9958fcb9945c5a07ef /exec/java-exec/src/main/java/org/apache/drill/exec/store/dfs/easy/EasyFormatPlugin.java | |
parent | 1e6fa00cd4b0b1db41614749f6d12c03f0ca7990 (diff) |
DRILL-3423: Initial HTTPD log plugin. Needs tests. Would be good to improve the timestamp and cookies behaviors since we can make those more type specific.
Diffstat (limited to 'exec/java-exec/src/main/java/org/apache/drill/exec/store/dfs/easy/EasyFormatPlugin.java')
-rw-r--r-- | exec/java-exec/src/main/java/org/apache/drill/exec/store/dfs/easy/EasyFormatPlugin.java | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/store/dfs/easy/EasyFormatPlugin.java b/exec/java-exec/src/main/java/org/apache/drill/exec/store/dfs/easy/EasyFormatPlugin.java index f95a323be..c7f9cf8e9 100644 --- a/exec/java-exec/src/main/java/org/apache/drill/exec/store/dfs/easy/EasyFormatPlugin.java +++ b/exec/java-exec/src/main/java/org/apache/drill/exec/store/dfs/easy/EasyFormatPlugin.java @@ -52,11 +52,14 @@ import org.apache.drill.exec.store.dfs.FormatMatcher; import org.apache.drill.exec.store.dfs.FormatPlugin; import org.apache.drill.exec.store.schedule.CompleteFileWork; import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.fs.Path; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Lists; public abstract class EasyFormatPlugin<T extends FormatPluginConfig> implements FormatPlugin { + + @SuppressWarnings("unused") private static final org.slf4j.Logger logger = org.slf4j.LoggerFactory.getLogger(EasyFormatPlugin.class); private final BasicFormatMatcher matcher; @@ -66,7 +69,7 @@ public abstract class EasyFormatPlugin<T extends FormatPluginConfig> implements private final boolean blockSplittable; private final Configuration fsConf; private final StoragePluginConfig storageConfig; - protected final FormatPluginConfig formatConfig; + protected final T formatConfig; private final String name; private final boolean compressible; @@ -129,7 +132,7 @@ public abstract class EasyFormatPlugin<T extends FormatPluginConfig> implements scan = new EasySubScan(scan.getUserName(), scan.getWorkUnits(), scan.getFormatPlugin(), columnExplorer.getTableColumns(), scan.getSelectionRoot()); scan.setOperatorId(scan.getOperatorId()); - } + } OperatorContext oContext = context.newOperatorContext(scan); final DrillFileSystem dfs; @@ -142,21 +145,21 @@ public abstract class EasyFormatPlugin<T extends FormatPluginConfig> implements List<RecordReader> readers = Lists.newArrayList(); List<Map<String, String>> implicitColumns = Lists.newArrayList(); Map<String, String> mapWithMaxColumns = Maps.newLinkedHashMap(); - for(FileWork work : scan.getWorkUnits()) { + for(FileWork work : scan.getWorkUnits()){ RecordReader recordReader = getRecordReader(context, dfs, work, scan.getColumns(), scan.getUserName()); readers.add(recordReader); Map<String, String> implicitValues = columnExplorer.populateImplicitColumns(work, scan.getSelectionRoot()); implicitColumns.add(implicitValues); if (implicitValues.size() > mapWithMaxColumns.size()) { mapWithMaxColumns = implicitValues; + } } - } // all readers should have the same number of implicit columns, add missing ones with value null Map<String, String> diff = Maps.transformValues(mapWithMaxColumns, Functions.constant((String) null)); for (Map<String, String> map : implicitColumns) { map.putAll(Maps.difference(map, diff).entriesOnlyOnRight()); - } + } return new ScanBatch(scan, context, oContext, readers.iterator(), implicitColumns); } @@ -194,7 +197,7 @@ public abstract class EasyFormatPlugin<T extends FormatPluginConfig> implements } @Override - public FormatPluginConfig getConfig() { + public T getConfig() { return formatConfig; } |