resource busy (file is locked) with multi-threaded file ops
|Reported by:||StefanWehr||Owned by:||simonmar|
|Type of failure:||Incorrect result at runtime||Test Case:|
|Related Tickets:||Differential Rev(s):|
The sample program attached creates 10 worker threads, each of which takes a different file name. Each worker thread then writes the file, reads the file, writes the file and so on. File operations use *strict IO*.
When compiled without
-threaded everything is ok, that is, the program goes on forever without any error messages.
-threaded, the program quickly fails with
ERROR in worker 4: 4: openBinaryFile: resource busy (file is locked).
Tested under Mac OSX 10.8.2 and Linux. Tested with both GHC 7.6.1 and 7.6.2.
I could reproduce the bug without +RTS -N -RTS and with this RTS option. A colleague of mine reports that it needs +RTS -N2 -RTS to reproduce the bug.
Change History (8)
comment:4 Changed 4 years ago by
|Component:||Runtime System → libraries/base|
|Owner:||set to simonmar|
|Priority:||normal → high|