RE: [aspectwerkz-dev] stack overflow in cvs head
"Jonas Boner" <[email protected]>
| Newsgroups | gmane.comp.java.aspectwerkz.devel |
|---|---|
| Message-ID | <[email protected]> |
You said it is on HEAD? Does it happen on 1.0beta1? - Jonas > -----Original Message----- > From: christoph sturm [mailto:chrisml-Ws/[email protected]] > Sent: Monday, July 19, 2004 11:03 AM > To: [email protected] > Cc: Jonas Boner > Subject: Re: [aspectwerkz-dev] stack overflow in cvs head > > hey jonas! > > this happens even without any defined aspects, just by > running the class in AW online mode (-Xaspectwerkz) > > regards > chris > > On Mon, 19 Jul 2004 08:43:11 +0100, Jonas Boner > <[email protected]> wrote: > > Hi Chris > > > > Great that you found the bug. I will look into this. > > Which pointcuts are you using and together with which advices? > > Thanks a lot. > > > > -Jonas > > > > > > > > > -----Original Message----- > > > From: christoph sturm [mailto:chrisml-Ws/[email protected]] > > > Sent: Sunday, July 18, 2004 9:30 PM > > To: > [email protected] > > Subject: Re: > [aspectwerkz-dev] stack overflow in cvs head > > > > hey > > > > > i have now isolated the problem further, and found a > really > > easy way to reproduce it: > > > > > > this class: > > > > > > > > > public class Guess { > > > > > > public Guess(Guess no) { > > > } > > > > > > static public void main(String[] args) { > > > } > > > } > > > > > > also produces a stacktrace when its preprocessed. > > > so i think that the preprocessor fails if a class has no > > > default constructor. > > > > > > > > > regards > > > chris > > > > > > > > > > > > On Tue, 13 Jul 2004 16:37:12 +0200, christoph sturm > > > <chrisml-Ws/[email protected]> wrote: > > > > hi alex! > > > > > > > > i was just running a jmock based mock testsuite. > jmock > > uses cglib to > > > create mockobjects. > > > > > > > > this test fails here: > > > > ----- > > > > package com.schaumwelt.aspects; > > > > > > > > import org.jmock.cglib.MockObjectTestCase; > > > > > > > > import java.util.Date; > > > > > > > > public class AspectwerkzTest extends > MockObjectTestCase > > > { > > > > public void testNothing() > > > > { > > > > mock(Date.class); > > > > } > > > > } > > > > ----- > > > > you just need jmock 1.0.1 binary distribution, cglib > 2.0 > > is included. > > > > > > > > thx > > > > chris > > > > > > > > > > > > > > > > On Tue, 13 Jul 2004 08:47:57 -0500 (CDT), Alex > > > <alex-he/e8N7AIe/[email protected]> wrote: > > > > > Hi > > > > > Do you think I can reproduce it,just by adding > some > > aspect on the > > cglib > > > > code base, or > did you have it when running Hibernate or > > something ? > > > > > I need to know if you had it out of the box or for > on the fly > > generated > > > > classes. > > > > > May be you can guess it from the names printed out > > > there if you are > > > > familiar with cglib. > > > > > (net.sf.cglib.core.Block, > net.sf.cglib.core.EmitUtils$12 etc) > > > > > > > > > Alex > > > > > > > > > > > > > > > > > > > > > ----- Original Message ----- > > > > > hi all! > > > > > > > > > > > > aw3 cvs head produces stack overflow exceptions > since > > yesterday > > > evening: > > > > > > > > > > > > AspectWerkz - WARN - Error pre-processing class > > > > > > net.sf.cglib.core.ClassEmitter in > Thread[main,5,main] > > > > > java.lang.StackOverflowError > > > > > > AspectWerkz - WARN - Error pre-processing class > > > > > > net.sf.cglib.core.CodeEmitter in > Thread[main,5,main] > > > > > java.lang.StackOverflowError > > > > > > AspectWerkz - WARN - Error pre-processing class > > > > > > net.sf.cglib.core.RemappingCodeVisitor in > Thread[main,5,main] > > > > > java.lang.StackOverflowError > > > > > > at > > > > > java.lang.ref.ReferenceQueue$Lock.<init>(ReferenceQueue.java:36) > > > > > > at > > > > > java.lang.ref.ReferenceQueue$Lock.<init>(ReferenceQueue.java:36) > > > > > > at > > > java.lang.ref.ReferenceQueue.<init>(ReferenceQueue.java:37) > > > > > > at > java.util.WeakHashMap.<init>(WeakHashMap.java:151) > > > > > > at > > > > > > <snip/> > > > > > > at > > > > > > > > > > > > > org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistClass > > > Info.<init>(JavassistClassInfo.java:148) > > > > > > at > > > > > > > > > > > > > org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistClass > > > Info.getClassInfo(JavassistClassInfo.java:182) > > > > > > at > > > > > > > > > > > > > org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistCodeI > > > nfo.getParameterTypes(JavassistCodeInfo.java:62) > > > > > > at > > > > > > > > > > > > > org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistConst > > > ructorInfo.addAnnotations(JavassistConstructorInfo.java:134) > > > > > > at > > > > > > > > > > > > > org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistConst > > > ructorInfo.<init>(JavassistConstructorInfo.java:40) > > > > > > at > > > > > > > > > > > > > org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistClass > > > Info.<init>(JavassistClassInfo.java:148) > > > > > > at > > > > > > > > > > > > > org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistClass > > > Info.getClassInfo(JavassistClassInfo.java:182) > > > > > > at > > > > > > > > > > > > > org.codehaus.aspectwerkz.reflect.impl.javassist.JavassistCodeI > > > nfo.getParameterTypes(JavassistCodeInfo.java:62) > > > > > > AspectWerkz - WARN - Error pre-processing class > > > > > > net.sf.cglib.core.EmitUtils$12 in > Thread[main,5,main] > > > > > java.lang.StackOverflowError > > > > > > AspectWerkz - WARN - Error pre-processing class > > > net.sf.cglib.core.Block > > > > > in > Thread[main,5,main] > > > > > java.lang.StackOverflowError > > > > > > AspectWerkz - WARN - Error pre-processing class > > > > > > net.sf.cglib.reflect.FastClassEmitter$4 in > Thread[main,5,main] > > > > > java.lang.StackOverflowError > > > > > > AspectWerkz - WARN - Error pre-processing class > > > > > > net.sf.cglib.core.EmitUtils$16 in > Thread[main,5,main] > > > > > java.lang.StackOverflowError > > > > > > > > > > > Maybe this has somethig to do with > cglib. I have > > actually no idea > > > why aw > > > > > > wants to pre process the cglib classes, because i > > have > only no > > caller > > > > > side pointcuts, and all my > pointcuts use annotations, > > and the cglib > > > > > > classes arent annotated. > > > > > > > > > > > > regards > > > > > > chris > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > -- > [email protected] >