dev@glassfish.java.net

FindBugs progress

From: Bill Shannon <bill.shannon_at_oracle.com>
Date: Wed, 27 Apr 2011 17:19:33 -0700

It's been a month since I announced that we're raising the bar on FindBugs,
and we've made great progress!

We started with about 4000 errors from FindBugs, and we're now down to less
than 2700! That's excellent progress and I have complete confidence that
we'll reach the goal of less than 2500 errors shortly.

The goal was also to reduce the number of errors in each module by at least
33%. Of the 119 modules that had errors, 46 of them have met the goal already!
In fact, *all* of the top 4 modules have met their goal, giving us a new top 5:

1. Security Core Classes - 148
2. AMX V3 Core - 128
3. Common Utilities - 128
4. Web Container glue code - 107
5. JSR-109 - 102

Following is the current status by module. Great work, everyone!

A Pluggable InMemory JACC Provider base: 4 goal: 2 cur: 4
ACC Config Classes (JAXB) base: 3 goal: 2 cur: 3
AMX V3 Config base: 1 goal: 0 cur: 1
AMX V3 Config implementation base: 35 goal: 23 cur: 34
AMX V3 Core base: 128 goal: 85 cur: 128
AMX V3 Core implementation base: 33 goal: 22 cur: 33
AMX V3 Java EE Management (JSR 77) imple base: 23 goal: 15 cur: 20
AMX V3 extensions implementation base: 9 goal: 6 cur: 9
Admin Console Common base: 75 goal: 50 cur: 8 SUCCESS!
Admin Console Core Jar base: 11 goal: 7 cur: 1 SUCCESS!
Admin Console Full distribution plugin base: 2 goal: 1 cur: 0 SUCCESS!
Admin Console Integration base: 1 goal: 0 cur: 1
Admin Console JMS Plugin base: 7 goal: 4 cur: 0 SUCCESS!
Admin Console Update Center Plugin base: 4 goal: 2 cur: 0 SUCCESS!
Admin Console Web Container Plugin base: 2 goal: 1 cur: 0 SUCCESS!
Ant tasks base: 10 goal: 6 cur: 10
Appclient Security Integration base: 1 goal: 0 cur: 1
Appserver Core Bootstraping Classes base: 45 goal: 30 cur: 42
Appserver Logging Classes base: 40 goal: 26 cur: 16 SUCCESS!
AutoDeploy Classes base: 28 goal: 18 cur: 28
Backup Restore classes base: 17 goal: 11 cur: 7 SUCCESS!
Base module for providing support for OS base: 18 goal: 12 cur: 16
Client OSGi module (including ACC) base: 58 goal: 38 cur: 51
Client library (including ACC) base: 4 goal: 2 cur: 0 SUCCESS!
Cluster Admin base: 75 goal: 50 cur: 59
Cluster Admin CLI base: 39 goal: 26 cur: 33
Cluster SSH Provisioning base: 9 goal: 6 cur: 7
Common Utilities base: 144 goal: 96 cur: 128
Common persistence code between JPA and base: 5 goal: 3 cur: 4
Connector (gluecode) for GlassFish Java base: 3 goal: 2 cur: 0 SUCCESS!
Connector for GlassFish Web Container base: 1 goal: 0 cur: 0 SUCCESS!
Connectors Inbound Support base: 11 goal: 7 cur: 6 SUCCESS!
Connectors Private APIs for GlassFish Co base: 19 goal: 12 cur: 7 SUCCESS!
Connectors admin base: 8 goal: 5 cur: 2 SUCCESS!
Container Common base: 18 goal: 12 cur: 17
Core JDBC Resource Adapter classes base: 44 goal: 29 cur: 32
Core Servlet Container base: 405 goal: 270 cur: 196 SUCCESS!
DataProvider base: 50 goal: 33 cur: 0 SUCCESS!
Deployment Client Classes and Interfaces base: 42 goal: 28 cur: 7 SUCCESS!
Deployment Object Library base: 239 goal: 159 cur: 155 SUCCESS!
Deployment Related Admin Classes base: 18 goal: 12 cur: 8 SUCCESS!
Deployment Related Common Classes base: 38 goal: 25 cur: 15 SUCCESS!
Deployment Related JavaEE Core Classes base: 5 goal: 3 cur: 1 SUCCESS!
Deployment Related JavaEE Full Profile C base: 7 goal: 4 cur: 0 SUCCESS!
EJB Container connector for Glassfish base: 3 goal: 2 cur: 2 SUCCESS!
EJB Timer Service Application base: 1 goal: 0 cur: 1
Ejb Security Integration base: 34 goal: 22 cur: 34
GMS Module base: 8 goal: 5 cur: 0 SUCCESS!
GlassFish AppClient Server-Side Connecto base: 1 goal: 0 cur: 1
GlassFish AppClient Server-Side Core base: 44 goal: 29 cur: 44
GlassFish CDI Support for OSGi Bundles base: 5 goal: 3 cur: 5
GlassFish Core EJB container implementat base: 332 goal: 221 cur: 177 SUCCESS!
GlassFish EJB Container for OSGi Enabled base: 3 goal: 2 cur: 3
GlassFish Grizzly adapter container impl base: 3 goal: 2 cur: 2 SUCCESS!
GlassFish JDBC Support (rfc #122) for OS base: 9 goal: 6 cur: 0 SUCCESS!
GlassFish JPA Support (rfc #143) for OSG base: 5 goal: 3 cur: 5
GlassFish Java EE Annotation Framework base: 10 goal: 6 cur: 5 SUCCESS!
GlassFish ORB connector implementation base: 18 goal: 12 cur: 18
GlassFish ORB interface layer implementa base: 23 goal: 15 cur: 23
GlassFish Registration base: 3 goal: 2 cur: 3
GlassFish Resources support for OSGi Bun base: 2 goal: 1 cur: 0 SUCCESS!
GlassFish SSL Implementation Module base: 3 goal: 2 cur: 3
GlassFish Web Container (rfc #66) for OS base: 12 goal: 8 cur: 12
GlassFish Web container Embedded APIs base: 1 goal: 0 cur: 1
GlassFish Web container Embedded Impleme base: 2 goal: 1 cur: 2
GlassFish ha-file-store base: 4 goal: 2 cur: 4
Glassfish MBeanServer support base: 25 goal: 16 cur: 25
Glassfish Naming base: 23 goal: 15 cur: 23
JDBC 30 related classes for JDBC Resourc base: 7 goal: 4 cur: 2 SUCCESS!
JDBC 40 related classes for JDBC Resourc base: 7 goal: 4 cur: 2 SUCCESS!
JDBC admin base: 1 goal: 0 cur: 0 SUCCESS!
JMS Module base: 24 goal: 16 cur: 24
JMS admin base: 15 goal: 10 cur: 15
JPA connector for glassfish base: 4 goal: 2 cur: 3
JSR-109 implementation to deploy Metro base: 116 goal: 77 cur: 102
JSR-196 Provider Framework Reference Imp base: 21 goal: 14 cur: 21
JTA Implementation for Glassfish base: 15 goal: 10 cur: 2 SUCCESS!
JTS Implementation for Glassfish base: 274 goal: 182 cur: 146 SUCCESS!
Java EE Connector Architecture Runtime f base: 135 goal: 90 cur: 72 SUCCESS!
Java EE Connector Architecture Work Mana base: 11 goal: 7 cur: 7 SUCCESS!
Java EE Management JSR 77 MEJB base: 6 goal: 4 cur: 6
Java EE dependent public APIs of Glassfi base: 2 goal: 1 cur: 1 SUCCESS!
Kernel Classes base: 102 goal: 68 cur: 67 SUCCESS!
Load-Balancer admin base: 32 goal: 21 cur: 28
OSGi HTTP Service Implementation for Gla base: 4 goal: 2 cur: 4
OSGi/JTA implementation in GlassFish base: 1 goal: 0 cur: 1
Private APIs of Glassfish V3 base: 17 goal: 11 cur: 13
Public APIs of Glassfish V3 base: 14 goal: 9 cur: 13
Registration API base: 4 goal: 2 cur: 4
Registration Impl base: 21 goal: 14 cur: 21
SOAP/TCP integration code base: 1 goal: 0 cur: 1
Scattered Archive APIs of Glassfish base: 6 goal: 4 cur: 6
Security Core Classes base: 142 goal: 94 cur: 148
Test utilities base: 1 goal: 0 cur: 0 SUCCESS!
Upgrade Tool base: 20 goal: 13 cur: 20
Web Container Common Utilities base: 25 goal: 16 cur: 12 SUCCESS!
Web Container HA code base: 43 goal: 28 cur: 39
Web Container Naming Utilities base: 19 goal: 12 cur: 1 SUCCESS!
Web Container glue code base: 109 goal: 72 cur: 107
Web container and GUI plug-in common cla base: 1 goal: 0 cur: 0 SUCCESS!
Web module command line interface base: 9 goal: 6 cur: 8
WebServices Security and JSR 196 SOAP Pr base: 12 goal: 8 cur: 14
WebTier Security Integration base: 2 goal: 1 cur: 3
Weld integration for glassfish base: 12 goal: 8 cur: 12
admin-cli base: 24 goal: 16 cur: 6 SUCCESS!
admin-cli-optional base: 13 goal: 8 cur: 8 SUCCESS!
admin-config-api base: 32 goal: 21 cur: 7 SUCCESS!
admin-launcher base: 16 goal: 10 cur: 11
admin-monitoring base: 33 goal: 22 cur: 33
admin-rest base: 43 goal: 28 cur: 32
admin-server-management base: 60 goal: 40 cur: 58
admin-util base: 48 goal: 32 cur: 42
flashlight-framework base: 26 goal: 17 cur: 19
javax.enterprise.deploy API v.1.2 base: 3 goal: 2 cur: 3
javax.resource API v.1.6 base: 3 goal: 2 cur: 3
javax.security.auth.message API v.1.0 base: 1 goal: 0 cur: 1
javax.security.jacc API v.1.4 base: 24 goal: 16 cur: 24
javax.servlet API v.3.0 base: 5 goal: 3 cur: 3 SUCCESS!
web-ajp base: 61 goal: 40 cur: 61