trifork / erjang

A JVM-based Erlang VM
http://www.erjang.org
Apache License 2.0
726 stars 62 forks source link

Process lifecycle consistency #77

Closed eriksoe closed 8 years ago

eriksoe commented 10 years ago

This is an improvement in reliability, and the code is ready for review.

krestenkrab commented 10 years ago

This is extremely tricky to get right, and I have previously fixed numerous issues in this code. Glad you're working on it :+1:

I'd like to be able to validate these various exit conditions (and races) somehow before we merge; perhaps there is a snippet of code in the standard tests that expose these various exit conditions?

eriksoe commented 10 years ago

In ./src/test/erl/properties/simple/process_relation_tests.erl, at least one test used to fail (spawn/link race). And ./src/test/erl/properties/simple/ets_race_tests.erl demonstrates the (hopefully former) risk of leaking ETS tables.