mirror of https://github.com/apache/druid.git
fix DruidSetup not working
This commit is contained in:
parent
d826537672
commit
54c48aac6d
|
@ -20,6 +20,7 @@
|
|||
package com.metamx.druid.coordination;
|
||||
|
||||
import com.google.common.base.Function;
|
||||
import com.google.common.base.Predicates;
|
||||
import com.google.common.collect.Ordering;
|
||||
import com.metamx.common.ISE;
|
||||
import com.metamx.common.guava.FunctionalIterable;
|
||||
|
@ -254,7 +255,8 @@ public class ServerManager implements QuerySegmentWalker
|
|||
);
|
||||
}
|
||||
}
|
||||
);
|
||||
)
|
||||
.filter(Predicates.<QueryRunner<T>>notNull());
|
||||
}
|
||||
}
|
||||
);
|
||||
|
|
|
@ -144,6 +144,10 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
|
||||
final Interval dataInterval = new Interval(getMinTime().getMillis(), gran.next(getMaxTime().getMillis()));
|
||||
|
||||
if (!actualInterval.overlaps(dataInterval)) {
|
||||
return ImmutableList.of();
|
||||
}
|
||||
|
||||
if (actualInterval.getStart().isBefore(dataInterval.getStart())) {
|
||||
actualInterval = actualInterval.withStart(dataInterval.getStart());
|
||||
}
|
||||
|
@ -260,7 +264,7 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
|
||||
final Map<String, GenericColumn> genericColumnCache = Maps.newHashMap();
|
||||
final Map<String, ComplexColumn> complexColumnCache = Maps.newHashMap();
|
||||
final Map<String, Object> objectColumnCache = Maps.newHashMap();
|
||||
final Map<String, Object> objectColumnCache = Maps.newHashMap();
|
||||
|
||||
final GenericColumn timestamps = index.getTimeColumn().getGenericColumn();
|
||||
|
||||
|
@ -352,8 +356,7 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
return column.lookupId(name);
|
||||
}
|
||||
};
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
return new DimensionSelector()
|
||||
{
|
||||
@Override
|
||||
|
@ -412,8 +415,8 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
if (cachedMetricVals == null) {
|
||||
Column holder = index.getColumn(metricName);
|
||||
if (holder != null && holder.getCapabilities().getType() == ValueType.FLOAT) {
|
||||
cachedMetricVals = holder.getGenericColumn();
|
||||
genericColumnCache.put(metricName, cachedMetricVals);
|
||||
cachedMetricVals = holder.getGenericColumn();
|
||||
genericColumnCache.put(metricName, cachedMetricVals);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -484,27 +487,25 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
if (cachedColumnVals == null) {
|
||||
Column holder = index.getColumn(columnName);
|
||||
|
||||
if(holder != null) {
|
||||
if (holder != null) {
|
||||
final ColumnCapabilities capabilities = holder.getCapabilities();
|
||||
|
||||
if(capabilities.hasMultipleValues()) {
|
||||
if (capabilities.hasMultipleValues()) {
|
||||
throw new UnsupportedOperationException(
|
||||
"makeObjectColumnSelector does not support multivalued columns"
|
||||
"makeObjectColumnSelector does not support multivalued columns"
|
||||
);
|
||||
}
|
||||
|
||||
if(capabilities.isDictionaryEncoded()) {
|
||||
if (capabilities.isDictionaryEncoded()) {
|
||||
cachedColumnVals = holder.getDictionaryEncoding();
|
||||
}
|
||||
else if(capabilities.getType() == ValueType.COMPLEX) {
|
||||
} else if (capabilities.getType() == ValueType.COMPLEX) {
|
||||
cachedColumnVals = holder.getComplexColumn();
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
cachedColumnVals = holder.getGenericColumn();
|
||||
}
|
||||
}
|
||||
|
||||
if(cachedColumnVals != null) {
|
||||
if (cachedColumnVals != null) {
|
||||
objectColumnCache.put(columnName, cachedColumnVals);
|
||||
}
|
||||
}
|
||||
|
@ -513,11 +514,11 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
return null;
|
||||
}
|
||||
|
||||
if(cachedColumnVals instanceof GenericColumn) {
|
||||
if (cachedColumnVals instanceof GenericColumn) {
|
||||
final GenericColumn columnVals = (GenericColumn) cachedColumnVals;
|
||||
final ValueType type = columnVals.getType();
|
||||
|
||||
if(type == ValueType.FLOAT) {
|
||||
if (type == ValueType.FLOAT) {
|
||||
return new ObjectColumnSelector<Float>()
|
||||
{
|
||||
@Override
|
||||
|
@ -533,7 +534,7 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
}
|
||||
};
|
||||
}
|
||||
if(type == ValueType.LONG) {
|
||||
if (type == ValueType.LONG) {
|
||||
return new ObjectColumnSelector<Long>()
|
||||
{
|
||||
@Override
|
||||
|
@ -549,7 +550,7 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
}
|
||||
};
|
||||
}
|
||||
if(type == ValueType.STRING) {
|
||||
if (type == ValueType.STRING) {
|
||||
return new ObjectColumnSelector<String>()
|
||||
{
|
||||
@Override
|
||||
|
@ -585,7 +586,7 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
};
|
||||
}
|
||||
|
||||
final ComplexColumn columnVals = (ComplexColumn)cachedColumnVals;
|
||||
final ComplexColumn columnVals = (ComplexColumn) cachedColumnVals;
|
||||
return new ObjectColumnSelector()
|
||||
{
|
||||
@Override
|
||||
|
@ -623,8 +624,8 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
Closeables.closeQuietly(complexColumn);
|
||||
}
|
||||
for (Object column : complexColumnCache.values()) {
|
||||
if(column instanceof Closeable) {
|
||||
Closeables.closeQuietly((Closeable)column);
|
||||
if (column instanceof Closeable) {
|
||||
Closeables.closeQuietly((Closeable) column);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -791,8 +792,7 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
return column.lookupId(name);
|
||||
}
|
||||
};
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
return new DimensionSelector()
|
||||
{
|
||||
@Override
|
||||
|
@ -851,8 +851,8 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
if (cachedMetricVals == null) {
|
||||
Column holder = index.getColumn(metricName);
|
||||
if (holder != null && holder.getCapabilities().getType() == ValueType.FLOAT) {
|
||||
cachedMetricVals = holder.getGenericColumn();
|
||||
genericColumnCache.put(metricName, cachedMetricVals);
|
||||
cachedMetricVals = holder.getGenericColumn();
|
||||
genericColumnCache.put(metricName, cachedMetricVals);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -923,26 +923,24 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
if (cachedColumnVals == null) {
|
||||
Column holder = index.getColumn(columnName);
|
||||
|
||||
if(holder != null) {
|
||||
if(holder.getCapabilities().hasMultipleValues()) {
|
||||
if (holder != null) {
|
||||
if (holder.getCapabilities().hasMultipleValues()) {
|
||||
throw new UnsupportedOperationException(
|
||||
"makeObjectColumnSelector does not support multivalued columns"
|
||||
"makeObjectColumnSelector does not support multivalued columns"
|
||||
);
|
||||
}
|
||||
final ValueType type = holder.getCapabilities().getType();
|
||||
|
||||
if(holder.getCapabilities().isDictionaryEncoded()) {
|
||||
if (holder.getCapabilities().isDictionaryEncoded()) {
|
||||
cachedColumnVals = holder.getDictionaryEncoding();
|
||||
}
|
||||
else if(type == ValueType.COMPLEX) {
|
||||
} else if (type == ValueType.COMPLEX) {
|
||||
cachedColumnVals = holder.getComplexColumn();
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
cachedColumnVals = holder.getGenericColumn();
|
||||
}
|
||||
}
|
||||
|
||||
if(cachedColumnVals != null) {
|
||||
if (cachedColumnVals != null) {
|
||||
objectColumnCache.put(columnName, cachedColumnVals);
|
||||
}
|
||||
}
|
||||
|
@ -951,11 +949,11 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
return null;
|
||||
}
|
||||
|
||||
if(cachedColumnVals instanceof GenericColumn) {
|
||||
if (cachedColumnVals instanceof GenericColumn) {
|
||||
final GenericColumn columnVals = (GenericColumn) cachedColumnVals;
|
||||
final ValueType type = columnVals.getType();
|
||||
|
||||
if(type == ValueType.FLOAT) {
|
||||
if (type == ValueType.FLOAT) {
|
||||
return new ObjectColumnSelector<Float>()
|
||||
{
|
||||
@Override
|
||||
|
@ -971,7 +969,7 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
}
|
||||
};
|
||||
}
|
||||
if(type == ValueType.LONG) {
|
||||
if (type == ValueType.LONG) {
|
||||
return new ObjectColumnSelector<Long>()
|
||||
{
|
||||
@Override
|
||||
|
@ -987,7 +985,7 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
}
|
||||
};
|
||||
}
|
||||
if(type == ValueType.STRING) {
|
||||
if (type == ValueType.STRING) {
|
||||
return new ObjectColumnSelector<String>()
|
||||
{
|
||||
@Override
|
||||
|
@ -1023,7 +1021,7 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
};
|
||||
}
|
||||
|
||||
final ComplexColumn columnVals = (ComplexColumn)cachedColumnVals;
|
||||
final ComplexColumn columnVals = (ComplexColumn) cachedColumnVals;
|
||||
return new ObjectColumnSelector()
|
||||
{
|
||||
@Override
|
||||
|
@ -1059,7 +1057,9 @@ public class QueryableIndexStorageAdapter extends BaseStorageAdapter
|
|||
Closeables.closeQuietly(complexColumn);
|
||||
}
|
||||
for (Object column : objectColumnCache.values()) {
|
||||
if(column instanceof Closeable) Closeables.closeQuietly((Closeable)column);
|
||||
if (column instanceof Closeable) {
|
||||
Closeables.closeQuietly((Closeable) column);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -103,11 +103,13 @@ public class DruidSetup
|
|||
if ("dump".equals(cmd) && args.length == 3) {
|
||||
final String zkConnect = args[1];
|
||||
curator = connectToZK(zkConnect);
|
||||
curator.start();
|
||||
String zpathBase = args[2];
|
||||
dumpFromZk(curator, zkConnect, zpathBase, System.out);
|
||||
} else if ("put".equals(cmd) && args.length == 3) {
|
||||
final String zkConnect = args[1];
|
||||
curator = connectToZK(zkConnect);
|
||||
curator.start();
|
||||
final String pfile = args[2];
|
||||
putToZk(curator, pfile);
|
||||
} else {
|
||||
|
|
Loading…
Reference in New Issue