weblogic.utils.AssertionError: ***** ASSERTION FAILED *****[ invalid assig

2011-04-12  张林 

ENV: Weblogic 8.1.6
OS: Redhat 5.4
Oracle: 10gR2
JDK: 1.4.2_19
weblogic.utils.AssertionError: ***** ASSERTION FAILED *****[ invalid assig

does any one know why we get this call stack? what does this mean? We didn't change our deployment descriptor but it just comes up suddenly.
weblogic.utils.AssertionError: ***** ASSERTION FAILED *****[ invalid assignment from 'Object' to 'Object' ]
at weblogic.utils.Debug.assertion(Debug.java:57)
at weblogic.utils.classfile.expr.LocalVariableExpression.codeAssign(LocalVariableExpression.java:38)
at weblogic.utils.classfile.expr.AssignStatement.code(AssignStatement.java:28)
at weblogic.utils.classfile.expr.CompoundStatement.code(CompoundStatement.java:26)
at weblogic.utils.classfile.CodeAttribute.setCode(CodeAttribute.java:44)
at weblogic.rmi.internal.StubGenerator.addMethodCode(StubGenerator.java:457)
at weblogic.rmi.internal.StubGenerator.<init>(StubGenerator.java:125)
at weblogic.rmi.internal.StubGenerator.<init>(StubGenerator.java:86)
at weblogic.rmi.internal.StubGenerator.getStubClass(StubGenerator.java:769)
at weblogic.rmi.internal.StubGenerator.generateStub(StubGenerator.java:810)
at weblogic.rmi.internal.StubGenerator.generateStub(StubGenerator.java:797)
at weblogic.rmi.extensions.StubFactory.getStub(StubFactory.java:79)
at weblogic.rmi.extensions.server.ServerHelper.exportObject(ServerHelper.java:232)
at weblogic.rmi.server.UnicastRemoteObject.exportObject(UnicastRemoteObject.java:45)
at weblogic.rmi.cluster.ReplicaAwareRemoteObject.initialize(ReplicaAwareRemoteObject.java:77)
at weblogic.rmi.cluster.ReplicaAwareRemoteObject.<init>(ReplicaAwareRemoteObject.java:50)
at weblogic.rmi.cluster.ClusterableRemoteObject.<init>(ClusterableRemoteObject.java:79)
at weblogic.rmi.cluster.ClusterableRemoteBinderFactory.getStateToBind(ClusterableRemoteBinderFactory.j
ava:45)
at weblogic.jndi.internal.WLNamingManager.getReplacement(WLNamingManager.java:180)
at weblogic.jndi.internal.WLNamingManager.getStateToBind(WLNamingManager.java:154)
at weblogic.jndi.internal.ServerNamingNode.rebindHere(ServerNamingNode.java:168)
at weblogic.jndi.internal.BasicNamingNode.rebind(BasicNamingNode.java:382)
at weblogic.jndi.internal.WLEventContextImpl.rebind(WLEventContextImpl.java:118)
at weblogic.ejb20.internal.StatelessEJBHome.activate(StatelessEJBHome.java:115)
at weblogic.ejb20.deployer.ClientDrivenBeanInfoImpl.activate(ClientDrivenBeanInfoImpl.java:1096)
at weblogic.ejb20.deployer.EJBDeployer.activate(EJBDeployer.java:1362)
at weblogic.ejb20.deployer.Deployer.deploy(Deployer.java:270)
at weblogic.j2ee.EJBComponent.deploy(EJBComponent.java:83)
at weblogic.j2ee.Application.deploy(Application.java:429)
at weblogic.j2ee.J2EEService.deployApplication(J2EEService.java:241)
at weblogic.management.mbeans.custom.Application.setLocalDeployed(Application.java:2946)
at weblogic.management.mbeans.custom.Application.setDeployed(Application.java:2864)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at weblogic.management.internal.DynamicMBeanImpl.invokeSetter(DynamicMBeanImpl.java:1638)
at weblogic.management.internal.DynamicMBeanImpl.setAttribute(DynamicMBeanImpl.java:1085)
at weblogic.management.internal.ConfigurationMBeanImpl.setAttribute(ConfigurationMBeanImpl.java:337)
at com.sun.management.jmx.MBeanServerImpl.setAttribute(MBeanServerImpl.java:1358)
at com.sun.management.jmx.MBeanServerImpl.setAttribute(MBeanServerImpl.java:1333)
at weblogic.management.internal.RemoteMBeanServerImpl.private_setAttribute(RemoteMBeanServerImpl.java:
430)
at weblogic.management.internal.RemoteMBeanServerImpl.setAttribute(RemoteMBeanServerImpl.java:386)
at weblogic.management.internal.RemoteMBeanServerImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:144)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:415)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:30)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)


at weblogic.management.internal.ConfigurationMBeanImpl.updateConfigMBeans(ConfigurationMBeanImpl.java:
1034)
at weblogic.management.internal.ConfigurationMBeanImpl.setAttribute(ConfigurationMBeanImpl.java:340)
at com.sun.management.jmx.MBeanServerImpl.setAttribute(MBeanServerImpl.java:1358)
at com.sun.management.jmx.MBeanServerImpl.setAttribute(MBeanServerImpl.java:1333)
at weblogic.management.internal.RemoteMBeanServerImpl.private_setAttribute(RemoteMBeanServerImpl.java:
430)
at weblogic.management.internal.RemoteMBeanServerImpl.setAttribute(RemoteMBeanServerImpl.java:386)
at weblogic.management.internal.RemoteMBeanServerImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:144)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:415)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:30)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)

The solution to this issue as documented in S-21334 is to:

---
Use the "-Xint" option to the JVM.
This appears to be an issue with the optimization in the Sun JVM 1.4.x versions.

(Our choose)
Alternatively create a .hotspot_compiler file in the working directory of your domain with the content below:
exclude weblogic/utils/classfile/expr/LocalVariableExpression codeAssign
exclude weblogic/utils/classfile/expr/AssignStatement <init>


There is another option and that is to try JRockit JVM.
fyi,
http://forums.oracle.com/forums/thread.jspa?threadID=756539&tstart=432
714°/7147 人阅读/0 条评论 发表评论

登录 后发表评论