mirror of https://github.com/apache/lucene.git
SOLR-7799: Added includeIndexFieldFlags to /admin/luke
git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1693935 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
12fb9eda87
commit
2255cd3e54
|
@ -176,6 +176,9 @@ New Features
|
|||
|
||||
* SOLR-5882: score local parameter for block join query parser {!parent} (Andrey Kudryavtsev, Mikhail Khludnev)
|
||||
|
||||
* SOLR-7799: Added includeIndexFieldFlags (backwards compatible default is true) to /admin/luke.
|
||||
When there are many fields in the index, setting this flag to false can dramatically speed up requests. (ehatcher)
|
||||
|
||||
Bug Fixes
|
||||
----------------------
|
||||
|
||||
|
|
|
@ -98,6 +98,7 @@ public class LukeRequestHandler extends RequestHandlerBase
|
|||
private static Logger log = LoggerFactory.getLogger(LukeRequestHandler.class);
|
||||
|
||||
public static final String NUMTERMS = "numTerms";
|
||||
public static final String INCLUDE_INDEX_FIELD_FLAGS = "includeIndexFieldFlags";
|
||||
public static final String DOC_ID = "docId";
|
||||
public static final String ID = "id";
|
||||
public static final int DEFAULT_COUNT = 10;
|
||||
|
@ -372,29 +373,25 @@ public class LukeRequestHandler extends RequestHandlerBase
|
|||
}
|
||||
|
||||
if(sfield != null && sfield.indexed() ) {
|
||||
// In the pre-4.0 days, this did a veeeery expensive range query. But we can be much faster now,
|
||||
// so just do this all the time.
|
||||
StoredDocument doc = getFirstLiveDoc(terms, reader);
|
||||
if (params.getBool(INCLUDE_INDEX_FIELD_FLAGS,true)) {
|
||||
StoredDocument doc = getFirstLiveDoc(terms, reader);
|
||||
|
||||
|
||||
if( doc != null ) {
|
||||
// Found a document with this field
|
||||
try {
|
||||
StorableField fld = doc.getField( fieldName );
|
||||
if( fld != null ) {
|
||||
fieldMap.add("index", getFieldFlags(fld));
|
||||
}
|
||||
else {
|
||||
// it is a non-stored field...
|
||||
fieldMap.add("index", "(unstored field)");
|
||||
if (doc != null) {
|
||||
// Found a document with this field
|
||||
try {
|
||||
StorableField fld = doc.getField(fieldName);
|
||||
if (fld != null) {
|
||||
fieldMap.add("index", getFieldFlags(fld));
|
||||
} else {
|
||||
// it is a non-stored field...
|
||||
fieldMap.add("index", "(unstored field)");
|
||||
}
|
||||
} catch (Exception ex) {
|
||||
log.warn("error reading field: " + fieldName);
|
||||
}
|
||||
}
|
||||
catch( Exception ex ) {
|
||||
log.warn( "error reading field: "+fieldName );
|
||||
}
|
||||
fieldMap.add("docs", terms.getDocCount());
|
||||
}
|
||||
fieldMap.add("docs", terms.getDocCount());
|
||||
|
||||
}
|
||||
if (fields != null && (fields.contains(fieldName) || fields.contains("*"))) {
|
||||
getDetailedFieldInfo(req, fieldName, fieldMap);
|
||||
|
|
Loading…
Reference in New Issue