You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by Violeta Georgieva <vi...@apache.org> on 2017/01/22 15:59:54 UTC

[VOTE] Release Apache Tomcat 6.0.50

The proposed Apache Tomcat 6.0.50 release is now available for voting.

Note: This is the last Tomcat 6 release.

It can be obtained from:
https://dist.apache.org/repos/dist/dev/tomcat/tomcat-6/v6.0.50/
The Maven staging repo is:
https://repository.apache.org/content/repositories/orgapachetomcat-1119/
The svn tag is:
http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_50/

The proposed 6.0.50 release is:
[ ] Broken - do not release
[ ] Stable - go ahead and release as 6.0.50 Stable

Regards,
Violeta

Re: [VOTE] Release Apache Tomcat 6.0.50

Posted by Rémy Maucherat <re...@apache.org>.
2017-01-22 16:59 GMT+01:00 Violeta Georgieva <vi...@apache.org>:

> The proposed Apache Tomcat 6.0.50 release is now available for voting.
>
> Note: This is the last Tomcat 6 release.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-6/v6.0.50/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1119/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_50/
>
> The proposed 6.0.50 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 6.0.50 Stable
>
> Rémy

Re: [VOTE] Release Apache Tomcat 6.0.50

Posted by Violeta Georgieva <vi...@apache.org>.
Hi,

2017-01-22 17:59 GMT+02:00 Violeta Georgieva <vi...@apache.org>:
>
> The proposed Apache Tomcat 6.0.50 release is now available for voting.
>
> Note: This is the last Tomcat 6 release.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-6/v6.0.50/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1119/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_50/
>
> The proposed 6.0.50 release is:
> [ ] Broken - do not release
> [ ] Stable - go ahead and release as 6.0.50 Stable

We need more votes.

Thanks,
Violeta

Re: [VOTE] Release Apache Tomcat 6.0.50

Posted by Violeta Georgieva <mi...@gmail.com>.
2017-01-22 17:59 GMT+02:00 Violeta Georgieva <vi...@apache.org>:
>
> The proposed Apache Tomcat 6.0.50 release is now available for voting.
>
> Note: This is the last Tomcat 6 release.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-6/v6.0.50/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1119/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_50/
>
> The proposed 6.0.50 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 6.0.50 Stable

 Regards,
 Violeta

Re: [VOTE] Release Apache Tomcat 6.0.50

Posted by Konstantin Kolinko <kn...@gmail.com>.
2017-01-22 18:59 GMT+03:00 Violeta Georgieva <vi...@apache.org>:
> The proposed Apache Tomcat 6.0.50 release is now available for voting.
>
> Note: This is the last Tomcat 6 release.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-6/v6.0.50/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1119/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_50/
>
> The proposed 6.0.50 release is:
> [ ] Broken - do not release
> [x] Stable - go ahead and release as 6.0.50 Stable

"ant download" needs alternating runs with Java 5 and Java 8 for https
connection to my closest mirror of sourceforge. Not a new issue, just
thought that it is worth noting.

Unit tests OK. (Java 5u20, 6u45, 7u80, 8u121), on Windows 32-bit

An odd error in a tribes test with BIO + Java 5. Occurred once, not
reproduced on a rerun.

TEST-org.apache.catalina.tribes.group.TestGroupChannelMemberArrival.BIO.txt
[[[
SEVERE: Unable to start cluster receiver
java.lang.NullPointerException
    at sun.nio.ch.Util.atBugLevel(Util.java:326)
    at sun.nio.ch.SelectorImpl.<init>(SelectorImpl.java:40)
    at sun.nio.ch.WindowsSelectorImpl.<init>(WindowsSelectorImpl.java:104)
    at sun.nio.ch.WindowsSelectorProvider.openSelector(WindowsSelectorProvider.java:26)
    at java.nio.channels.Selector.open(Selector.java:209)
    at org.apache.catalina.tribes.transport.nio.NioReceiver.bind(NioReceiver.java:128)
    at org.apache.catalina.tribes.transport.nio.NioReceiver.start(NioReceiver.java:101)
    at org.apache.catalina.tribes.group.ChannelCoordinator.internalStart(ChannelCoordinator.java:140)
    at org.apache.catalina.tribes.group.ChannelCoordinator.start(ChannelCoordinator.java:95)
    at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
    at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
    at org.apache.catalina.tribes.group.GroupChannel.start(GroupChannel.java:407)
    at org.apache.catalina.tribes.group.TestGroupChannelMemberArrival$1.run(TestGroupChannelMemberArrival.java:60)
]]]

