Issue Details (XML | Word | Printable)

Key: GLASSFISH-18415
Type: Task Task
Status: Open Open
Priority: Major Major
Assignee: Jennifer Chou
Reporter: Joe Di Pol
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
glassfish

Montioring/utils: Inspect JDK 7 getMethods()/getDeclaredMethods() usage

Created: 28/Feb/12 05:05 PM   Updated: 28/Feb/12 05:05 PM
Component/s: monitoring
Affects Version/s: 4.0_b25
Fix Version/s: None

Time Tracking:
Not Specified

Tags:
Participants: Jennifer Chou and Joe Di Pol


 Description  « Hide

Recent JDK 7 releases have altered the order of methods returned by the
Class.getMethods() and Class.getDeclaredMethods() calls. The order is
no longer stable and can change from one JVM run to the next.

This caused a number of sporadic bugs to appear during 3.1.2 development
when running with JDK 7. Those have been fixed, but further inspection
of the source has found a number of cases where we use getMethods() and
getDeclaredMethods().

Each of these cases should be visually inspected to see if the code is
making any assumptions on the order of methods returned by get*Methods().
In particular it should handle the case of multiple methods having the
same name.

For more details on what to look for and how to fix it see this document:

https://wikis.oracle.com/display/GlassFish/Method+Ordering+from+Class.getMethods

Please inspect the following files for their use of getMethods() /
getDeclaredMethods() to ensure the code is not making any assumptions
with respect to the order of methods returned. Create bugs for
any issues that need to be fixed and link them to this task. Once you
have completed inspection update this task with status and close it.

Common Utilities
    CommandModelImpl.java
    GenericCommandModel.java
    ObjectAnalyzer.java
    Utility.java
GlassFish ORB connector implementation
    GenericStatsImpl.java
admin-monitoring
    StatsProviderManagerDelegateImpl.java
flashlight-framework
    DTraceMethodFinder.java
    FlashlightProbeClientMediator.java
    FlashlightProbeProviderFactory.java
    FlashlightUtils.java
    ProviderImplGenerator.java
stats77
    GenericStatsImpl.java


There are no comments yet on this issue.