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

Gus Heck commented on SOLR-12420:
---------------------------------

{code:java}
<!-- attribute "name" is the name of this schema and is only used for display 
purposes.
       version="x.y" is Solr's version number for the schema syntax and 
       semantics.  It should not normally be changed by applications.
       1.0: multiValued attribute did not exist, all fields are multiValued 
            by nature
       1.1: multiValued attribute introduced, false by default 
       1.2: omitTermFreqAndPositions attribute introduced, true by default 
            except for text fields.
       1.3: removed optional field compress feature
       1.4: autoGeneratePhraseQueries attribute introduced to drive QueryParser
            behavior when a single string produces multiple tokens.  Defaults 
            to off for version >= 1.4
       1.5: omitNorms defaults to true for primitive field types 
            (int, float, boolean, string...)
       1.6: useDocValuesAsStored defaults to true.
    -->{code}
schema versions seem to be about what features are leveraged in solr and allow 
us to introduce support without directly breaking existing usage. Lucene 
versions are about what format the index is written in which of course is a 
limiter on what's available in solr, but with the separation into separate 
projects, this distinction is likely to grow not shrink. With schema version 
set low, one could potentially still absorb performance and other benefits from 
newer lucene without having to re-edit the schema or account for the new 
defaults (or even spend time figuring out IF you care). Removing this seems 
like foisting upgrade work on our users. Upgrades are already complicated 
enough imho.

The flip side is of course that updating the schema version can be forgotten 
about, leading to confusion. The need for better docs on this feature are a 
thing I have mentioned and received positive feedback on in slack, but not yet 
followed up on.

> Propose removing schema version; use luceneMatchVersion instead
> ---------------------------------------------------------------
>
>                 Key: SOLR-12420
>                 URL: https://issues.apache.org/jira/browse/SOLR-12420
>             Project: Solr
>          Issue Type: Improvement
>            Reporter: David Smiley
>            Assignee: David Smiley
>            Priority: Major
>             Fix For: main (9.0)
>
>
> I propose that the schema version be removed in lieu of using 
> luceneMatchVersion for this.  One less thing to manage (in code, need REST 
> API -- SOLR-7242, thing to document; etc.).  We don't need the fidelity to 
> differentiate from luceneMatchVersion.  We're already using 
> luceneMatchVersion for things instead of having a ton of additional version 
> numbers.  I can understand the point of putting a version number in in a 
> config file but I don't think we should continue this practice.
> To make this happen, if the luceneMatchVersion is >= 7.4 (the release which 
> we start doing this) then a non-existent schema version becomes equivalent to 
> the latest schema version.  Specifying the schema version becomes deprecated 
> but supported; we might log a warning. 
> In 8.0, strip schema version out altogether.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to