[
https://issues.apache.org/jira/browse/LUCENE-2308?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13094547#comment-13094547
]
Robert Muir commented on LUCENE-2308:
-------------------------------------
But if fieldtype is an interface with get-only methods, then someone could make
a Freezable implementation right?
Maybe the interface is good, because I dislike 'forcing' freezable too, just
not as much as a dislike builder.
so, i think the interface sounds good, and would still personally prefer if our
'default' core implementation did not use freezable, and used the simpler ctor
instead.
also I think we should be gearing the API so that most people can use the
simpler fieldtypes (StringField/TextField etc) for 90% of lucene uses instead:
I think we want using FieldType directly to be more expert usage (e.g. i should
be able to do a typical body+title+metadata fields with these
StringField/TextField etc and never deal with this stuff).
> Separately specify a field's type
> ---------------------------------
>
> Key: LUCENE-2308
> URL: https://issues.apache.org/jira/browse/LUCENE-2308
> Project: Lucene - Java
> Issue Type: Improvement
> Components: core/index
> Reporter: Michael McCandless
> Assignee: Michael McCandless
> Labels: gsoc2011, lucene-gsoc-11, mentor
> Fix For: 4.0
>
> Attachments: LUCENE-2308-10.patch, LUCENE-2308-11.patch,
> LUCENE-2308-12.patch, LUCENE-2308-13.patch, LUCENE-2308-14.patch,
> LUCENE-2308-15.patch, LUCENE-2308-16.patch, LUCENE-2308-17.patch,
> LUCENE-2308-18.patch, LUCENE-2308-19.patch, LUCENE-2308-2.patch,
> LUCENE-2308-20.patch, LUCENE-2308-21.patch, LUCENE-2308-3.patch,
> LUCENE-2308-4.patch, LUCENE-2308-5.patch, LUCENE-2308-6.patch,
> LUCENE-2308-7.patch, LUCENE-2308-8.patch, LUCENE-2308-9.patch,
> LUCENE-2308-branch.patch, LUCENE-2308-final.patch, LUCENE-2308-ltc.patch,
> LUCENE-2308-merge-1.patch, LUCENE-2308-merge-2.patch,
> LUCENE-2308-merge-3.patch, LUCENE-2308.branchdiffs,
> LUCENE-2308.branchdiffs.moved, LUCENE-2308.patch, LUCENE-2308.patch,
> LUCENE-2308.patch, LUCENE-2308.patch, LUCENE-2308.patch
>
>
> This came up from dicussions on IRC. I'm summarizing here...
> Today when you make a Field to add to a document you can set things
> index or not, stored or not, analyzed or not, details like omitTfAP,
> omitNorms, index term vectors (separately controlling
> offsets/positions), etc.
> I think we should factor these out into a new class (FieldType?).
> Then you could re-use this FieldType instance across multiple fields.
> The Field instance would still hold the actual value.
> We could then do per-field analyzers by adding a setAnalyzer on the
> FieldType, instead of the separate PerFieldAnalzyerWrapper (likewise
> for per-field codecs (with flex), where we now have
> PerFieldCodecWrapper).
> This would NOT be a schema! It's just refactoring what we already
> specify today. EG it's not serialized into the index.
> This has been discussed before, and I know Michael Busch opened a more
> ambitious (I think?) issue. I think this is a good first baby step. We could
> consider a hierarchy of FIeldType (NumericFieldType, etc.) but maybe hold
> off on that for starters...
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]