[ 
https://issues.apache.org/jira/browse/DAFFODIL-2302?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17067108#comment-17067108
 ] 

Mike Beckerle commented on DAFFODIL-2302:
-----------------------------------------

It is actually worse than any of this.

DataProcessor has a setExternalVariables memo. When many tests are running in 
parallel (the default behavior), but they have different external variables 
settings, there is thread-unsafe state modification in the DataProcessor 
happening.

Basically, external variables don't work unless you set them once and for all, 
for all uses of a DataProcessor, all uses of a Compiler.

> TDML Runner remembers external variable bindings even on subsequent test 
> suites that don't use them.
> ----------------------------------------------------------------------------------------------------
>
>                 Key: DAFFODIL-2302
>                 URL: https://issues.apache.org/jira/browse/DAFFODIL-2302
>             Project: Daffodil
>          Issue Type: Bug
>          Components: TDML Runner
>    Affects Versions: 2.5.0
>            Reporter: Mike Beckerle
>            Assignee: Mike Beckerle
>            Priority: Major
>             Fix For: 2.6.0
>
>
> A schema has two separate TDML test suites.
> The schema has an external variable that has a default value of 2.
> The first TDML test suite binds the variable to 0.
> The second TDML test suite does not bind the variable, but the tests require 
> that the default value of 2 is used.
> Each test suite, run separately works fine.
> When run together the 2nd one fails. It is getting the "0" value that was set 
> for the external variable. 
> Even if you ALSO set the external variable in the 2nd test suite, the bug 
> still occurs. Seemingly because the earlier external variable binding is 
> "winning" for some reason.
> The TDML runner needs to reset state of external variables for each test 
> suite.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to