AOPConstructorJoinpoint and methodHasSubInstanceMetaData
adrian.brock Jul 23, 2008 10:55 AMWhile looking at this issue:
http://www.jboss.com/index.html?module=bb&op=viewtopic&t=139622
I noticed something funny.
These are showing up as a minor hotspot during a boot/shutdown of jboss
java.lang.Class.getMethod(Class.java:1581) org.jboss.metadata.plugins.loader.reflection.AnnotatedElementMetaDataLoader.getComponentMetaDataRetrieval(AnnotatedElementMetaDataLoader.java:146) org.jboss.metadata.plugins.context.AbstractMetaDataContext.getComponentMetaDataRetrieval(AbstractMetaDataContext.java:276) org.jboss.metadata.spi.retrieval.MetaDataRetrievalToMetaDataBridge.getComponentMetaData(MetaDataRetrievalToMetaDataBridge.java:160) org.jboss.aop.microcontainer.integration.AOPConstructorJoinpoint.methodHasSubInstanceMetaData(AOPConstructorJoinpoint.java:172) org.jboss.aop.microcontainer.integration.AOPConstructorJoinpoint.rootHasMethodWithSubInstanceMetaData(AOPConstructorJoinpoint.java:150) org.jboss.aop.microcontainer.integration.AOPConstructorJoinpoint.rootHasSubInstanceMetaData(AOPConstructorJoinpoint.java:130) org.jboss.aop.microcontainer.integration.AOPConstructorJoinpoint.dispatch(AOPConstructorJoinpoint.java:93) org.jboss.beans.info.plugins.AbstractBeanInfo.newInstance(AbstractBeanInfo.java:269) org.jboss.beans.info.plugins.AbstractBeanInfo.newInstance(AbstractBeanInfo.java:263) java.lang.Class.getMethod(Class.java:1581) org.jboss.metadata.plugins.loader.reflection.AnnotatedElementMetaDataLoader.getComponentMetaDataRetrieval(AnnotatedElementMetaDataLoader.java:146) org.jboss.metadata.plugins.context.AbstractMetaDataContext.getComponentMetaDataRetrieval(AbstractMetaDataContext.java:276) org.jboss.metadata.spi.retrieval.MetaDataRetrievalToMetaDataBridge.getComponentMetaData(MetaDataRetrievalToMetaDataBridge.java:160) org.jboss.aop.microcontainer.integration.AOPDependencyBuilder.getMetaDataMethodAnnotationDependencies(AOPDependencyBuilder.java:234) org.jboss.aop.microcontainer.integration.AOPDependencyBuilder.getMethodAnnotationDependencies(AOPDependencyBuilder.java:211) org.jboss.aop.microcontainer.integration.AOPDependencyBuilder.getAnnotationDependencies(AOPDependencyBuilder.java:154) org.jboss.aop.microcontainer.integration.AOPDependencyBuilder.getDependencies(AOPDependencyBuilder.java:132) org.jboss.kernel.plugins.dependency.DescribeAction.uninstallActionInternal(DescribeAction.java:94) org.jboss.kernel.plugins.dependency.InstallsAwareAction.uninstallAction(InstallsAwareAction.java:157)
What's funny is I'm also seeing this
java.lang.Throwable.fillInStackTrace(Throwable.java:Unknown line) java.lang.Throwable.<init>(Throwable.java:196) java.lang.Exception.<init>(Exception.java:41) java.lang.NoSuchMethodException.<init>(NoSuchMethodException.java:32) java.lang.Class.getMethod(Class.java:1581) org.jboss.metadata.plugins.loader.reflection.AnnotatedElementMetaDataLoader.getComponentMetaDataRetrieval(AnnotatedElementMetaDataLoader.java:146) org.jboss.metadata.plugins.context.AbstractMetaDataContext.getComponentMetaDataRetrieval(AbstractMetaDataContext.java:276) org.jboss.metadata.spi.retrieval.MetaDataRetrievalToMetaDataBridge.getComponentMetaData(MetaDataRetrievalToMetaDataBridge.java:160) org.jboss.aop.microcontainer.integration.AOPConstructorJoinpoint.methodHasSubInstanceMetaData(AOPConstructorJoinpoint.java:172) org.jboss.aop.microcontainer.integration.AOPConstructorJoinpoint.rootHasMethodWithSubInstanceMetaData(AOPConstructorJoinpoint.java:150)
NOTE: This is just using hprof to run cpu samples,
so I'm guessing the reason for the hotspot is that it is constructing
the exception a lot.
The sampling (at 10ms intervals) caught it 5 times in the example I'm quoting from.