From: Steve L. (JIRA) <ji...@sm...> - 2006-10-18 13:54:14
|
[ http://jira.smartfrog.org/jira/browse/SFOS-23?page=all ] Steve Loughran resolved SFOS-23. -------------------------------- Fix Version/s: 3.10.x Resolution: Fixed Fixed in SVN_HEAD. > LAZY vector evaluation is broken > -------------------------------- > > Key: SFOS-23 > URL: http://jira.smartfrog.org/jira/browse/SFOS-23 > Project: SmartFrog > Issue Type: Bug > Components: .sfCore > Affects Versions: 3.10.x > Environment: Linux, Java1.5 > Reporter: Steve Loughran > Assigned To: Julio Guijarro > Priority: Critical > Fix For: 3.10.x > > > take a component with a lazy entry: > DeployApiEndpoint extends AlpineEndpoint { > pivotHandler TBD; > handlers [ > StatsHandler:classname, > LogCurrentMessageHandler:classname, > AddressHandler:classname, > MustUnderstandChecker:classname, > LAZY pivotHandler:classname, > LogCurrentMessageHandler:classname > ]; > This used to work, but now it has stopped; I get an unresolved reference LogCurrentMessageHandler:classname; > A dump of the component state during resolution shows this > > LAZY APPLY {sfFunctionClass "org.smartfrog.sfcore.languages.sf.functions.Vector"; > unique4951 "org.smartfrog.services.deployapi.transport.endpoints.alpine.StatsHandler"; > unique4952 "org.smartfrog.projects.alpine.handlers.LogCurrentMessageHandler"; > unique4953 "org.smartfrog.projects.alpine.handlers.AddressHandler"; > unique4954 "org.smartfrog.projects.alpine.handlers.MustUnderstandChecker"; > unique4955 LAZY pivotHandler:classname; > unique4956 LogCurrentMessageHandler:classname; > } > If you take away the LAZY element in the list, all works. Somehow, the moment > one lazy ref is hit, all following references are deferred, even when they > should not be. If you add more references, all of them stay unresolved. > LAZY APPLY {sfFunctionClass "org.smartfrog.sfcore.languages.sf.functions.Vector"; > unique4951 "org.smartfrog.services.deployapi.transport.endpoints.alpine.StatsHandler"; > unique4952 "org.smartfrog.projects.alpine.handlers.LogCurrentMessageHandler"; > unique4953 "org.smartfrog.projects.alpine.handlers.AddressHandler"; > unique4954 "org.smartfrog.projects.alpine.handlers.MustUnderstandChecker"; > unique4955 LAZY pivotHandler:classname; > unique4956 LogCurrentMessageHandler:classname; > unique4957 MustUnderstandChecker:classname; > } > There is no workaround other than "dont have any non lazy elements in the list after the first LAZY element" -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.smartfrog.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |