openjpa-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rick Curtis <curti...@gmail.com>
Subject Re: JDK 1.7 seems to be causing an issue with latest snapshot
Date Wed, 17 Jul 2013 13:23:00 GMT
> 1) jdk 1.7 has a bug OR
> 2) openjpa utilized functionality that was in 1.6 but was a bug fix in 1.7
> and hence openjpa can not depend on the previous behavior
For a point of reference, I believe this all works on IBM JDK 1.6 AND 1.7


On Tue, Jul 16, 2013 at 5:19 PM, garpinc <garpinc@yahoo.com> wrote:

> Ok I've found exactly where openjpa operates differently in JDK 1.6 and JDK
> 1.7
>
> Either:
> 1) jdk 1.7 has a bug OR
> 2) openjpa utilized functionality that was in 1.6 but was a bug fix in 1.7
> and hence openjpa can not depend on the previous behavior
>
> Here is the stack trace in 1.6 where ClassCircularityError is raised and
> later caught in PCClassFileTransformer.needsEnhance as a Linkage error on
> line 207 (trunk):
>
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner at localhost:53304
>         Thread [main] (Suspended (breakpoint at line 36 in LinkageError))
>                 owns: Launcher$AppClassLoader  (id=1166)
>                 ClassCircularityError(LinkageError).<init>(String) line: 36
>                 ClassCircularityError.<init>(String) line: 32
>                 Class<T>.forName0(String, boolean, ClassLoader) line: not
> available
> [native method]
>                 Class<T>.forName(String, boolean, ClassLoader) line: 249
>                 TemporaryClassLoader.loadClass(String, boolean) line: 78
>                 TemporaryClassLoader.loadClass(String) line: 44
>                 Class<T>.forName0(String, boolean, ClassLoader) line: not
> available
> [native method]
>                 Class<T>.forName(String, boolean, ClassLoader) line: 249
>                 PCClassFileTransformer.needsEnhance(String, Class, byte[])
> line: 198
>                 PCClassFileTransformer.transform0(String, Class, byte[])
> line: 139
>                 PCClassFileTransformer.transform(ClassLoader, String,
> Class,
> ProtectionDomain, byte[]) line: 126
>                 TransformerManager.transform(ClassLoader, String, Class,
> ProtectionDomain,
> byte[]) line: 169
>                 InstrumentationImpl.transform(ClassLoader, String, Class,
> ProtectionDomain, byte[], boolean) line: 365
>                 ClassLoader.defineClass1(String, byte[], int, int,
> ProtectionDomain,
> String, boolean) line: not available [native method]
>
> In JDK 1.7 the error is not raised and hence not caught and if you step
> into
> the forName0 you'll instead end up a the following stack position:
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner at localhost:53419
>         Thread [main] (Suspended)
>                 owns: Object  (id=4827)
>                 String.lastIndexOf(int) line: 1591
>                 Launcher$AppClassLoader.loadClass(String, boolean) line:
> 301
>                 Launcher$AppClassLoader(ClassLoader).loadClass(String)
> line: 357
>                 Class<T>.forName0(String, boolean, ClassLoader) line: not
> available
> [native method]
>                 Class<T>.forName(String, boolean, ClassLoader) line: 270
>                 TemporaryClassLoader.loadClass(String, boolean) line: 78
>                 TemporaryClassLoader.loadClass(String) line: 44
>                 Class<T>.forName0(String, boolean, ClassLoader) line: not
> available
> [native method]
>                 Class<T>.forName(String, boolean, ClassLoader) line: 270
>                 PCClassFileTransformer.needsEnhance(String, Class, byte[])
> line: 198
>                 PCClassFileTransformer.transform0(String, Class, byte[])
> line: 139
>                 PCClassFileTransformer.transform(ClassLoader, String,
> Class,
> ProtectionDomain, byte[]) line: 126
>                 TransformerManager.transform(ClassLoader, String, Class,
> ProtectionDomain,
> byte[]) line: 188
>                 InstrumentationImpl.transform(ClassLoader, String, Class,
> ProtectionDomain, byte[], boolean) line: 424
>                 ClassLoader.defineClass1(String, byte[], int, int,
> ProtectionDomain,
> String) line: not available [native method]
>
>
>
>
>
> --
> View this message in context:
> http://openjpa.208410.n2.nabble.com/JDK-1-7-seems-to-be-causing-an-issue-with-latest-snapshot-tp7581417p7584443.html
> Sent from the OpenJPA Users mailing list archive at Nabble.com.
>



-- 
*Rick Curtis*

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message