[Smartfrog.org-JIRA] Created: (SFOS-23) LAZY vector evaluation is broken

"Steve Loughran (JIRA)" <[email protected]> Tue, 17 Oct 2006 18:54:15 +0100 (BST)
Newsgroups gmane.comp.java.smartfrog.devel
Message-ID <32137367.1161107655846.JavaMail.tomcat@webapps-ext-br1.hpl.hp.com>
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


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

        

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642