Not an our issue. It is a known rather rare concurrency problem with Java 5.
Java Bug Database knows it and says that it is fixed in Java 7.0
http://bugs.java.com/view_bug.do?bug_id=6427854

Smoke testing OK.

Manager, Host Manager, Documentation - ASF icon is OK, issue was fixed.

Best regards,
Konstantin Kolinko

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


Re: [VOTE] Release Apache Tomcat 6.0.50

Posted by Rémy Maucherat <re...@apache.org>.
2017-01-26 22:13 GMT+01:00 Mark Thomas <ma...@apache.org>:

> On 26/01/2017 14:38, Rémy Maucherat wrote:
> > 2017-01-26 15:29 GMT+01:00 Mark Thomas <ma...@apache.org>:
> >> On 26 January 2017 13:53:22 GMT+00:00, Konstantin Kolinko <
> >> knst.kolinko@gmail.com> wrote:
>
> <snip/>
>
> >>> It needs some actual numbers - how big of a JSP can be compiled by
> >>> Tomcat.
> >>
> >> It took around 250 tags with a scriplet on a single page to trigger the
> >> problem. I need to test how much difference the try/finally fix made.
> >>
>
> Working with Tomcat 6 (9 won't be that much different), before the
> try/finally clean-up code was added a JSP page could handle 299
> instances of the foo tag (from the examples webapp) before the method
> got too big. After adding the try/finally clean-up, that drops to 228.
>
> I've been looking at the generated code for a while. One obvious
> optimisation had no effect (I'm guessing the compiler found it anyway).
>
> With a couple a small changes, I got the maximum tag count back up to 249.
>
> To take this further, I think the next step is to take the setters and,
> if the tag processed in _jspService(), move the setters for that tag
> into a separate method.
>
> I intend to explore this in 9.0.x with a view to back-porting if it works.
>
> If the try/finally fix is supposed to be important, it would be good to
use this opportunity to resurrect my try/finally patch for simple tags now
that the release cycle is done (otherwise, they have the same bug). With
the addition of Violeta's idea though.

Rémy

Re: [VOTE] Release Apache Tomcat 6.0.50

Posted by Mark Thomas <ma...@apache.org>.
On 26/01/2017 14:38, R�my Maucherat wrote:
> 2017-01-26 15:29 GMT+01:00 Mark Thomas <ma...@apache.org>:
>> On 26 January 2017 13:53:22 GMT+00:00, Konstantin Kolinko <
>> knst.kolinko@gmail.com> wrote:

<snip/>

>>> It needs some actual numbers - how big of a JSP can be compiled by
>>> Tomcat.
>>
>> It took around 250 tags with a scriplet on a single page to trigger the
>> problem. I need to test how much difference the try/finally fix made.
>>

Working with Tomcat 6 (9 won't be that much different), before the
try/finally clean-up code was added a JSP page could handle 299
instances of the foo tag (from the examples webapp) before the method
got too big. After adding the try/finally clean-up, that drops to 228.

I've been looking at the generated code for a while. One obvious
optimisation had no effect (I'm guessing the compiler found it anyway).

With a couple a small changes, I got the maximum tag count back up to 249.

To take this further, I think the next step is to take the setters and,
if the tag processed in _jspService(), move the setters for that tag
into a separate method.

I intend to explore this in 9.0.x with a view to back-porting if it works.

Mark


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


Re: [VOTE] Release Apache Tomcat 6.0.50

Posted by Rémy Maucherat <re...@apache.org>.
2017-01-26 15:29 GMT+01:00 Mark Thomas <ma...@apache.org>:

> On 26 January 2017 13:53:22 GMT+00:00, Konstantin Kolinko <
> knst.kolinko@gmail.com> wrote:
> >2017-01-26 16:00 GMT+03:00 Rémy Maucherat <re...@apache.org>:
> >> 2017-01-26 12:10 GMT+01:00 Mark Thomas <ma...@apache.org>:
> >>
> >>> - One TCK test fails because an associated JSP no longer compiles
> >>>   because it reaches the 64k method limit. The JSP has a very large
> >>>   number of nested tags.
> >>>
> >>> I'm going to take another look at the JSP Generation to see if there
> >is
> >>> anything we can do to make even a small improvement.
> >>>
> >>> :( It could be an option to simply revert the try/finally change in
> >all
> >> branches except 8.5 and 9, after all nobody complained about it.
> >
> >1. I think that try/finally change fixed a real bug. It is better to
> >keep it.
> >
> >
> >2. Looking at java code generated for JSPs by 6.0.50, the additional
> >code is in helper methods ("_jspx_meth_"*), not in the main big
> >_jspService() method.
>
> If you use tags with bodies that contain scriptlets then the code appears
> in the main service method.
>
> >There is not much of that additional code. Just a try/catch and a
> >boolean variable.
> >So I also do not see what can be improved.
> >
> >A "catch (Throwable t)" block at the end of _jspService() could be
> >extracted into a helper method as non-trivial code, but it is only a
> >dozen of lines and it is present only once.
>
> We might be able to save a few bytes with some helper methods but it won't
> be much, if any.
>
> >It needs some actual numbers - how big of a JSP can be compiled by
> >Tomcat.
>
> It took around 250 tags with a scriplet on a single page to trigger the
> problem. I need to test how much difference the try/finally fix made.
>

Yes, the problem is that once you add a scriptlet, there can be a variable
declaration in it (well, of course there is, people don't use scriptlets to
do clean stuff) so there needs to be full visibility of it to build. We had
been trying to remove scriptlets for w very long time, it never worked, we
still have people immediately asking for support of the new Java language
features in JSPs, so brand new code being written right now still features
scriptlets.
Also sad, the original size limits of the JVM were rather low, and never
changed.

Sorry for the complaints ...

Rmy

>
> >3. There are some Jasper options that produce a more compact java
> >code. Especially the option to generates a single out.write() call for
> >a sequence of text instead of separate call for each line of text. A
> >bugzilla report mentions it.
> >
> > <init-param>
> >            <param-name>mappedfile</param-name>
> >             <param-value>false</param-value>
> >  </init-param>
> >
> >http://tomcat.apache.org/tomcat-6.0-doc/jasper-howto.html
> >
> >I wonder whether the mentioned TCK test will pass with that option.
>
> I'll take a look.
>
> Mark
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: dev-help@tomcat.apache.org
>
>

Re: [VOTE] Release Apache Tomcat 6.0.50

Posted by Mark Thomas <ma...@apache.org>.
On 26 January 2017 13:53:22 GMT+00:00, Konstantin Kolinko <kn...@gmail.com> wrote:
>2017-01-26 16:00 GMT+03:00 Rémy Maucherat <re...@apache.org>:
>> 2017-01-26 12:10 GMT+01:00 Mark Thomas <ma...@apache.org>:
>>
>>> - One TCK test fails because an associated JSP no longer compiles
>>>   because it reaches the 64k method limit. The JSP has a very large
>>>   number of nested tags.
>>>
>>> I'm going to take another look at the JSP Generation to see if there
>is
>>> anything we can do to make even a small improvement.
>>>
>>> :( It could be an option to simply revert the try/finally change in
>all
>> branches except 8.5 and 9, after all nobody complained about it.
>
>1. I think that try/finally change fixed a real bug. It is better to
>keep it.
>
>
>2. Looking at java code generated for JSPs by 6.0.50, the additional
>code is in helper methods ("_jspx_meth_"*), not in the main big
>_jspService() method.

If you use tags with bodies that contain scriptlets then the code appears in the main service method.

>There is not much of that additional code. Just a try/catch and a
>boolean variable.
>So I also do not see what can be improved.
>
>A "catch (Throwable t)" block at the end of _jspService() could be
>extracted into a helper method as non-trivial code, but it is only a
>dozen of lines and it is present only once.

We might be able to save a few bytes with some helper methods but it won't be much, if any.

>It needs some actual numbers - how big of a JSP can be compiled by
>Tomcat.

It took around 250 tags with a scriplet on a single page to trigger the problem. I need to test how much difference the try/finally fix made.

>3. There are some Jasper options that produce a more compact java
>code. Especially the option to generates a single out.write() call for
>a sequence of text instead of separate call for each line of text. A
>bugzilla report mentions it.
>
> <init-param>
>            <param-name>mappedfile</param-name>
>             <param-value>false</param-value>
>  </init-param>
>
>http://tomcat.apache.org/tomcat-6.0-doc/jasper-howto.html
>
>I wonder whether the mentioned TCK test will pass with that option.

I'll take a look.

Mark

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


Re: [VOTE] Release Apache Tomcat 6.0.50

Posted by Konstantin Kolinko <kn...@gmail.com>.
2017-01-26 16:00 GMT+03:00 Rémy Maucherat <re...@apache.org>:
> 2017-01-26 12:10 GMT+01:00 Mark Thomas <ma...@apache.org>:
>
>> - One TCK test fails because an associated JSP no longer compiles
>>   because it reaches the 64k method limit. The JSP has a very large
>>   number of nested tags.
>>
>> I'm going to take another look at the JSP Generation to see if there is
>> anything we can do to make even a small improvement.
>>
>> :( It could be an option to simply revert the try/finally change in all
> branches except 8.5 and 9, after all nobody complained about it.

1. I think that try/finally change fixed a real bug. It is better to keep it.


2. Looking at java code generated for JSPs by 6.0.50, the additional
code is in helper methods ("_jspx_meth_"*), not in the main big
_jspService() method.

There is not much of that additional code. Just a try/catch and a
boolean variable.
So I also do not see what can be improved.

A "catch (Throwable t)" block at the end of _jspService() could be
extracted into a helper method as non-trivial code, but it is only a
dozen of lines and it is present only once.

It needs some actual numbers - how big of a JSP can be compiled by Tomcat.


3. There are some Jasper options that produce a more compact java
code. Especially the option to generates a single out.write() call for
a sequence of text instead of separate call for each line of text. A
bugzilla report mentions it.

 <init-param>
            <param-name>mappedfile</param-name>
             <param-value>false</param-value>
  </init-param>

http://tomcat.apache.org/tomcat-6.0-doc/jasper-howto.html

I wonder whether the mentioned TCK test will pass with that option.

Best regards,
Konstantin Kolinko

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


Re: [VOTE] Release Apache Tomcat 6.0.50

Posted by Rémy Maucherat <re...@apache.org>.
2017-01-26 12:10 GMT+01:00 Mark Thomas <ma...@apache.org>:

> - One TCK test fails because an associated JSP no longer compiles
>   because it reaches the 64k method limit. The JSP has a very large
>   number of nested tags.
>
> I'm going to take another look at the JSP Generation to see if there is
> anything we can do to make even a small improvement.
>
> :( It could be an option to simply revert the try/finally change in all
branches except 8.5 and 9, after all nobody complained about it.

Rémy

Re: [VOTE] Release Apache Tomcat 6.0.50

Posted by Mark Thomas <ma...@apache.org>.
On 22/01/2017 15:59, Violeta Georgieva wrote:
> The proposed Apache Tomcat 6.0.50 release is now available for voting.
> 
> Note: This is the last Tomcat 6 release.
> 
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-6/v6.0.50/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1119/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_50/
> 
> The proposed 6.0.50 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 6.0.50 Stable

I ran the TCKs with the following results.

Servlet 2.5:
I had to make the following changes from the default configuration
- Enabled STRICT_SERVLET_COMPLIANCE
- Disabled XML validation else Jasper's web.xml parsing fails which in
  turn triggers TCK failures. This appears to be mainly due to testing
  with Java 5. The problems look fixable (use same approach as Digester
  which does not fail) but I don't plan to fix this since this as a)
  this is probably the last 6.0.x release and b) I'm fairly sure this
  is a Java 5 issue
- Disabled TLD validation else some TCK tests fail since enabling
  validation injects some init parameters into the ServletContext which
  trigger failures because the TCK is not expecting them
- Enabled crossContext since the TCK tests that feature
- The signature test fails but I have never been able to get it to pass
  for 2.5. I suspect a local configuration problem . A manual check of
  the API has previously confirmed it is correct and there have been no
  changes to the API for the spec classes.

JSP 2.1
I had to make the following changes from the default configuration
- Enabled STRICT_SERVLET_COMPLIANCE
- Disbaled TLD validation since the TLDs that ship with the TCK fail
  validation
- Disable development mode since it changes some exception types which
  in turn causes test failures.
- One TCK test fails because an associated JSP no longer compiles
  because it reaches the 64k method limit. The JSP has a very large
  number of nested tags.

I'm going to take another look at the JSP Generation to see if there is
anything we can do to make even a small improvement.

With the exception of the JSP method limit, I have seen all of the above
previous 6.0.x releases.

I do no consider the JSP method limit a show-stopper since you need a
lot of tags on a page before it is an issue.

Hence, I'm voting stable.

Mark


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