|
@@ -30,6 +30,8 @@ import org.apache.lucene.search.TermQuery;
|
|
import org.apache.lucene.util.BytesRef;
|
|
import org.apache.lucene.util.BytesRef;
|
|
import org.elasticsearch.Version;
|
|
import org.elasticsearch.Version;
|
|
import org.elasticsearch.common.Nullable;
|
|
import org.elasticsearch.common.Nullable;
|
|
|
|
+import org.elasticsearch.common.logging.ESLogger;
|
|
|
|
+import org.elasticsearch.common.logging.ESLoggerFactory;
|
|
import org.elasticsearch.common.lucene.BytesRefs;
|
|
import org.elasticsearch.common.lucene.BytesRefs;
|
|
import org.elasticsearch.common.lucene.Lucene;
|
|
import org.elasticsearch.common.lucene.Lucene;
|
|
import org.elasticsearch.common.settings.Settings;
|
|
import org.elasticsearch.common.settings.Settings;
|
|
@@ -86,7 +88,7 @@ public class TypeFieldMapper extends MetadataFieldMapper {
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public TypeFieldMapper build(BuilderContext context) {
|
|
public TypeFieldMapper build(BuilderContext context) {
|
|
- fieldType.setNames(new MappedFieldType.Names(indexName, indexName, name));
|
|
|
|
|
|
+ fieldType.setNames(buildNames(context));
|
|
return new TypeFieldMapper(fieldType, context.indexSettings());
|
|
return new TypeFieldMapper(fieldType, context.indexSettings());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -146,12 +148,21 @@ public class TypeFieldMapper extends MetadataFieldMapper {
|
|
}
|
|
}
|
|
|
|
|
|
public TypeFieldMapper(Settings indexSettings, MappedFieldType existing) {
|
|
public TypeFieldMapper(Settings indexSettings, MappedFieldType existing) {
|
|
- this(existing == null ? Defaults.FIELD_TYPE.clone() : existing.clone(),
|
|
|
|
|
|
+ this(existing == null ? defaultFieldType(indexSettings) : existing.clone(),
|
|
indexSettings);
|
|
indexSettings);
|
|
}
|
|
}
|
|
|
|
|
|
public TypeFieldMapper(MappedFieldType fieldType, Settings indexSettings) {
|
|
public TypeFieldMapper(MappedFieldType fieldType, Settings indexSettings) {
|
|
- super(NAME, fieldType, Defaults.FIELD_TYPE, indexSettings);
|
|
|
|
|
|
+ super(NAME, fieldType, defaultFieldType(indexSettings), indexSettings);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ private static MappedFieldType defaultFieldType(Settings indexSettings) {
|
|
|
|
+ MappedFieldType defaultFieldType = Defaults.FIELD_TYPE.clone();
|
|
|
|
+ Version indexCreated = Version.indexCreated(indexSettings);
|
|
|
|
+ if (indexCreated.onOrAfter(Version.V_2_1_0)) {
|
|
|
|
+ defaultFieldType.setHasDocValues(true);
|
|
|
|
+ }
|
|
|
|
+ return defaultFieldType;
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|