You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Chetan Chheda <ch...@yahoo.com> on 2009/06/10 22:04:34 UTC

What to upgrade?

Our management has directed us to upgrade our JRE to 1.5 from 1.4.2 because they have "heard" that 1.5 has better memory management features. I am doing my due diligence to present a plan on what it will take to get us there. 

The question is how do I approach this ...

We have apache(2.0.59), Tomcat(5.0.30), and a few JVM based application processes. Tomcat and the application processes use the same JRE(1.4.2). 

- Is tomcat 5.0.30 supported with JRE 1.5? Is it as simple as updating the startup scripts with the new JRE path?
- Should I be upgrading tomcat too since our version is not even supported(as per ?
- What is the impact to the code? Is it all backward compatible and will work with the new JRE/tomcat version?
- Where can I find a comparison of enhancements/improvements between various tomcat versions? I saw the change log but its just too vast for me to digest...
- What is the impact to Apache/Mod_jk configurations?

Chetan


      

Re: What to upgrade?

Posted by Mark Thomas <ma...@apache.org>.
Chetan Chheda wrote:
> Our management has directed us to upgrade our JRE to 1.5 from 1.4.2 because they have "heard" that 1.5 has better memory management features. I am doing my due diligence to present a plan on what it will take to get us there. 
> 
> The question is how do I approach this ...
> 
> We have apache(2.0.59), Tomcat(5.0.30), and a few JVM based application processes. Tomcat and the application processes use the same JRE(1.4.2). 
> 
> - Is tomcat 5.0.30 supported with JRE 1.5? Is it as simple as updating the startup scripts with the new JRE path?
5.0.30 will work with 1.5 *but* the 5.0.x branch is very old, has not
been updated for a long time, is very unlikely to ever see another
release and almost certainly has some significant un-patched security
vulnerabilities.

> - Should I be upgrading tomcat too since our version is not even supported(as per ?
Absolutely - see above.

> - What is the impact to the code? Is it all backward compatible and will work with the new JRE/tomcat version?
You mat hit some issues with new keywords that were introduced. I
remember enum was an issue for Tomcat.

> - Where can I find a comparison of enhancements/improvements between various tomcat versions? I saw the change log but its just too vast for me to digest...
That is the best there is I am afraid.

5.0.x-> 5.5.x was a re-factor for performance
5.5.x-> 6.0.x was mainly a spec update

Generally, the later the version, the more bugs that have been fixed.

> - What is the impact to Apache/Mod_jk configurations?
On the httpd side, zero. For Tomcat you might need to tweak the
connector config a little.

Mark



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: What to upgrade?

Posted by "Caldarale, Charles R" <Ch...@unisys.com>.
> From: Chetan Chheda [mailto:chetan_chheda@yahoo.com]
> Subject: What to upgrade?
> 
> Our management has directed us to upgrade our JRE to 1.5 from
> 1.4.2 because they have "heard" that 1.5 has better memory
> management features.

I'll strongly reiterate what André mentioned: if you're moving up JVM levels, move to 1.6; going to 1.5 would be a waste of time these days.  Many, many things are improved in 1.6 over 1.5.

Contrary to André's suggestion, I would upgrade Tomcat to 6.0, bypassing 5.5.  The configuration changes from 5.5 to 6.0 are miniscule, so you might as well use the active version of the product.

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers.

 

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: What to upgrade?

Posted by Jonathan Mast <jh...@gmail.com>.
I just completed (last week actually) a migration from JDK 1.4.2/Tomcat 5.5
to JDK 1.6/Tomcat 6.

In terms of backward-compatibility, we had a problem with our TagLib
packages.  They would not compile under with whatever version of the Servlet
Spec accompanies JDK 1.6.  Those were the only compatibility issues we
encountered.


On Wed, Jun 10, 2009 at 4:33 PM, André Warnier <aw...@ice-sa.com> wrote:

> Chetan Chheda wrote:
> ...
> Disclaimer : The following statements are to be taken in a banking
> perspective (past bonuses are no guarantee for future ones); each situation
> is slightly different; my own Tomcat applications are not very
> sophisticated; my servers are not highly loaded; YMMV.
>
> Having done the same a couple of times, for me this was a relatively
> painless (and quick) upgrade, both for the JVM and for Tomcat (from Tomcat
> 4.1 to 5.5)(no point in stopping at 5.0).
> I have Tomcat 5.5 running with a JVM 1.6 and do not remember having
> encountered any problems with that either, so you might as well skip the JVM
> 1.5 also.
> I believe Tomcat 6 has quite a few more changes compared to 4.1, so you may
> not want to risk that in one step.
>
> Save your old tomcat/conf files somewhere for future reference, then
> install the new JVM and the new Tomcat, with the standard new conf files for
> the new Tomcat. Make sure it runs with some example webapp.
> Then /manually/ introduce the needed changes to the new configuration, one
> by one, on the base of your old conf files, and check after each change.
> Do /not/ try to keep your old configs for the new Tomcat, or you will end
> up with a mess.
>
> You might even be able to do this on the same server in parallel, as long
> as you change the ports of your <Connector>'s.
>
> As for mod_jk, apart from making sure that the right Apache jk worker
> connects to the right Tomcat, I don't think that there are any real config
> changes required.  The newer mod_jk have quite a few new options though,
> which you should probably at least have a look at.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>

Re: What to upgrade?

Posted by André Warnier <aw...@ice-sa.com>.
Caldarale, Charles R wrote:
>> From: André Warnier [mailto:aw@ice-sa.com]
>> Subject: Re: What to upgrade?
>>
>> Have I qualified for a government or consultancy job yet ?
> 
> Only for the not quite gone Mr Brown's cabinet...
> 
I realise a posteriori that I should have qualified the previous advice.
To the OP thus, please amend my previous advice as follows :
if you happen to be US-based, and if management asks whether you can go 
directly from 4.2 to 6.0, the appropriate answer would be :
Yes, we can !


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: What to upgrade?

Posted by "Caldarale, Charles R" <Ch...@unisys.com>.
> From: André Warnier [mailto:aw@ice-sa.com]
> Subject: Re: What to upgrade?
> 
> Have I qualified for a government or consultancy job yet ?

Only for the not quite gone Mr Brown's cabinet...

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: What to upgrade?

Posted by André Warnier <aw...@ice-sa.com>.
Let me add some non-technical and subjective advice.

I have kind of collected the impression over time here, that going from 
tomcat 5.5 to 6.x introduced at least some additional issues.
(This being said totally subjectively by someone who does not really 
know what he's talking about, but just goes by what he reads.)

Thus, while from a technical point of view, the jump from 4.2 to 6.0 may 
be less hassle in total than the sum of 2 consecutive jumps from 4.2 to 
5.5 and then 5.5 to 6.0, it nevertheless remains that
- management asked for 5.x, not 6.x.
- if anything bad happens going from 4.2 to 5.x, it will have been done 
according to explicit management wishes
- while if anything bad happens going from 4.2 to 6.x, it could be 
considered by some as having taken an unnecessary and unwarranted risk, 
beyond instructions
- not counting the fact that the later step from 5.5 to 6.x, whilst 
being comparatively easier, would nevertheless require the allocation of 
new time and manpower resources at some future date, which could be 
considered a Good Thing in the current depressionary climate

Have I qualified for a government or consultancy job yet ?




---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: What to upgrade?

Posted by David Kerber <dc...@verizon.net>.
Leon Rosenberg wrote:
> actually no. 1.5 added many language features. 1.6 added
> administration and management features (and override annotation for
> interfaces).
>   
And they both added big performance improvements over older ones.

D


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: What to upgrade?

Posted by Leon Rosenberg <ro...@googlemail.com>.
actually no. 1.5 added many language features. 1.6 added
administration and management features (and override annotation for
interfaces).
The jump 1.4.2 -> 1.5 will be exactly the same as 1.4.2 - 1.6.

Btw, to reply to your initial post, the memory management is really
really really better in 1.5 (say garbage collector), so your
management heard right things this time.
regards
Leon

On Wed, Jun 10, 2009 at 11:07 PM, Chetan Chheda<ch...@yahoo.com> wrote:
> We are going to regression test it in non - prod environments. I agree with going to the latest version, but our application is only supported on 1.4.2 So I am thinking 1.5 would be a smaller jump than 1.6.
>
> Chetan
>
>
>
> ________________________________
> From: Christopher Schultz <ch...@christopherschultz.net>
> To: Tomcat Users List <us...@tomcat.apache.org>
> Sent: Wednesday, June 10, 2009 4:53:27 PM
> Subject: Re: What to upgrade?
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> André,
>
> On 6/10/2009 4:33 PM, André Warnier wrote:
>> Save your old tomcat/conf files somewhere for future reference, then
>> install the new JVM and the new Tomcat, with the standard new conf files
>> for the new Tomcat. Make sure it runs with some example webapp.
>> Then /manually/ introduce the needed changes to the new configuration,
>> one by one, on the base of your old conf files, and check after each
>> change.
>
> +1
>
> Also, note that Tomcat 5.5 and higher really /really/ */really/* want
> you to put your <Context>  elements into yourapp/META-INF/context.xml
> instead of putting them into Tomcat's server.xml.
>
> - -chris
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.9 (MingW32)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
> iEYEARECAAYFAkowHUcACgkQ9CaO5/Lv0PDyEgCeITM9GNPk8rQHNFtfRsxx8vwS
> s3cAn3fBx+bijQIYPko/I3/UHam/EY6r
> =p6DD
> -----END PGP SIGNATURE-----
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: What to upgrade?

Posted by Chetan Chheda <ch...@yahoo.com>.
32 bit application running on a 64bit HP-UX Itanium platform. Found a document to get around the heap size limitation. Solution was to use another java executable(java_q4p) for the expanded heap. 


 

________________________________
From: "Caldarale, Charles R" <Ch...@unisys.com>
To: Tomcat Users List <us...@tomcat.apache.org>
Sent: Friday, June 12, 2009 11:11:44 AM
Subject: RE: What to upgrade?

> From: Chetan Chheda [mailto:chetan_chheda@yahoo.com]
> Subject: Re: What to upgrade?
> 
> I reduced it to -Xmx1024m -Xms1024m -Xmn400m and was able to startup.
> Is there a heap size limitation?

What platform are you running on?  Is this a 32- or 64-bit JVM?

In a 32-bit environment, somewhere around 1500m is often the most you can get for the heap; the exact value depends on the particular OS and JVM levels (and phase of the moon, it seems like).

- Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


      

RE: What to upgrade?

Posted by "Caldarale, Charles R" <Ch...@unisys.com>.
> From: Chetan Chheda [mailto:chetan_chheda@yahoo.com]
> Subject: Re: What to upgrade?
> 
> I reduced it to -Xmx1024m -Xms1024m -Xmn400m and was able to startup.
> Is there a heap size limitation?

What platform are you running on?  Is this a 32- or 64-bit JVM?

In a 32-bit environment, somewhere around 1500m is often the most you can get for the heap; the exact value depends on the particular OS and JVM levels (and phase of the moon, it seems like).

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: What to upgrade?

Posted by David kerber <dc...@verizon.net>.
Chetan Chheda wrote:
> Thanks for all your replies. 
> The plan I proposed is a step-by-step approach to upgrade to JDK 1.5, tomcat 5.5 , JDK 1.6 with application testing after each step.
>
> So I changed the tomcat 5.0.25 startup script to use JDK 1.5.0.03 and I am running into the following error 
>   
If you feel you must stop at 1.5 as an intermediate step (I think it's 
just wasting your time, but you may have other business reasons for it), 
at least get the latest 1.5 before worrying about anything else; many a 
bug has been fixed since the _03 version.

D


> Cannot exec large heap executable: No such file or directory
> Could not create the Java virtual machine.
>
> My heap sizes are -Xmx2400m -Xms2400m -Xmn800m -XX:PermSize=96m -XX:MaxPermSize=128m. 
>
> I reduced it to -Xmx1024m -Xms1024m -Xmn400m and was able to startup. Is there a heap size limitation?
>
> Chetan
>
>
> ________________________________
> From: David Kerber <dc...@verizon.net>
> To: Tomcat Users List <us...@tomcat.apache.org>
> Sent: Wednesday, June 10, 2009 8:58:37 PM
> Subject: Re: What to upgrade?
>
> Chetan Chheda wrote:
>   
>> We are going to regression test it in non - prod environments. I agree with going to the latest version, but our application is only supported on 1.4.2 So I am thinking 1.5 would be a smaller jump than 1.6.  
>>     
> I doubt it.  If it will run on 1.5 (which it most likely will), it will run on 1.6.  The jump from 1.4 to 1.5 is much bigger than the one from 1.5 to 1.6. 
> I moved my app from TC 5.5.15 running under jvm 1.5.0_12 directly to TC 6.0.17 or .18 (I don't recall which) under jvm 1.6.latest, and it ran absolutely unchanged except that it was much faster (could handle more concurrent requests).  Exactly zero code changes required in over 300 classes. 
> The initial jump from 1.4.something to 1.5 was quite painless as well, but I wanted some of the new code features in 1.5, so I never did extensive testing under of the 1.4 code until I had my 1.5 modifications done.
>
> D
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
>       
>   



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: What to upgrade?

Posted by Chetan Chheda <ch...@yahoo.com>.
Thanks for all your replies. 
The plan I proposed is a step-by-step approach to upgrade to JDK 1.5, tomcat 5.5 , JDK 1.6 with application testing after each step.

So I changed the tomcat 5.0.25 startup script to use JDK 1.5.0.03 and I am running into the following error 
Cannot exec large heap executable: No such file or directory
Could not create the Java virtual machine.

My heap sizes are -Xmx2400m -Xms2400m -Xmn800m -XX:PermSize=96m -XX:MaxPermSize=128m. 

I reduced it to -Xmx1024m -Xms1024m -Xmn400m and was able to startup. Is there a heap size limitation?

Chetan


________________________________
From: David Kerber <dc...@verizon.net>
To: Tomcat Users List <us...@tomcat.apache.org>
Sent: Wednesday, June 10, 2009 8:58:37 PM
Subject: Re: What to upgrade?

Chetan Chheda wrote:
> We are going to regression test it in non - prod environments. I agree with going to the latest version, but our application is only supported on 1.4.2 So I am thinking 1.5 would be a smaller jump than 1.6.  
I doubt it.  If it will run on 1.5 (which it most likely will), it will run on 1.6.  The jump from 1.4 to 1.5 is much bigger than the one from 1.5 to 1.6. 
I moved my app from TC 5.5.15 running under jvm 1.5.0_12 directly to TC 6.0.17 or .18 (I don't recall which) under jvm 1.6.latest, and it ran absolutely unchanged except that it was much faster (could handle more concurrent requests).  Exactly zero code changes required in over 300 classes. 
The initial jump from 1.4.something to 1.5 was quite painless as well, but I wanted some of the new code features in 1.5, so I never did extensive testing under of the 1.4 code until I had my 1.5 modifications done.

D



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


      

Re: What to upgrade?

Posted by David Kerber <dc...@verizon.net>.
Chetan Chheda wrote:
> We are going to regression test it in non - prod environments. I agree with going to the latest version, but our application is only supported on 1.4.2 So I am thinking 1.5 would be a smaller jump than 1.6. 
>   
I doubt it.  If it will run on 1.5 (which it most likely will), it will 
run on 1.6.  The jump from 1.4 to 1.5 is much bigger than the one from 
1.5 to 1.6. 

I moved my app from TC 5.5.15 running under jvm 1.5.0_12 directly to TC 
6.0.17 or .18 (I don't recall which) under jvm 1.6.latest, and it ran 
absolutely unchanged except that it was much faster (could handle more 
concurrent requests).  Exactly zero code changes required in over 300 
classes. 

The initial jump from 1.4.something to 1.5 was quite painless as well, 
but I wanted some of the new code features in 1.5, so I never did 
extensive testing under of the 1.4 code until I had my 1.5 modifications 
done.

D



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: What to upgrade?

Posted by Chetan Chheda <ch...@yahoo.com>.
We are going to regression test it in non - prod environments. I agree with going to the latest version, but our application is only supported on 1.4.2 So I am thinking 1.5 would be a smaller jump than 1.6. 

Chetan



________________________________
From: Christopher Schultz <ch...@christopherschultz.net>
To: Tomcat Users List <us...@tomcat.apache.org>
Sent: Wednesday, June 10, 2009 4:53:27 PM
Subject: Re: What to upgrade?

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

André,

On 6/10/2009 4:33 PM, André Warnier wrote:
> Save your old tomcat/conf files somewhere for future reference, then
> install the new JVM and the new Tomcat, with the standard new conf files
> for the new Tomcat. Make sure it runs with some example webapp.
> Then /manually/ introduce the needed changes to the new configuration,
> one by one, on the base of your old conf files, and check after each
> change.

+1

Also, note that Tomcat 5.5 and higher really /really/ */really/* want
you to put your <Context>  elements into yourapp/META-INF/context.xml
instead of putting them into Tomcat's server.xml.

- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkowHUcACgkQ9CaO5/Lv0PDyEgCeITM9GNPk8rQHNFtfRsxx8vwS
s3cAn3fBx+bijQIYPko/I3/UHam/EY6r
=p6DD
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


      

Re: What to upgrade?

Posted by Christopher Schultz <ch...@christopherschultz.net>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

André,

On 6/10/2009 4:33 PM, André Warnier wrote:
> Save your old tomcat/conf files somewhere for future reference, then
> install the new JVM and the new Tomcat, with the standard new conf files
> for the new Tomcat. Make sure it runs with some example webapp.
> Then /manually/ introduce the needed changes to the new configuration,
> one by one, on the base of your old conf files, and check after each
> change.

+1

Also, note that Tomcat 5.5 and higher really /really/ */really/* want
you to put your <Context>  elements into yourapp/META-INF/context.xml
instead of putting them into Tomcat's server.xml.

- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkowHUcACgkQ9CaO5/Lv0PDyEgCeITM9GNPk8rQHNFtfRsxx8vwS
s3cAn3fBx+bijQIYPko/I3/UHam/EY6r
=p6DD
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: What to upgrade?

Posted by André Warnier <aw...@ice-sa.com>.
Chetan Chheda wrote:
...
Disclaimer : The following statements are to be taken in a banking 
perspective (past bonuses are no guarantee for future ones); each 
situation is slightly different; my own Tomcat applications are not very 
sophisticated; my servers are not highly loaded; YMMV.

Having done the same a couple of times, for me this was a relatively 
painless (and quick) upgrade, both for the JVM and for Tomcat (from 
Tomcat 4.1 to 5.5)(no point in stopping at 5.0).
I have Tomcat 5.5 running with a JVM 1.6 and do not remember having 
encountered any problems with that either, so you might as well skip the 
JVM 1.5 also.
I believe Tomcat 6 has quite a few more changes compared to 4.1, so you 
may not want to risk that in one step.

Save your old tomcat/conf files somewhere for future reference, then 
install the new JVM and the new Tomcat, with the standard new conf files 
for the new Tomcat. Make sure it runs with some example webapp.
Then /manually/ introduce the needed changes to the new configuration, 
one by one, on the base of your old conf files, and check after each 
change.
Do /not/ try to keep your old configs for the new Tomcat, or you will 
end up with a mess.

You might even be able to do this on the same server in parallel, as 
long as you change the ports of your <Connector>'s.

As for mod_jk, apart from making sure that the right Apache jk worker 
connects to the right Tomcat, I don't think that there are any real 
config changes required.  The newer mod_jk have quite a few new options 
though, which you should probably at least have a look at.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org