Mantis Bugtracker
  

Viewing Issue Advanced Details Jump to Notes ] View Simple ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0005277 [Resin] minor always 11-14-12 10:55 01-15-13 18:16
Reporter cowan View Status public  
Assigned To ferg
Priority normal Resolution fixed Platform
Status closed   OS
Projection none   OS Version
ETA none Fixed in Version 4.0.34 Product Version 4.0.32
  Product Build
Summary 0005277: IllegalArgumentException during loadClass
Description There appears to be a race condition where 2 servlets initializing are attempting to call definePackage on the same package.

definePackage throws IllegalArgumentException if the package is already defined.

We're synchronized on the ClassEntry but not the package.

There is a check for the package in DynamicClassLoader.loadClassEntry using getPackage, but it looks like a race condition is possible.

java.lang.IllegalArgumentException: foo.bar
  at java.lang.ClassLoader.definePackage(ClassLoader.java:1418)
  at com.caucho.loader.DynamicClassLoader.definePackage(DynamicClassLoader.java:1151)
  at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1449)
  at com.caucho.loader.DynamicClassLoader.findClassImpl(DynamicClassLoader.java:1390)
  at com.caucho.loader.DynamicClassLoader.loadClassImpl(DynamicClassLoader.java:1289)
  at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1219)
  at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1203)
Steps To Reproduce
Additional Information Rep by S. Nobuaki
Attached Files

- Relationships

There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
11-14-12 10:55 cowan New Issue
01-15-13 18:16 ferg Assigned To  => ferg
01-15-13 18:16 ferg Status new => closed
01-15-13 18:16 ferg Resolution open => fixed
01-15-13 18:16 ferg Fixed in Version  => 4.0.34


Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
27 total queries executed.
25 unique queries executed.
Powered by Mantis Bugtracker