• Bug
  • Status: Reopened
  • 1 Critical
  • Resolution:
  • lima
  • Reporter: teck
  • June 15, 2010
  • 0
  • Watchers: 0
  • July 27, 2010

Attachments

Description

This problem is new starting with 3.2.2 (and the 3.2.1 patches that allowed jdk 6u18+).

Anything that relies on class exporting (tim-ehcache in 3.2 does in particular) will fail to work.

The reason is that the required instrumentation is not added resin’s base DynamicClassLoader implementation. This does not occur since that class is loaded before the TC client is running (we hook the initialization of the system class loader to start the TC client). Since resin replaces the system class loader the type gets loaded early and is not instrumented.

Newer versions of tim-ehcache that rely on the terracotta toolkit no longer need class export to work, but there might be other class exports out there that will still be broken.

This problem isn’t necessarily specific to resin, rather any use case where the system class loader is replaced

Comments

Tim Eck 2010-06-15

This patch works although it needs some cleanup and has only had minimal testing

In particular the adapated class dumper will not dump these adapted class loader types which is a little annoyin

Steve Harris 2010-06-15

The plan is to just fix this for 3.3

Tim Eck 2010-06-27

the fix for this introduces some gnarly deadlocks, changes are rollback so this is still open

Fiona OShea 2010-07-27

On 7/20/2010 11:59 AM, Li Ma wrote:

I’m trying to test this issue on the new 3.3. But ran into other issues with Ehcache in DSO mode. Still investigating what’ sgoing on now. As soon as I can verify that the issue is gone in 3.3., I will put a comment in it and close the JIRA.

Thanks!

Li

On Jul 20, 2010, at 2:28 PM, Fiona O’Shea wrote:

The associated Jira is not resolved for 3.3 https://jira.terracotta.org/jira/browse/CDV-1487 due some other issues

Li did you work around the issue, or is it still a problem? Fiona

Li Ma 2010-07-27

It’s confirmed, The issue is gone in TC 3.3.

Thanks!