Issue Details (XML | Word | Printable)

Key: SFOS-1057
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Steve Loughran
Reporter: Steve Loughran
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
SmartFrog

Assert component reference resolution logic is wrong

Created: 16/Jan/09 11:48 AM (GMT)   Updated: 16/Jan/09 02:22 PM (GMT)
Component/s: .sfCore
Affects Version/s: 3.17.010
Fix Version/s: 3.17.010

Time Tracking:
Original Estimate: 1 hour
Original Estimate - 1 hour
Remaining Estimate: 1 hour
Remaining Estimate - 1 hour
Time Spent: Not Specified
Remaining Estimate - 1 hour

Issue Links:
caused
 

Compatibility: may break builds or test process


 Description  « Hide
The Assert component doesn't do the right thing with the reference attribute. It should always take a LAZY reference to a deployed prim, and resolve something from there. The only reason this hasn't shown up before is that when the resolution was failing, the component was silently skipping the whole process, making the test appear succesful.

 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Steve Loughran added a comment - 16/Jan/09 11:49 AM (GMT)
SFOS-1056 is not the cause of this, it merely showed that the problem existed

Steve Loughran added a comment - 16/Jan/09 11:49 AM (GMT)
stack trace
SmartFrogLifecycleException:: [sfStart] HOST morzine.hpl.hp.com:rootProcess:testAttributeFound:asserts, cause: SmartFrogAssertionException:: The reference does not resolve SmartFrogResolutionException:: Unresolved Reference: HERE reference, source: HOST morzine.hpl.hp.com:rootProcess:testAttributeFound:asserts, referenceValueResolved: 'BooleanValuesImpl_Stub[UnicastRef [liveRef: [endpoint:[127.0.1.1:39929](local),objID:[303a4988:11edb63a731:-7f8e, 4255924036979910278]]]]', referenceValueClassType: class org.smartfrog.test.system.assertions.BooleanValuesImpl, defaultValueClassType: org.smartfrog.sfcore.reference.Reference, Illegal ClassType. Expecting type "[org.smartfrog.sfcore.reference.Reference]" and got "BooleanValuesImpl_Stub[UnicastRef [liveRef: [endpoint:[127.0.1.1:39929](local),objID:[303a4988:11edb63a731:-7f8e, 4255924036979910278]]]] [class org.smartfrog.test.system.assertions.BooleanValuesImpl]", SmartFrog 3.17.005dev (2009-01-15 17:42:59 GMT), SmartFrog 3.17.005dev (2009-01-15 17:42:59 GMT), data: Failed object class: org.smartfrog.services.assertions.AssertComponent, primSFCompleteName: HOST morzine.hpl.hp.com:rootProcess:testAttributeFound, primContext: included, reference: HOST morzine.hpl.hp.com:rootProcess:testAttributeFound, primContext: included
at org.smartfrog.sfcore.common.SmartFrogLifecycleException.forward(SmartFrogLifecycleException.java:232)
at org.smartfrog.sfcore.common.SmartFrogLifecycleException.sfStart(SmartFrogLifecycleException.java:126)
at org.smartfrog.sfcore.compound.CompoundImpl.sfStartChildren(CompoundImpl.java:665)
at org.smartfrog.sfcore.compound.CompoundImpl.sfStart(CompoundImpl.java:634)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
at sun.rmi.transport.Transport$1.run(Transport.java:159)
at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)
at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:142)
at org.smartfrog.sfcore.compound.CompoundImpl_Stub.sfStart(Unknown Source)
at org.smartfrog.sfcore.common.ActionDeploy.Deploy(ActionDeploy.java:168)
at org.smartfrog.sfcore.common.ActionDeploy.doDeploy(ActionDeploy.java:297)
at org.smartfrog.sfcore.common.ActionDeploy.execute(ActionDeploy.java:272)
at org.smartfrog.sfcore.common.ConfigurationAction.execute(ConfigurationAction.java:113)
at org.smartfrog.sfcore.common.ConfigurationDescriptor.execute(ConfigurationDescriptor.java:1076)
at org.smartfrog.SFSystem.runConfigurationDescriptor(SFSystem.java:367)
at org.smartfrog.test.SmartFrogTestBase.deployApplication(SmartFrogTestBase.java:618)
at org.smartfrog.test.SmartFrogTestBase.deployExpectingSuccess(SmartFrogTestBase.java:556)
at org.smartfrog.test.system.assertions.AssertionsTest.testAttributeFound(AssertionsTest.java:117)
Caused by: SmartFrogAssertionException:: The reference does not resolve SmartFrogResolutionException:: Unresolved Reference: HERE reference, source: HOST morzine.hpl.hp.com:rootProcess:testAttributeFound:asserts, referenceValueResolved: 'BooleanValuesImpl_Stub[UnicastRef [liveRef: [endpoint:[127.0.1.1:39929](local),objID:[303a4988:11edb63a731:-7f8e, 4255924036979910278]]]]', referenceValueClassType: class org.smartfrog.test.system.assertions.BooleanValuesImpl, defaultValueClassType: org.smartfrog.sfcore.reference.Reference, Illegal ClassType. Expecting type "[org.smartfrog.sfcore.reference.Reference]" and got "BooleanValuesImpl_Stub[UnicastRef [liveRef: [endpoint:[127.0.1.1:39929](local),objID:[303a4988:11edb63a731:-7f8e, 4255924036979910278]]]] [class org.smartfrog.test.system.assertions.BooleanValuesImpl]", SmartFrog 3.17.005dev (2009-01-15 17:42:59 GMT)
at org.smartfrog.services.assertions.AssertComponent.checkAssertions(AssertComponent.java:270)
at org.smartfrog.services.assertions.AssertComponent.sfStart(AssertComponent.java:454)
at org.smartfrog.sfcore.compound.CompoundImpl.sfStartChildren(CompoundImpl.java:661)
at org.smartfrog.sfcore.compound.CompoundImpl.sfStart(CompoundImpl.java:634)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
at sun.rmi.transport.Transport$1.run(Transport.java:159)
at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)

Steve Loughran added a comment - 16/Jan/09 02:22 PM (GMT)
This is now fixed