Bug 1020878

Summary: Class Version of EAP jars not synced to Java 6 (Version 50.0)
Product: [JBoss] JBoss Enterprise Application Platform 6 Reporter: Rostislav Svoboda <rsvoboda>
Component: BuildAssignee: David Walluck <dwalluck>
Status: CLOSED EOL QA Contact: Nikoleta Hlavickova <nziakova>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.2.0CC: jdoyle, myarboro, nziakova, rsvoboda
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-08-19 12:49:09 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 999474    
Bug Blocks:    

Description Rostislav Svoboda 2013-10-18 12:23:20 UTC
Class Version of EAP jars is not synced to Java 6 (Version 50.0), tattletale was used to get this output.

Results:
 EAP - 297 jars from 334 are build with Class Version Java 6
 Maven repo zip - 344 jars from 385 are build with Class Version Java 6

** EAP server 6.2.0 ER6 **
[rsvoboda@steve tattletale-output]$ grep "<td>Java 5" . -R | wc -l
27
[rsvoboda@steve tattletale-output]$ grep "<td>Java 6" . -R | wc -l
297
[rsvoboda@steve tattletale-output]$ grep "<td>J2SE" . -R | wc -l
10
[rsvoboda@steve tattletale-output]$ grep "Class Version" . -R | wc -l
334
[rsvoboda@steve tattletale-output]$ grep "<td>J2SE" . -R 
./jar/xml-resolver-1.2.redhat-9.jar.html:     <td>J2SE 1.4</td>
./jar/dom4j-1.6.1-redhat-5.jar.html:     <td>J2SE 1.3</td>
./jar/woodstox-core-asl-4.2.0-redhat-2.jar.html:     <td>J2SE 1.4</td>
./jar/commons-beanutils-1.8.3.redhat-3.jar.html:     <td>J2SE 1.3</td>
./jar/velocity-1.7-redhat-2.jar.html:     <td>J2SE 1.4</td>
./jar/jdom-1.1.2-redhat-2.jar.html:     <td>J2SE 1.2</td>
./jar/org.osgi.core-4.2.0.redhat-4.jar.html:     <td>J2SE 1.2</td>
./jar/asm-3.3.1-redhat-4.jar.html:     <td>J2SE 1.2</td>
./jar/stax2-api-3.1.1-redhat-3.jar.html:     <td>J2SE 1.4</td>
./jar/xom-1.2.7-redhat-3.jar.html:     <td>J2SE 1.2</td>

** Maven repo zip 6.2.0 ER6 **
[rsvoboda@steve tattletale-maven-repo-output]$ grep "<td>Java 6" . -R | wc -l
344
[rsvoboda@steve tattletale-maven-repo-output]$ grep "<td>J2SE" . -R | wc -l
11
[rsvoboda@steve tattletale-maven-repo-output]$ grep "Class Version" . -R | wc -l
385
[rsvoboda@steve tattletale-maven-repo-output]$ grep "<td>J2SE" . -R 
./jar/org.osgi.compendium-4.2.0-redhat-2.jar.html:     <td>J2SE 1.2</td>
./jar/xml-resolver-1.2.redhat-9.jar.html:     <td>J2SE 1.4</td>
./jar/dom4j-1.6.1-redhat-5.jar.html:     <td>J2SE 1.3</td>
./jar/woodstox-core-asl-4.2.0-redhat-2.jar.html:     <td>J2SE 1.4</td>
./jar/commons-beanutils-1.8.3.redhat-3.jar.html:     <td>J2SE 1.3</td>
./jar/velocity-1.7-redhat-2.jar.html:     <td>J2SE 1.4</td>
./jar/jdom-1.1.2-redhat-2.jar.html:     <td>J2SE 1.2</td>
./jar/org.osgi.core-4.2.0.redhat-4.jar.html:     <td>J2SE 1.2</td>
./jar/asm-3.3.1-redhat-4.jar.html:     <td>J2SE 1.2</td>
./jar/stax2-api-3.1.1-redhat-3.jar.html:     <td>J2SE 1.4</td>
./jar/xom-1.2.7-redhat-3.jar.html:     <td>J2SE 1.2</td>

