x10-lang / x10

Core implementation of X10 programming language including compiler, runtime, class libraries, sample programs and test suite
Eclipse Public License 1.0
70 stars 15 forks source link

Avoiding team false invalidation by emulated collectives #28

Closed shamouda closed 6 years ago

shamouda commented 6 years ago

Team was vulnerable to false invalidation by sleepUntil(..). While a parent is resetting its variables at the end of a team operation, a waiting child that started the next team operation may read the reset variables and consider them invalid. The problem was fixed in by re-checking the conditions that lead to invalidating a team in sleepUntil(..).