[erlang-bugs] Dialyzer Bugs
Kostis Sagonas
kostis@REDACTED
Tue Jul 22 07:24:49 CEST 2014
On 07/22/2014 01:55 AM, Michael Truog wrote:
> There are two dialyzer bugs that I ran into recently:
> 1) In 17.1 passing a symbolic link to the --plt option doesn't work as
> it once did (it is still ok to have ~/.dialyzer_plt as a symbolic link)
An example, or even better a git bisect, that shows the regression
compared to some previous version would help here.
> 2) -Wrace_conditions causes the dialyzer execution time to vary with the
> possibility that dialyzer execution will not finish. The memory of
> dialyzer can also grow to much larger sizes >1GB while this occurs. I
> had this occur awhile ago with R16B03-1 while leaving dialyzer to run
> and it refused to finish after roughly 40 minutes when a normal run
> takes 1 minute (roughly). I recently talked to a person on IRC
> (freenode in the #erlang room) which had the same problem where the
> person's dev machine was affected but the CI server never had any
> problem completing the dialyzer runs. It seems like this appears only
> when a sufficiently large amount of Erlang source code is used for the
> dialyzer run. The person suspected that a corrupt file might have
> caused the problem to appear, but I doubted that -Wrace_conditions would
> be modifying any state on disk (it wouldn't be changing a PLT file,
> right?).
This is a known issue. The analysis that finds data races performs
intra-procedural data flow analysis and can sometimes explode in time.
Hence it is not enabled by default. Enable it at your own risk.
Kostis
More information about the erlang-bugs
mailing list