struts-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Giovanni Azua <g...@imc.nl>
Subject Re: S2 2.1.1 race condition passing request params: bug?
Date Wed, 21 May 2008 17:15:25 GMT
hi,

The race-condition happens only because my simulation process uses the 
execAndWait interceptor:

<action name="SimulationRun" 
class="com.sag.optimizer.ui.web.action.simulation.SimulationRunAction">
 <interceptor-ref name="defaultStack"/>
 <interceptor-ref name="execAndWait">
   <param name="delay">1000</param>
   <param name="delaySleepInterval">1000</param>
 </interceptor-ref>
 <result name="wait" type="tiles">webui.simulationWait</result>
 <result name="success" type="tiles">webui.simulationReport</result>
 <result name="input" type="tiles">${ type.equals('COVARIANT') ? 
'webui.formCovSimulation' : 'webui.formInvSimulation' }</result>
 <result name="error" type="tiles">webui.requestFailed</result>
</action>       

When I change and use the default stack then I can not reproduce the 
race-condition issue anymore.

I am entering a new ticket for this maybe also another one to review the 
code at risk of race conditions using Calendar.getInstance and 
SimpleDateFormat singletons.

regards,
Giovanni

Giovanni Azua wrote:
> hi,
>
> I found XWorkBasicConverter.java is making thread-unsafe use of the
> mutable Calendar and SimpleDateFormat singletons, this could explain the
> race-condition issue.
>
> I am trying to debug it now ...
>
> regards,
> Giovanni
>
> Giovanni Azua wrote:
>   
>> hi,
>>
>> I found in the S2 2.1.1 test build the following scenario that seems to
>> be a bug, please confirm and I will enter a new ticket for it.
>>
>> I have a JSP page that allows the user to run simulations. This page
>> includes among others two datetimepicker fields "beginDate" and "endDate".
>>
>> It is a requirement that the user should be allowed to open e.g. five
>> firefox browser views and execute simultaneously five simulations. The
>> problem is that if the user submits two simulations simultaneously
>> enough the parameters of one request end up being assigned to the other
>> request too meaning there is a race condition somewhere before the
>> parameter gets assigned to the Action.
>>
>> Possible reasons for this:
>>
>> - a Stateful thread-unsafe interceptor
>> - dojo?
>>
>> I would appreciate any directions on this.
>>
>> best regards,
>> Giovanni
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
>>
>>     
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
>   


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Mime
View raw message