Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Lucene: Java-Dev

The JDK 1.5 Can o' Worms

 

 

Lucene java-dev RSS feed   Index | Next | Previous | View Threaded


gsingers at apache

Jul 24, 2007, 2:17 PM

Post #1 of 16 (1371 views)
Permalink
The JDK 1.5 Can o' Worms

Well, it has been over a year since we have had the 1.5 debate (see
http://www.gossamer-threads.com/lists/lucene/java-dev/35972?
search_string=Java%201.5;#35972) and I think it is time we start
accepting 1.5 code. Nutch, Solr, Hadoop all use JDK 1.5 and I imagine
Tika will as well (and no, I wouldn't jump off the bridge if everyone
else did, but this is not the same.)

At a deeper level, I find it frustrating to have to dig into methods
and code that use Collections in order to figure out what is actually
in the Collection, thus I want generics. I want to use StringBuilder
instead of StringBuffer. I think we could benefit from some of the
concurrency stuff in 1.5 as well. I also believe all committers and
all contributors are using 1.5 already for there environment. I
would also _guess_ the large majority of our users are on 1.5. Now,
I know, it isn't a big deal to run 1.4 code in 1.5, but it is
annoying for development and that is a big enough motivator for me.

I would propose we do the following:
1. Put in any new deprecations we want, cleanups, etc.
2. Release 2.9 so all of Mike M's goodness is available to 1.4
users. We could do 2.4 and then 2.9 so that there are two more
iterations at 1.4 if people want a little more lead out time.
Still, I think the turnaround on these should be weeks, not months.
That is, 2.4 is the last significant 2.x release, 2.9 is a bug fix
and cleanup release and then we move on.
3. Announce that 2.9 will be the last version under JDK 1.4
4. Switch 3.0-dev to be on JDK 1.5, removing any deprecated code.
5. Start accepting 1.5 patches on 3.0-dev

Now, I think if there is someone who is really in dire need of 1.4 we
could work to give one or two people committer rights (after the
appropriate process has been undertaken, i.e. patching, interest,
etc.) on the 2.9 branch and they can be responsible for back-porting.

I'm not calling for a vote at this time, but I probably will after
some discussion.

Cheers,
Grant

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


vajda at osafoundation

Jul 24, 2007, 3:16 PM

Post #2 of 16 (1310 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

On Tue, 24 Jul 2007, Grant Ingersoll wrote:

> Well, it has been over a year since we have had the 1.5 debate (see
> http://www.gossamer-threads.com/lists/lucene/java-dev/35972?search_string=Java%201.5;#35972)
> and I think it is time we start accepting 1.5 code. Nutch, Solr, Hadoop all
> use JDK 1.5 and I imagine Tika will as well (and no, I wouldn't jump off the
> bridge if everyone else did, but this is not the same.)
>
> At a deeper level, I find it frustrating to have to dig into methods and code
> that use Collections in order to figure out what is actually in the
> Collection, thus I want generics. I want to use StringBuilder instead of
> StringBuffer. I think we could benefit from some of the concurrency stuff in
> 1.5 as well. I also believe all committers and all contributors are using
> 1.5 already for there environment. I would also _guess_ the large majority
> of our users are on 1.5. Now, I know, it isn't a big deal to run 1.4 code
> in 1.5, but it is annoying for development and that is a big enough motivator
> for me.
>
> I would propose we do the following:
> 1. Put in any new deprecations we want, cleanups, etc.
> 2. Release 2.9 so all of Mike M's goodness is available to 1.4 users. We
> could do 2.4 and then 2.9 so that there are two more iterations at 1.4 if
> people want a little more lead out time. Still, I think the turnaround on
> these should be weeks, not months. That is, 2.4 is the last significant 2.x
> release, 2.9 is a bug fix and cleanup release and then we move on.
> 3. Announce that 2.9 will be the last version under JDK 1.4
> 4. Switch 3.0-dev to be on JDK 1.5, removing any deprecated code.
> 5. Start accepting 1.5 patches on 3.0-dev
>
> Now, I think if there is someone who is really in dire need of 1.4 we could
> work to give one or two people committer rights (after the appropriate
> process has been undertaken, i.e. patching, interest, etc.) on the 2.9 branch
> and they can be responsible for back-porting.
>

Agreed. The situation is frustrating. A year ago, I was hoping that gcj would
be 1.5 capable by now. Version 4.3.0 has a new Java front-end that supports
the new 1.5 feature but it's still going to be a long while before it's
released. At least, that's my guess. Given that the fresh release gcj 4.2.0
doesn't run anywhere but Linux - for PyLucene, at least - I'm currently
exploring other avenues than gcj and I don't feel comfortable asking the Java
Lucene team for another year of delay before accepting code using 1.5
features.

Thanks all for your patience so far, the time has come to move on.

Andi..

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


janssen at parc

Jul 24, 2007, 3:26 PM

Post #3 of 16 (1313 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

Grant Ingersoll writes:
> I also believe all committers and
> all contributors are using 1.5 already for there environment. I
> would also _guess_ the large majority of our users are on 1.5. Now,
> I know, it isn't a big deal to run 1.4 code in 1.5, but it is
> annoying for development and that is a big enough motivator for me.

The big issue wasn't whether developers and application users were
using Sun's Java 1.5, it was gcj and where it was. Several of the
downstream packages of Lucene involves gcj instead of Sun Java,
because gcj provides different functionality. I believe that any 1.5
features used in Lucene should be carefully chosen to be compatible
with stable versions of gcj, so that PyLucene, for instance, will be
able to use it.

Bill

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


gsingers at apache

Jul 24, 2007, 4:00 PM

Post #4 of 16 (1311 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

On Jul 24, 2007, at 6:26 PM, Bill Janssen wrote:

> Grant Ingersoll writes:
>> I also believe all committers and
>> all contributors are using 1.5 already for there environment. I
>> would also _guess_ the large majority of our users are on 1.5. Now,
>> I know, it isn't a big deal to run 1.4 code in 1.5, but it is
>> annoying for development and that is a big enough motivator for me.
>
> The big issue wasn't whether developers and application users were
> using Sun's Java 1.5, it was gcj and where it was. Several of the
> downstream packages of Lucene involves gcj instead of Sun Java,
> because gcj provides different functionality. I believe that any 1.5
> features used in Lucene should be carefully chosen to be compatible
> with stable versions of gcj, so that PyLucene, for instance, will be
> able to use it.

But can't you still just use the 1.4 version and backport changes? I
am going to guess that GCJ will always be significantly behind Sun's
Java, so PyLucene will always have this problem, but at some point
Lucene Java should move forward. If GCJ can't have a compatible
version of 1.5 out after 3 years, then when will it? As I said
before, people who can't migrate, can stay on the 2.9. It will be
fast and pretty darn stable, so you won't lose that much. I would
even support accepting and applying patches to that branch, given
support from some committer.

I think if we are going to say we support 1.5 then we say we support
1.5, not some restricted subset of it. It will be way to hard to
make sure potential contributors know what 1.5 features are available
and what ones are not.

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


dmsmith555 at gmail

Jul 24, 2007, 8:39 PM

Post #5 of 16 (1309 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

On Jul 24, 2007, at 7:00 PM, Grant Ingersoll wrote:

> I am going to guess that GCJ will always be significantly behind
> Sun's Java,

There is an effort to release OpenJDK. That will be Java 1.7 (my
cynicism is perhaps later). I can't find the web page now, but it
appears that it will stall gcj development. Gcj is still not yet
compatible with all of java 1.4.2 (mostly in swing) and even further
behind 1.5.0.

The problem of going to something that gcj does not support is that
it is likely that Lucene won't be upgraded in Linux distributions as
the (L)GPL effectively handcuffs programs that can't provide complete
open source. This is explicit with GPL v3.

It is hard enough to get it updated as it is. Currently, Lucene 1.9.1
is the level that is available in JPackage and also in Fedora. (I
have supplied an rpm spec for 2.0 and 2.2, but it still hasn't gone
forward).

With regard to the Mac, OSX 10.4 has a penetration of over 80% (I
forget the exact number), leaving the rest (OSX 10.2 and OSX 10.3)
with Java 1.4 or lower. Java 1.5 will never be available on earlier
platforms. OSX 10.4 is just over 2 years old.

So Grant, to your point, the situation with regard to Java runtime
engines has not changed much in a year. The arguments back then are
still just as valid today. And I'm still just as opposed to it today
as I was then. However, I won't reiterate the same points as the
situation has not significantly changed. We can all go back and dig
up the old thread.

And in the last year, I have greatly appreciated the performance
improvements. They have been awesome! Let's keep up the good work.

And my offer to back port still stands. I'd just like to see us not
fork. Perhaps accept 1.5 patches, but don't apply them until back
ported.

As to what led to this conversation, I bet we can find/invent an
acceptable substitute for StringBuilder.

-- DM Smith


cutting at apache

Jul 24, 2007, 8:59 PM

Post #6 of 16 (1309 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

Bill Janssen wrote:
> The big issue wasn't whether developers and application users were
> using Sun's Java 1.5, it was gcj and where it was. Several of the
> downstream packages of Lucene involves gcj instead of Sun Java,
> because gcj provides different functionality.

GCJ is also available on a wider range of platforms than Sun's Java.

Another open-source JVM to watch is Apache Harmony
(http://harmony.apache.org/).

That said, I like Grant's plan.

Doug

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


gsingers at apache

Jul 25, 2007, 4:18 AM

Post #7 of 16 (1308 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

On Jul 24, 2007, at 11:39 PM, DM Smith wrote:

>
> On Jul 24, 2007, at 7:00 PM, Grant Ingersoll wrote:
>
>> I am going to guess that GCJ will always be significantly behind
>> Sun's Java,
>
> There is an effort to release OpenJDK. That will be Java 1.7 (my
> cynicism is perhaps later). I can't find the web page now, but it
> appears that it will stall gcj development. Gcj is still not yet
> compatible with all of java 1.4.2 (mostly in swing) and even
> further behind 1.5.0.
>
> The problem of going to something that gcj does not support is that
> it is likely that Lucene won't be upgraded in Linux distributions
> as the (L)GPL effectively handcuffs programs that can't provide
> complete open source. This is explicit with GPL v3.
>
> It is hard enough to get it updated as it is. Currently, Lucene
> 1.9.1 is the level that is available in JPackage and also in
> Fedora. (I have supplied an rpm spec for 2.0 and 2.2, but it still
> hasn't gone forward).
>

I think this just adds to the feeling that we shouldn't have to
wait. I think it stands to reason that even if GCJ had full 1.5
support, it would take a good amount of time to find its way into the
Linux distributions as the official release, and the same goes for
Lucene 2.4 and 2.9. Thus, in my mind, you actually have a good 6
months to a year before Linux users could even consider updates to
the latest anyway. I know where I work we are usually manually
compiling packages, etc. b/c the official distribution package is so
far behind.


> With regard to the Mac, OSX 10.4 has a penetration of over 80% (I
> forget the exact number), leaving the rest (OSX 10.2 and OSX 10.3)
> with Java 1.4 or lower. Java 1.5 will never be available on earlier
> platforms. OSX 10.4 is just over 2 years old.
>
> So Grant, to your point, the situation with regard to Java runtime
> engines has not changed much in a year. The arguments back then are
> still just as valid today. And I'm still just as opposed to it
> today as I was then. However, I won't reiterate the same points as
> the situation has not significantly changed. We can all go back and
> dig up the old thread.
>

Yep, I understand. I realize this move has some downsides and I
don't tread here lightly, but I think the downsides are mitigated by
the fact that we can do 2 more releases on 1.4 and you will have some
significant performance improvements in the meantime and that Lucene
is already quite mature such that there is no shame in being on 2.9
when it comes around.

> And in the last year, I have greatly appreciated the performance
> improvements. They have been awesome! Let's keep up the good work.
>
> And my offer to back port still stands. I'd just like to see us not
> fork. Perhaps accept 1.5 patches, but don't apply them until back
> ported.

I am glad you have offered to back port and we probably can take you
up on the offer, but I don't think we can agree to the second part,
simply because of the math. There are, right now anyway, 4-5 pretty
active committers and only 1 of you. I don't see how you could keep
up unless you have an automated tool to help or it was your full time
job.

>
> As to what led to this conversation, I bet we can find/invent an
> acceptable substitute for StringBuilder.

Actually, my main reason was when I was digging into some methods
that used Collections that weren't documented as to what is in the
Collection. It is annoying at best to have to open up the source to
go figure out what is in a Collection.

Another factor is, when you code all day in 1.5 and all your macros/
live templates are setup for 1.5 constructs and you out of habit do
things in 1.5, I find myself constantly correcting until my brain
finally says "its 1.4, dummy". I know this is just looking for
excuses, but I think the little things really start to add up.

Mostly, though, I think it gives Lucene Java the feel that we are
behind. Isn't 1.6 the actual official release at this point? I'm
not proposing to go there just yet, and I don't think we should.

Cheers,
Grant

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


markrmiller at gmail

Jul 25, 2007, 5:45 AM

Post #8 of 16 (1300 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

After reading last years discussion, I get the feeling that there was
more support for moving to 1.5 in Lucene 2.0 than against. However,
there did not seem to be enough solid advantages to get past the GCJ
issues. The whole argument died on a knifes edge with no change
happening. Now, over a year later, the pro arguments have only
strengthened, while the cons have weakened -- it's hard to believe that
the 1.5 argument won't win this time despite a few holdouts. The
arguments for the 1.5 move are certainly not wonderfully compelling
(though I do love Map<String, List<String>>), but 1.6 is now the
official release and 1.5 has been out long enough to be considered the
standard. If you want to go with legacy Java 1.4, I am sure you can deal
with legacy Lucene 2.9. Last year, many said the same thing about Lucene
1.9. Now we are talking Lucene 2.9.

Also, this tid-bit seems to indicate you will be able to use Java 1.5
with GCJ if you really need to.

January 8, 2007
We've merged the |gcj-eclipse| branch to svn trunk. The merge
changes gcj to use the Eclipse compiler as a front end, enabling all
1.5 language features. This merge also brings in a new,
generics-enabled version of Classpath, including some new tools.
This new code will appear in GCC 4.3.

http://retroweaver.sourceforge.net/ is probably as valid an option this
year as last

A lot of contrib code is already 1.5, and it seems about time that core
made the move as well.

- Mark


Grant Ingersoll wrote:
>
> On Jul 24, 2007, at 11:39 PM, DM Smith wrote:
>
>>
>> On Jul 24, 2007, at 7:00 PM, Grant Ingersoll wrote:
>>
>>> I am going to guess that GCJ will always be significantly behind
>>> Sun's Java,
>>
>> There is an effort to release OpenJDK. That will be Java 1.7 (my
>> cynicism is perhaps later). I can't find the web page now, but it
>> appears that it will stall gcj development. Gcj is still not yet
>> compatible with all of java 1.4.2 (mostly in swing) and even further
>> behind 1.5.0.
>>
>> The problem of going to something that gcj does not support is that
>> it is likely that Lucene won't be upgraded in Linux distributions as
>> the (L)GPL effectively handcuffs programs that can't provide complete
>> open source. This is explicit with GPL v3.
>>
>> It is hard enough to get it updated as it is. Currently, Lucene 1.9.1
>> is the level that is available in JPackage and also in Fedora. (I
>> have supplied an rpm spec for 2.0 and 2.2, but it still hasn't gone
>> forward).
>>
>
> I think this just adds to the feeling that we shouldn't have to wait.
> I think it stands to reason that even if GCJ had full 1.5 support, it
> would take a good amount of time to find its way into the Linux
> distributions as the official release, and the same goes for Lucene
> 2.4 and 2.9. Thus, in my mind, you actually have a good 6 months to a
> year before Linux users could even consider updates to the latest
> anyway. I know where I work we are usually manually compiling
> packages, etc. b/c the official distribution package is so far behind.
>
>
>> With regard to the Mac, OSX 10.4 has a penetration of over 80% (I
>> forget the exact number), leaving the rest (OSX 10.2 and OSX 10.3)
>> with Java 1.4 or lower. Java 1.5 will never be available on earlier
>> platforms. OSX 10.4 is just over 2 years old.
>>
>> So Grant, to your point, the situation with regard to Java runtime
>> engines has not changed much in a year. The arguments back then are
>> still just as valid today. And I'm still just as opposed to it today
>> as I was then. However, I won't reiterate the same points as the
>> situation has not significantly changed. We can all go back and dig
>> up the old thread.
>>
>
> Yep, I understand. I realize this move has some downsides and I don't
> tread here lightly, but I think the downsides are mitigated by the
> fact that we can do 2 more releases on 1.4 and you will have some
> significant performance improvements in the meantime and that Lucene
> is already quite mature such that there is no shame in being on 2.9
> when it comes around.
>
>> And in the last year, I have greatly appreciated the performance
>> improvements. They have been awesome! Let's keep up the good work.
>>
>> And my offer to back port still stands. I'd just like to see us not
>> fork. Perhaps accept 1.5 patches, but don't apply them until back
>> ported.
>
> I am glad you have offered to back port and we probably can take you
> up on the offer, but I don't think we can agree to the second part,
> simply because of the math. There are, right now anyway, 4-5 pretty
> active committers and only 1 of you. I don't see how you could keep
> up unless you have an automated tool to help or it was your full time
> job.
>
>>
>> As to what led to this conversation, I bet we can find/invent an
>> acceptable substitute for StringBuilder.
>
> Actually, my main reason was when I was digging into some methods that
> used Collections that weren't documented as to what is in the
> Collection. It is annoying at best to have to open up the source to
> go figure out what is in a Collection.
>
> Another factor is, when you code all day in 1.5 and all your
> macros/live templates are setup for 1.5 constructs and you out of
> habit do things in 1.5, I find myself constantly correcting until my
> brain finally says "its 1.4, dummy". I know this is just looking for
> excuses, but I think the little things really start to add up.
>
> Mostly, though, I think it gives Lucene Java the feel that we are
> behind. Isn't 1.6 the actual official release at this point? I'm not
> proposing to go there just yet, and I don't think we should.
>
> Cheers,
> Grant
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
> For additional commands, e-mail: java-dev-help [at] lucene
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


markharw00d at yahoo

Jul 25, 2007, 7:19 AM

Post #9 of 16 (1297 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

>>Mostly, though, I think it gives Lucene Java the feel that we are behind. Isn't 1.6 the actual official release at this point?

I wouldn't say "behind", just concerned about enabling Lucene for all - in the same way popular websites might choose broad accessibility over using the latest AJAX gizmos.
There's always a significant lag in adoption and I'm still seeing clients mandating 1.4 due to their corporate infrastructure.

Having said this, I think it is not unreasonable to now leave those stuck on Java 1.4 with a Lucene 2.9 version and move Lucene 3.0 on to Java 1.5.


Cheers,
Mark




----- Original Message ----
From: Grant Ingersoll <gsingers [at] apache>
To: java-dev [at] lucene
Sent: Wednesday, 25 July, 2007 12:18:27 PM
Subject: Re: The JDK 1.5 Can o' Worms


On Jul 24, 2007, at 11:39 PM, DM Smith wrote:

>
> On Jul 24, 2007, at 7:00 PM, Grant Ingersoll wrote:
>
>> I am going to guess that GCJ will always be significantly behind
>> Sun's Java,
>
> There is an effort to release OpenJDK. That will be Java 1.7 (my
> cynicism is perhaps later). I can't find the web page now, but it
> appears that it will stall gcj development. Gcj is still not yet
> compatible with all of java 1.4.2 (mostly in swing) and even
> further behind 1.5.0.
>
> The problem of going to something that gcj does not support is that
> it is likely that Lucene won't be upgraded in Linux distributions
> as the (L)GPL effectively handcuffs programs that can't provide
> complete open source. This is explicit with GPL v3.
>
> It is hard enough to get it updated as it is. Currently, Lucene
> 1.9.1 is the level that is available in JPackage and also in
> Fedora. (I have supplied an rpm spec for 2.0 and 2.2, but it still
> hasn't gone forward).
>

I think this just adds to the feeling that we shouldn't have to
wait. I think it stands to reason that even if GCJ had full 1.5
support, it would take a good amount of time to find its way into the
Linux distributions as the official release, and the same goes for
Lucene 2.4 and 2.9. Thus, in my mind, you actually have a good 6
months to a year before Linux users could even consider updates to
the latest anyway. I know where I work we are usually manually
compiling packages, etc. b/c the official distribution package is so
far behind.


> With regard to the Mac, OSX 10.4 has a penetration of over 80% (I
> forget the exact number), leaving the rest (OSX 10.2 and OSX 10.3)
> with Java 1.4 or lower. Java 1.5 will never be available on earlier
> platforms. OSX 10.4 is just over 2 years old.
>
> So Grant, to your point, the situation with regard to Java runtime
> engines has not changed much in a year. The arguments back then are
> still just as valid today. And I'm still just as opposed to it
> today as I was then. However, I won't reiterate the same points as
> the situation has not significantly changed. We can all go back and
> dig up the old thread.
>

Yep, I understand. I realize this move has some downsides and I
don't tread here lightly, but I think the downsides are mitigated by
the fact that we can do 2 more releases on 1.4 and you will have some
significant performance improvements in the meantime and that Lucene
is already quite mature such that there is no shame in being on 2.9
when it comes around.

> And in the last year, I have greatly appreciated the performance
> improvements. They have been awesome! Let's keep up the good work.
>
> And my offer to back port still stands. I'd just like to see us not
> fork. Perhaps accept 1.5 patches, but don't apply them until back
> ported.

I am glad you have offered to back port and we probably can take you
up on the offer, but I don't think we can agree to the second part,
simply because of the math. There are, right now anyway, 4-5 pretty
active committers and only 1 of you. I don't see how you could keep
up unless you have an automated tool to help or it was your full time
job.

>
> As to what led to this conversation, I bet we can find/invent an
> acceptable substitute for StringBuilder.

Actually, my main reason was when I was digging into some methods
that used Collections that weren't documented as to what is in the
Collection. It is annoying at best to have to open up the source to
go figure out what is in a Collection.

Another factor is, when you code all day in 1.5 and all your macros/
live templates are setup for 1.5 constructs and you out of habit do
things in 1.5, I find myself constantly correcting until my brain
finally says "its 1.4, dummy". I know this is just looking for
excuses, but I think the little things really start to add up.

Mostly, though, I think it gives Lucene Java the feel that we are
behind. Isn't 1.6 the actual official release at this point? I'm
not proposing to go there just yet, and I don't think we should.

Cheers,
Grant

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene






___________________________________________________________
Yahoo! Answers - Got a question? Someone out there knows the answer. Try it
now.
http://uk.answers.yahoo.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


janssen at parc

Jul 25, 2007, 10:48 AM

Post #10 of 16 (1297 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

> As I said
> before, people who can't migrate, can stay on the 2.9. It will be
> fast and pretty darn stable, so you won't lose that much.

Hmmm... :-). If you won't lose that much by staying on 2.9, that
means that the developers who forge ahead with 1.5 would also not
*gain* that much by doing so. Might as well stay at java 1.4.2, no?

Bill

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


gsingers at apache

Jul 25, 2007, 12:18 PM

Post #11 of 16 (1300 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

Point taken, but not really what I meant. :-) I just meant 2.9 will
represent a version of Lucene that is pretty darn good and that would
satisfy the needs of people who just want the default install from
some Linux distribution. So, I guess I amend my statement, you will
lose out, but that is the nature of software either keep up or be
happy with what you have. The fact is, there just can't be that much
interest in GCJ otherwise it would be further along than it is, IMO.

Mostly, I see the move as a benefit to contributors/committers which
will flow down to end users, but I do think it benefits our users as
well, especially generics and the performance improvements that can
be had from some capabilities like StringBuilder and the concurrency
package. Not too mention that I bet there are a fair number of
people out there that have potential contributions in 1.5 that won't
contribute because they have no interest in backporting to 1.4. Solr
is a great example. There are things in Solr that are general enough
to make sense in Lucene core, but perhaps one of the reasons they are
not is b/c it is 1.5.

On Jul 25, 2007, at 1:48 PM, Bill Janssen wrote:

>> As I said
>> before, people who can't migrate, can stay on the 2.9. It will be
>> fast and pretty darn stable, so you won't lose that much.
>
> Hmmm... :-). If you won't lose that much by staying on 2.9, that
> means that the developers who forge ahead with 1.5 would also not
> *gain* that much by doing so. Might as well stay at java 1.4.2, no?
>
> Bill
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
> For additional commands, e-mail: java-dev-help [at] lucene
>



---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


dmsmith555 at gmail

Jul 25, 2007, 4:40 PM

Post #12 of 16 (1297 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

On Jul 25, 2007, at 8:45 AM, Mark Miller wrote:

> After reading last years discussion, I get the feeling that there
> was more support for moving to 1.5 in Lucene 2.0 than against.
> However, there did not seem to be enough solid advantages to get
> past the GCJ issues. The whole argument died on a knifes edge with
> no change happening. Now, over a year later, the pro arguments have
> only strengthened, while the cons have weakened -- it's hard to
> believe that the 1.5 argument won't win this time despite a few
> holdouts. The arguments for the 1.5 move are certainly not
> wonderfully compelling (though I do love Map<String,
> List<String>>), but 1.6 is now the official release and 1.5 has
> been out long enough to be considered the standard. If you want to
> go with legacy Java 1.4, I am sure you can deal with legacy Lucene
> 2.9. Last year, many said the same thing about Lucene 1.9. Now we
> are talking Lucene 2.9.
>
> Also, this tid-bit seems to indicate you will be able to use Java
> 1.5 with GCJ if you really need to.
>
> January 8, 2007
> We've merged the |gcj-eclipse| branch to svn trunk. The merge
> changes gcj to use the Eclipse compiler as a front end, enabling
> all
> 1.5 language features. This merge also brings in a new,
> generics-enabled version of Classpath, including some new tools.
> This new code will appear in GCC 4.3.

There is a big difference between a compiler being able to handle 1.5
syntax and create correct byte code, and a runtime set of classes.
GCJ's runtime support is not there yet.

>
> http://retroweaver.sourceforge.net/ is probably as valid an option
> this year as last
>
> A lot of contrib code is already 1.5, and it seems about time that
> core made the move as well.
>
> - Mark
>
>
> Grant Ingersoll wrote:
>>
>> On Jul 24, 2007, at 11:39 PM, DM Smith wrote:
>>
>>>
>>> On Jul 24, 2007, at 7:00 PM, Grant Ingersoll wrote:
>>>
>>>> I am going to guess that GCJ will always be significantly
>>>> behind Sun's Java,
>>>
>>> There is an effort to release OpenJDK. That will be Java 1.7 (my
>>> cynicism is perhaps later). I can't find the web page now, but it
>>> appears that it will stall gcj development. Gcj is still not yet
>>> compatible with all of java 1.4.2 (mostly in swing) and even
>>> further behind 1.5.0.
>>>
>>> The problem of going to something that gcj does not support is
>>> that it is likely that Lucene won't be upgraded in Linux
>>> distributions as the (L)GPL effectively handcuffs programs that
>>> can't provide complete open source. This is explicit with GPL v3.
>>>
>>> It is hard enough to get it updated as it is. Currently, Lucene
>>> 1.9.1 is the level that is available in JPackage and also in
>>> Fedora. (I have supplied an rpm spec for 2.0 and 2.2, but it
>>> still hasn't gone forward).
>>>
>>
>> I think this just adds to the feeling that we shouldn't have to
>> wait. I think it stands to reason that even if GCJ had full 1.5
>> support, it would take a good amount of time to find its way into
>> the Linux distributions as the official release, and the same goes
>> for Lucene 2.4 and 2.9. Thus, in my mind, you actually have a
>> good 6 months to a year before Linux users could even consider
>> updates to the latest anyway. I know where I work we are usually
>> manually compiling packages, etc. b/c the official distribution
>> package is so far behind.
>>
>>
>>> With regard to the Mac, OSX 10.4 has a penetration of over 80% (I
>>> forget the exact number), leaving the rest (OSX 10.2 and OSX
>>> 10.3) with Java 1.4 or lower. Java 1.5 will never be available on
>>> earlier platforms. OSX 10.4 is just over 2 years old.
>>>
>>> So Grant, to your point, the situation with regard to Java
>>> runtime engines has not changed much in a year. The arguments
>>> back then are still just as valid today. And I'm still just as
>>> opposed to it today as I was then. However, I won't reiterate the
>>> same points as the situation has not significantly changed. We
>>> can all go back and dig up the old thread.
>>>
>>
>> Yep, I understand. I realize this move has some downsides and I
>> don't tread here lightly, but I think the downsides are mitigated
>> by the fact that we can do 2 more releases on 1.4 and you will
>> have some significant performance improvements in the meantime and
>> that Lucene is already quite mature such that there is no shame in
>> being on 2.9 when it comes around.
>>
>>> And in the last year, I have greatly appreciated the performance
>>> improvements. They have been awesome! Let's keep up the good work.
>>>
>>> And my offer to back port still stands. I'd just like to see us
>>> not fork. Perhaps accept 1.5 patches, but don't apply them until
>>> back ported.
>>
>> I am glad you have offered to back port and we probably can take
>> you up on the offer, but I don't think we can agree to the second
>> part, simply because of the math. There are, right now anyway,
>> 4-5 pretty active committers and only 1 of you. I don't see how
>> you could keep up unless you have an automated tool to help or it
>> was your full time job.
>>
>>>
>>> As to what led to this conversation, I bet we can find/invent an
>>> acceptable substitute for StringBuilder.
>>
>> Actually, my main reason was when I was digging into some methods
>> that used Collections that weren't documented as to what is in the
>> Collection. It is annoying at best to have to open up the source
>> to go figure out what is in a Collection.
>>
>> Another factor is, when you code all day in 1.5 and all your
>> macros/live templates are setup for 1.5 constructs and you out of
>> habit do things in 1.5, I find myself constantly correcting until
>> my brain finally says "its 1.4, dummy". I know this is just
>> looking for excuses, but I think the little things really start to
>> add up.
>>
>> Mostly, though, I think it gives Lucene Java the feel that we are
>> behind. Isn't 1.6 the actual official release at this point? I'm
>> not proposing to go there just yet, and I don't think we should.
>>
>> Cheers,
>> Grant
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
>> For additional commands, e-mail: java-dev-help [at] lucene
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
> For additional commands, e-mail: java-dev-help [at] lucene
>


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


markrmiller at gmail

Jul 25, 2007, 5:24 PM

Post #13 of 16 (1299 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

>> Also, this tid-bit seems to indicate you will be able to use Java 1.5
>> with GCJ if you really need to.
>>
>> January 8, 2007
>> We've merged the |gcj-eclipse| branch to svn trunk. The merge
>> changes gcj to use the Eclipse compiler as a front end, enabling all
>> 1.5 language features. This merge also brings in a new,
>> generics-enabled version of Classpath, including some new tools.
>> This new code will appear in GCC 4.3.
>
> There is a big difference between a compiler being able to handle 1.5
> syntax and create correct byte code, and a runtime set of classes.
> GCJ's runtime support is not there yet.
>
True enough -- I did not realize the runtime library was in such a sorry
state. Even still, with sun open sourcing java and existence of other
projects like Harmoney and OpenJDK, how long can this really last?
Frankly, I am amazed at the pace of GCJ, but it is hard to imagine that
with so much free code out there doing what they need, that it could
take much longer to get 1.5 support.

If they don't have Java 1.5 support in another 6-12 months (with so many
shortcuts available), why let such a laggard in the java community hold
back Lucene? And if they are going to support Java 1.5 within the next
6-18 months, what is so bad about a short gap time where you are stuck
with Lucene 2.9? No one seems so upset at being stuck with Java 1.4 for
years -- will there really be an uproar if some legacy systems need to
stay with 2.9 for 6 months? It would be sad to expect that Java 1.5 will
not be coming to GCJ soon.

Of course that same argument could be used to say why not just wait the
short time period since the 1.5 features are so sugary anyway...

but with my lowly crowd vote: +1 for 1.5 in 3.0

- Mark

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


otis_gospodnetic at yahoo

Jul 25, 2007, 5:33 PM

Post #14 of 16 (1296 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

I like the plan.

Otis
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Simpy -- http://www.simpy.com/ - Tag - Search - Share

----- Original Message ----
From: Grant Ingersoll <gsingers [at] apache>
To: java-dev [at] lucene
Sent: Tuesday, July 24, 2007 11:17:11 PM
Subject: The JDK 1.5 Can o' Worms

Well, it has been over a year since we have had the 1.5 debate (see
http://www.gossamer-threads.com/lists/lucene/java-dev/35972?
search_string=Java%201.5;#35972) and I think it is time we start
accepting 1.5 code. Nutch, Solr, Hadoop all use JDK 1.5 and I imagine
Tika will as well (and no, I wouldn't jump off the bridge if everyone
else did, but this is not the same.)

At a deeper level, I find it frustrating to have to dig into methods
and code that use Collections in order to figure out what is actually
in the Collection, thus I want generics. I want to use StringBuilder
instead of StringBuffer. I think we could benefit from some of the
concurrency stuff in 1.5 as well. I also believe all committers and
all contributors are using 1.5 already for there environment. I
would also _guess_ the large majority of our users are on 1.5. Now,
I know, it isn't a big deal to run 1.4 code in 1.5, but it is
annoying for development and that is a big enough motivator for me.

I would propose we do the following:
1. Put in any new deprecations we want, cleanups, etc.
2. Release 2.9 so all of Mike M's goodness is available to 1.4
users. We could do 2.4 and then 2.9 so that there are two more
iterations at 1.4 if people want a little more lead out time.
Still, I think the turnaround on these should be weeks, not months.
That is, 2.4 is the last significant 2.x release, 2.9 is a bug fix
and cleanup release and then we move on.
3. Announce that 2.9 will be the last version under JDK 1.4
4. Switch 3.0-dev to be on JDK 1.5, removing any deprecated code.
5. Start accepting 1.5 patches on 3.0-dev

Now, I think if there is someone who is really in dire need of 1.4 we
could work to give one or two people committer rights (after the
appropriate process has been undertaken, i.e. patching, interest,
etc.) on the 2.9 branch and they can be responsible for back-porting.

I'm not calling for a vote at this time, but I probably will after
some discussion.

Cheers,
Grant

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene





---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


janssen at parc

Jul 25, 2007, 6:58 PM

Post #15 of 16 (1299 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

> Frankly, I am amazed at the pace of GCJ, but it is hard to imagine that
> with so much free code out there doing what they need, that it could
> take much longer to get 1.5 support.

Just guessing, but could it be that the features in 1.5 and 1.6 are
just not compelling enough to motivate many contributors to add them
to gcj? Or maybe the plethora of various FOSS Java VMs is confusing
the issue.

> If they don't have Java 1.5 support in another 6-12 months (with so many
> shortcuts available), why let such a laggard in the java community hold
> back Lucene?

Presumably because what's being done with gcj and Lucene is also an
important use of Lucene that the Lucene developers don't wish to
gratuitously cripple.

> And if they are going to support Java 1.5 within the next
> 6-18 months, what is so bad about a short gap time where you are stuck
> with Lucene 2.9? No one seems so upset at being stuck with Java 1.4 for
> years -- will there really be an uproar if some legacy systems need to
> stay with 2.9 for 6 months? It would be sad to expect that Java 1.5 will
> not be coming to GCJ soon.

And it would seem to be poor engineering, given the past history of
gcj development, to predict a time-frame for the emergence of full 1.5
support.

Bill

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene


gsingers at apache

Jul 26, 2007, 5:22 PM

Post #16 of 16 (1284 views)
Permalink
Re: The JDK 1.5 Can o' Worms [In reply to]

On Jul 25, 2007, at 9:58 PM, Bill Janssen wrote:

>> Frankly, I am amazed at the pace of GCJ, but it is hard to imagine
>> that
>> with so much free code out there doing what they need, that it could
>> take much longer to get 1.5 support.
>
> Just guessing, but could it be that the features in 1.5 and 1.6 are
> just not compelling enough to motivate many contributors to add them
> to gcj? Or maybe the plethora of various FOSS Java VMs is confusing
> the issue.
>

Well, obviously Sun felt there reasons to release them... But
really, there are enough features to motivate me and, I believe, a
number of other Lucene contributors, which is more compelling


>> If they don't have Java 1.5 support in another 6-12 months (with
>> so many
>> shortcuts available), why let such a laggard in the java community
>> hold
>> back Lucene?
>
> Presumably because what's being done with gcj and Lucene is also an
> important use of Lucene that the Lucene developers don't wish to
> gratuitously cripple.
>
>> And if they are going to support Java 1.5 within the next
>> 6-18 months, what is so bad about a short gap time where you are
>> stuck
>> with Lucene 2.9? No one seems so upset at being stuck with Java
>> 1.4 for
>> years -- will there really be an uproar if some legacy systems
>> need to
>> stay with 2.9 for 6 months? It would be sad to expect that Java
>> 1.5 will
>> not be coming to GCJ soon.
>
> And it would seem to be poor engineering, given the past history of
> gcj development, to predict a time-frame for the emergence of full 1.5
> support.
>

Right, I do feel the GCJ pain and I wish we could keep everyone
happy, but I just think it is time to move upwards and onwards.

-Grant



---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe [at] lucene
For additional commands, e-mail: java-dev-help [at] lucene

Lucene java-dev RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.