Velocity Engine throws NullPointer Exception when two people click on the same 
page at the same time for the first time
-----------------------------------------------------------------------------------------------------------------------

                 Key: VELOCITY-536
                 URL: https://issues.apache.org/jira/browse/VELOCITY-536
             Project: Velocity
          Issue Type: Bug
          Components: Engine
    Affects Versions: 1.5
            Reporter: Lei Gu


Multi-thread concurrency issue

During our concurrency testing, we observed NullPointer exceptions being thrown 
when two people hit the same page at the same time for the first time. Upon 
further investigation, it turns out that we need to synchronize the init method 
on ASTDirective, ASTSetDirective, and render method on ASTSetDirective, and 
VelocimacroProxy.

 Basically, the problem is introduced as the following; when two threads 
attempts to parse and render the same template at the same time. Thread1 
finishes parsing first and proceeds to the render method call, while thread 2 
is still busy parsing and will overwrite the existing parse tree that is being 
used by thread 1 for rendering purpose. Thus under certainly condition a 
NullPointer exception will be thrown. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to