Steve Rowe created SOLR-4726:
--------------------------------
Summary: Factor out a minimal abstract class from
IndexSchema/ManagedIndexSchema
Key: SOLR-4726
URL: https://issues.apache.org/jira/browse/SOLR-4726
Project: Solr
Issue Type: Task
Components: Schema and Analysis
Reporter: Steve Rowe
Priority: Minor
Spinoff from SOLR-3251.
[~rcmuir] wrote, on SOLR-4658 and SOLR-3251:
{quote}
If the goal is to have multiple implementations of indexschema (immutable ones
backed by human edited files, mutable ones saved to some opaque "database" that
can be edited by REST), then why not make IndexSchema abstract and pluggable
from solrconfig.xml like anything else?
{quote}
{quote}
So IndexSchema becomes abstract and loaded just like other plugins, versus
being a "wonder-do-it-all" class. It would also
have the advantage of not having a bunch of options that have illegal
combinations (e.g. managed+mutable)
Finally it makes it extensible: if someone wants to make their own impl that is
powered by microsoft access .MDB files then
they can do so.
(Also i think it would make backwards compatibility possible in case something
changes in drastic ways).
{quote}
{quote}
and it would also be a bonus in the future if somehow the backwards cruft
existing in various FieldType etc apis (e.g. defaults and so on) were factored
into the Classic guy to keep those apis simpler...
{quote}
{quote}
>From a pluggability perspective it would be nice if e.g. addFields was
>factored down (e.g. IndexSchema becomes abstract and minimal), and the
>immutable default impl threw UOE for changes or whatever... But i know this is
>a lot of work, it would be a good followup issue and probably good to do
>before schema gets any more hair (there is already tons of backwards cruft
>thrown about it for compat etc too).
{quote}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
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]