On Fri, Nov 20, 2009 at 6:30 AM, Ryan McKinley <ryan...@gmail.com> wrote:
>
> On Nov 19, 2009, at 3:34 PM, Mark Miller wrote:
>
>> Ryan McKinley wrote:
>>>
>>> I would love to set goals that are ~3 months out so that we don't have
>>> another 1 year release cycle.  For a 2.0 release where we could have
>>> more back-compatibly flexibility, i would love to see some work that
>>> may be too ambitious...  In particular, the config spaghetti needs
>>> some attention.
>>>
>>> I don't see the need to increment solr to 2.0 for the lucene 3.0
>>> change -- of course that needs to be noted, but incrementing the major
>>> number in solr only makes sense if we are going to change *solr*
>>> significantly.
>>
>> Lucene major numbers don't work that way, and I don't think Solr needs
>> to work that way be default. I think major numbers are better for
>> indicating backwards compat issues than major features with the way
>> these projects work. Which is why Yonik mentions 1.5 with weaker back
>> compat - its not just the fact that we are going to Lucene 3.x - its
>> that Solr still relies on some of the API's that won't be around in 3.x
>> - they are not all trivial to remove or to remove while preserving back
>> compat.
>
> I confess I don't know the details of the changes that have not yet been
> integrated in solr  -- the only lucene changes I am familiar with is what
> was required for solr 1.4.
>
>
>
>
>>
>>>
>>> The lucene 2.x -> 3.0 upgrade path seems independent of that to me.  I
>>> would even argue that with solr 1.4 we have already required many
>>> lucene 3.0 changes -- All my custom lucene stuff had to be reworked to
>>> work with solr 1.4 (tokenizers & multi-reader filters).
>>
>> Many - but certainly not all.
>
> Just my luck...  I'm batting 1000 :)
>
> But that means my code can upgrade to 3.0 without a issue now!
>
>
>>>
>>> In general, I wonder where the solr back-compatibility contract
>>> applies (and to what degree).  For solr, I would rank the importance as:
>>> #1 - the URL API syntax.  Client query parameters should change as
>>> little as possible
>>> #2 - configuration
>>> #3 - java APIs
>>
>> Someone else would likely rank it differently - not everyone using Solr
>> even uses HTTP with it. Someone heavily involved in custom plugins might
>> care more about that than config. As a dev, I just plainly rank them all
>> as important and treat them on a case by case basis.
>
> I think it is fair to suggest that people will have the most
> stable/consistent/seamless upgrade path if you stick to the HTTP API (and by
> extension most of the solrj API)
>
> I am not suggesting that the java APIs are not important and that
> back-compatibly is not important.  Solr has a some APIs with a clear
> purpose, place, and intended use -- we need to take these very seriously.
>  We also have lots of APIs that are half baked and loosy goosy.  If a
> developer is working on the edges, i think it is fair to expect more hickups
> in the upgrade path.
>
>
>>>
>>> With that in mind, i think 'solr 1.5 with lucene 3.x' makes the most
>>> sense.  Unless we see making serious changes to solr that would
>>> warrent a major release bump
solr 1.5 with lucene 3.x is  a good option.
Solr 2.0 can have non-back compat changes for Solr itself. e.g
removing the single core option , changing configuration, REST Api
changes etc
>>
>> What is a serious change that would warrant a bump in your opinion?
>
> for example:
> - config overhaul.  detangle the XML from the components.  perhaps using
> spring.
This is already done. No components read config from xml anymore SOLR-1198
> - major URL request changes.  perhaps we change things to be more RESTful --
> perhaps let jersey take care of the URL/request building
> https://jersey.dev.java.net/
> - perhaps OSGi support/control/configuration
>
>
>>>
>>> Lucene has an explict back-compatibility contract:
>>> http://wiki.apache.org/lucene-java/BackwardsCompatibility
>>>
>>> I don't know if solr has one...  if we make one, I would like it to
>>> focus on the URL syntax+configuration
>>
>> Its not nice to give people plugins and then not worry about back compat
>> for them :)
>
> i want to be nice.  I just think that a different back compatibility
> contract applies for solr then for lucene.  It seems reasonable to consider
> the HTTP API, configs, and java API independently.
>
> From my perspective, saying "solr 1.5 uses lucene 3.0" implies everything a
> plugin developer using lucene APIs needs to know about the changes.
>
> To be clear, I am not against bumping to solr 2.0 -- I just have high
> aspirations (yet little time) for what a 2.0 bump could mean for solr.
>
> ryan
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org
> For additional commands, e-mail: java-dev-h...@lucene.apache.org
>
>



-- 
-----------------------------------------------------
Noble Paul | Principal Engineer| AOL | http://aol.com

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-dev-h...@lucene.apache.org

Reply via email to