[ https://issues.apache.org/jira/browse/SOLR-2259?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Robert Muir updated SOLR-2259: ------------------------------ Attachment: SOLR-2259.patch here's the updated patch, that uses the ant property $tests.luceneMatchVersion in all of the configs. if this sysprop isnt set (e.g. IDE) then it will use LUCENE_CURRENT, which will emit a warning, but probably good for casual running of tests from an IDE. > Improve analyzer/version handling in Solr > ----------------------------------------- > > Key: SOLR-2259 > URL: https://issues.apache.org/jira/browse/SOLR-2259 > Project: Solr > Issue Type: Task > Reporter: Robert Muir > Fix For: 3.1, 4.0 > > Attachments: SOLR-2259.patch, SOLR-2259.patch > > > We added Version for backwards compatibility support in Lucene. > We use this to fire deprecated code to emulate old version to ensure index > backwards compat. > Related: we deprecate old analysis components and eventually remove them. > To hook into Solr, at first it defaulted to Version 2.4 emulation everywhere, > with the example having the latest. > if you don't specify a version in your solrconfig, it defaults to 2.4 though. > However, as of LUCENE-2781 2.4 is removed: but users with old configs that > don't specify a version should not be silently "upgraded" to the Version 3.0 > emulation... this is bad. > Additionally, when users are using deprecated emulation or using deprecated > factories they might not know it, and it might come as a surprise if they > upgrade, especially if they arent looking at java apis or java code. > I propose: > # in trunk: we make the solrconfig luceneMatchVersion mandatory. > This is simple: Uwe already has a method that will error out if its not > present, we just use that. > # in 3.x: we warn if you don't specify luceneMatchVersion in solrconfig: > telling you that its going to be required in 4.0 and that you are defaulting > to 2.4 emulation. > For example: Warning: luceneMatchVersion is not specified in solrconfig.xml. > Defaulting to 2.4 emulation. You should at some point declare and reindex to > at least 3.0, because 2.4 emulation is deprecated in 3.x and will be removed > in 4.0. This parameter will be mandatory in 4.0. > # in 3.x,trunk: we warn if you are using a deprecated matchVersion constant > somewhere in general, even for a specific tokenizer, telling you that you > need to at some point reindex with a current version before you can move to > the next release. > For example: Warning: you are using 2.4 emulation, at some point you need to > bump and reindex to at least 3.0, because 2.4 emulation is deprecated in 3.x > and will be removed in 4.0 > # in 3.x,trunk: we warn if you are using a deprecated TokenStreamFactory so > that you know its going to be removed. > For example: Warning: the ISOLatin1FilterFactory is deprecated and will be > removed in the next release. You should migrate to ASCIIFoldingFilterFactory. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org