lucene-solr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Noble Paul (JIRA)" <j...@apache.org>
Subject [jira] Commented: (SOLR-1664) Some Methods in FieldType actually should be in SchemaField
Date Thu, 17 Dec 2009 11:52:18 GMT

    [ https://issues.apache.org/jira/browse/SOLR-1664?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12791892#action_12791892
] 

Noble Paul commented on SOLR-1664:
----------------------------------

bq.It's cheaper than a dynamic field.

I cannot see this point. How can it be cheap when you are creating a new String (the syntehtic
name)  for each field for each query and insert?

Object creation is usually fast but ends up consuming a lot of memory. This can enable us
to have an efficient design

> Some Methods in FieldType actually should be in SchemaField
> -----------------------------------------------------------
>
>                 Key: SOLR-1664
>                 URL: https://issues.apache.org/jira/browse/SOLR-1664
>             Project: Solr
>          Issue Type: Improvement
>            Reporter: Noble Paul
>             Fix For: 1.5
>
>         Attachments: SOLR-1664.patch
>
>
> The following methods are only overridable from FieldType. 
> {code:java}
> public Field createField(SchemaField field, String externalVal, float boost) ;
> protected Field.TermVector getFieldTermVec(SchemaField field,String internalVal) ;
> protected Field.Store getFieldStore(SchemaField field,String internalVal);
> protected Field.Index getFieldIndex(SchemaField field,String internalVal);
> public ValueSource getValueSource(SchemaField field, QParser parser);
> public Query getRangeQuery(QParser parser, SchemaField field, String part1, String part2,
boolean minInclusive, boolean maxInclusive) ;
> {code}
> if there is anything specific to be done on a per-field basis it is not possible. if
we allow overriding SchemaField it will be more flexible.
> I hope this can make it simpler to implement SOLR-1131
> So ,there are two ways of overriding a functionality.
> * Override Fieldtype#createSchemaField() and provide new implementation of SchemaField
> * Override methods from FieldType itself(if the behavior is not per field ) as it is
now
> SchemaField is made non-final and Solr only invokes methods on SchemaField and not FieldType
directly

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message