mirror of https://github.com/apache/lucene.git
SOLR-10929: Removed unused 'valType' option from ExternalFileField
This commit is contained in:
parent
8e9d685a40
commit
1737fce5df
|
@ -108,6 +108,9 @@ Upgrading from Solr 6.x
|
|||
* The default for eDismax parameter 'lowercaseOperators' now depends on the luceneMatchVersion setting in solrconfig.
|
||||
It remains 'true' for luceneMatchVersion < 7.0.0 and changes to 'false' from 7.0.0. See also SOLR-4646
|
||||
|
||||
* The unused 'valType' option has been removed from ExternalFileField, if you have this in your schema you
|
||||
can safely remove it. see SOLR-10929 for more details.
|
||||
|
||||
New Features
|
||||
----------------------
|
||||
* SOLR-9857, SOLR-9858: Collect aggregated metrics from nodes and shard leaders in overseer. (ab)
|
||||
|
@ -300,6 +303,9 @@ Other Changes
|
|||
|
||||
* SOLR-8256: Set legacyCloud=false as default (Cao Manh Dat)
|
||||
|
||||
* SOLR-10929: Removed unused 'valType' option from ExternalFileField (hossman)
|
||||
|
||||
|
||||
================== 6.7.0 ==================
|
||||
|
||||
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
|
||||
|
|
|
@ -22,7 +22,6 @@ import java.util.Map;
|
|||
import org.apache.lucene.index.IndexableField;
|
||||
import org.apache.lucene.queries.function.ValueSource;
|
||||
import org.apache.lucene.search.SortField;
|
||||
import org.apache.solr.common.SolrException;
|
||||
import org.apache.solr.response.TextResponseWriter;
|
||||
import org.apache.solr.search.QParser;
|
||||
import org.apache.solr.search.function.FileFloatSource;
|
||||
|
@ -35,9 +34,6 @@ import org.apache.solr.uninverting.UninvertingReader.Type;
|
|||
* <li>It's OK to have some documents without a keyField in the file (defVal is used as the default)</li>
|
||||
* <li>It's OK for a keyField value to point to multiple documents (no uniqueness requirement)</li>
|
||||
* </ul>
|
||||
* <code>valType</code> is a reference to another fieldType to define the value type of this field
|
||||
* (must currently be TrieFloatField or LegacyFloatField (valType="pfloat|float|tfloat") if used).
|
||||
* This parameter has never been implemented. As of Solr 3.6/4.0 it is optional and can be omitted.
|
||||
*
|
||||
* The format of the external file is simply newline separated keyFieldValue=floatValue.
|
||||
* <br>Example:
|
||||
|
@ -65,16 +61,6 @@ public class ExternalFileField extends FieldType implements SchemaAware {
|
|||
@Override
|
||||
protected void init(IndexSchema schema, Map<String, String> args) {
|
||||
restrictProps(SORT_MISSING_FIRST | SORT_MISSING_LAST);
|
||||
// valType has never been used for anything except to throw an error, so make it optional since the
|
||||
// code (see getValueSource) gives you a FileFloatSource.
|
||||
String ftypeS = args.remove("valType");
|
||||
if (ftypeS != null) {
|
||||
ftype = schema.getFieldTypes().get(ftypeS);
|
||||
if (ftype != null && !(ftype instanceof TrieFloatField)) {
|
||||
throw new SolrException(SolrException.ErrorCode.SERVER_ERROR,
|
||||
"Only float (TrieFloatField) is currently supported as external field type. Got " + ftypeS);
|
||||
}
|
||||
}
|
||||
keyFieldName = args.remove("keyField");
|
||||
String defValS = args.remove("defVal");
|
||||
defVal = defValS == null ? 0 : Float.parseFloat(defValS);
|
||||
|
|
|
@ -1,25 +0,0 @@
|
|||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<schema name="bad-schema-external-filefield" version="1.0">
|
||||
<fieldType name="tint" class="solr.TrieIntField" omitNorms="true" positionIncrementGap="0"/>
|
||||
|
||||
<fieldType name="eff_none" keyField="id" defVal="0"
|
||||
stored="false" indexed="true"
|
||||
class="solr.ExternalFileField" valType="tint"/>
|
||||
|
||||
</schema>
|
|
@ -253,9 +253,7 @@
|
|||
-->
|
||||
<fieldType name="ignored" stored="false" indexed="false" class="solr.StrField"/>
|
||||
|
||||
<fieldType name="file" keyField="id" defVal="1" stored="false" indexed="false" class="solr.ExternalFileField"
|
||||
valType="float"/>
|
||||
|
||||
<fieldType name="file" keyField="id" defVal="1" stored="false" indexed="false" class="solr.ExternalFileField" />
|
||||
|
||||
<!-- Valid attributes for fields:
|
||||
name: mandatory - the name for the field
|
||||
|
|
|
@ -245,9 +245,9 @@
|
|||
-->
|
||||
<fieldType name="ignored" stored="false" indexed="false" class="solr.StrField" />
|
||||
|
||||
<fieldType name="file" keyField="id" defVal="1" stored="false" indexed="false" class="solr.ExternalFileField" valType="float"/>
|
||||
<fieldType name="file" keyField="id" defVal="1" stored="false" indexed="false" class="solr.ExternalFileField" />
|
||||
|
||||
<fieldType name="sfile" keyField="sfile_s" defVal="1" stored="false" indexed="false" class="solr.ExternalFileField" valType="float"/>
|
||||
<fieldType name="sfile" keyField="sfile_s" defVal="1" stored="false" indexed="false" class="solr.ExternalFileField" />
|
||||
|
||||
|
||||
<fieldType name="tint" class="solr.TrieIntField" omitNorms="true" positionIncrementGap="0"/>
|
||||
|
@ -275,17 +275,7 @@
|
|||
valued. -->
|
||||
<fieldType name="location" class="solr.LatLonType" subFieldSuffix="_coordinate"/>
|
||||
|
||||
<!-- These should pass right through and insure that we can declare external field types -->
|
||||
<fieldType name="eff_float" keyField="id" defVal="0"
|
||||
stored="false" indexed="true"
|
||||
class="solr.ExternalFileField" valType="float"/>
|
||||
|
||||
<fieldType name="eff_tfloat" keyField="eff_ti" defVal="0"
|
||||
stored="false" indexed="true"
|
||||
class="solr.ExternalFileField" valType="tfloat"/>
|
||||
|
||||
<!-- Be sure that the valType can be optional Since valType has done nothing up until now, this is preferred -->
|
||||
<fieldType name="eff_none" keyField="id" defVal="0"
|
||||
stored="false" indexed="true"
|
||||
class="solr.ExternalFileField" />
|
||||
|
||||
|
|
|
@ -53,11 +53,6 @@ public class BadIndexSchemaTest extends AbstractBadConfigTestBase {
|
|||
doTest("bad-schema-analyzer-class-and-nested.xml", "bad_type");
|
||||
}
|
||||
|
||||
public void testBadExternalFileField() throws Exception {
|
||||
doTest("bad-schema-external-filefield.xml",
|
||||
"Only float (TrieFloatField) is currently supported as external field type.");
|
||||
}
|
||||
|
||||
public void testUniqueKeyRules() throws Exception {
|
||||
doTest("bad-schema-uniquekey-is-copyfield-dest.xml",
|
||||
"can not be the dest of a copyField");
|
||||
|
|
Loading…
Reference in New Issue