Comment 1 Rostislav Svoboda 2013-10-23 06:55:17 UTC
Comments:
  https://bugzilla.redhat.com/show_bug.cgi?id=999474#c4
  https://bugzilla.redhat.com/show_bug.cgi?id=999474#c5
  https://bugzilla.redhat.com/show_bug.cgi?id=999474#c7

Based on Jason's and mine comments linked above Java 6 has improvements in classloading time and StringBuilder usage for string concatenation.

I'm asking to line up all builds for EAP 6 to Java 6.

Comment 2 Paul Gier 2013-10-24 20:47:32 UTC
I don't consider this a blocker for GA because the jars have been like this for a while, but we can try to rebuild some of them depending on the workload.

Comment 3 David Walluck 2013-10-24 21:01:50 UTC
> Class Version of EAP jars is not synced to Java 6 (Version 50.0), tattletale
> was used to get this output.
> 
> Results:
>  EAP - 297 jars from 334 are build with Class Version Java 6
>  Maven repo zip - 344 jars from 385 are build with Class Version Java 6

What would be useful is if you could check the POMs for where the target setting is because in some cases these bugs could be filed against the wrong package, and should instead be filed against a parent POM.

One case I know of is the apache POM. Any children of apache will inherit its 1.4 source and target settings (if they do not explicitly override it).

Comment 4 Rostislav Svoboda 2013-10-25 13:37:09 UTC
Bits in EAP should be productized, that means built from sources so you have full control over the build.

I'm concerned about the result of build process.

Comment 5 John Doyle 2013-10-28 19:59:16 UTC
How does this show itself in the use of the product?

Comment 6 Rostislav Svoboda 2013-10-30 14:16:51 UTC
Part of comment 1:
> Based on Jason's and mine comments linked above Java 6 has improvements in 
> classloading time and StringBuilder usage for string concatenation.

==> you can have performance improvements

Comment 7 Rostislav Svoboda 2013-10-30 15:15:29 UTC
I created new report for Tattletale to get information about class versions.
  https://issues.jboss.org/browse/TTALE-216

Comment 8 David Walluck 2013-12-04 00:26:05 UTC
Three of these should already be fixed as of EAP 6.2. I am finding this hard to track as they are all on the same bug.

dom4j-1.6.1-redhat-5.jar.html:     <td>J2SE 1.3</td>
  - fixed in dom4j-1.6.1.redhat-6
jdom-1.1.2-redhat-2.jar.html:     <td>J2SE 1.2</td>
  - fixed in jdom-1.1.2.redhat-4
xom-1.2.7-redhat-3.jar.html:     <td>J2SE 1.2</td>
  - fixed in xom-1.2.7.redhat-4

Comment 9 Rostislav Svoboda 2013-12-04 08:25:05 UTC
For EAP 6.2.0 CR3:

dom4j-1.6.1.redhat-6.jar 	Java 6
jdom-1.1.2.redhat-3.jar 	Java 6
xom-1.2.7.redhat-4.jar 		Java 6

The remaining items:
Java 5 		29
J2SE 1.4 	5
J2SE 1.3 	1
J2SE 1.2 	2

Latest list is available on Jenkins - http://jenkins.mw.lab.eng.bos.redhat.com/hudson/view/EAP6/view/EAP6-Repository/job/eap-6x-tattletale-maven-repo/javadoc/jdk/index.html

Would you like to have split of this BZ per JDK version? 

I don't think it would be good to split this BZ per jar - that would mean 37 BZs and tracking hell.

Comment 10 Nikoleta Hlavickova 2015-01-12 13:23:23 UTC
Update for EAP 6.4.0.ER1:
Java 6          	369
Java 5          	22
J2SE 1.4        	1
J2SE 1.3        	1
J2SE 1.2        	1

See the latest test report at Jenkins:
https://jenkins.mw.lab.eng.bos.redhat.com/hudson/view/EAP6/view/EAP6-Repository/job/eap-6x-tattletale-maven-repo/javadoc/jdk/index.html