#1612 ErrorList not thread safe, registerErrorSource vs addError

closed-fixed
None
5
2012-06-02
2012-05-31
No

I prepared a macro (attached) that attacks ErrorList from 2 threads.
T1: feeds the es (error source) with n errors (numbered 1..n), then registers it
T2: adds additional n errors to es (numbered n+1..2*n), while T1 registers es

A) For small n (10): the result is as expected, number of errors is 2*n
B) For medium n (80): I observed duplicated errors, e.g. 89, 90. Hard to reproduce, but one just needs to repeat and repeat watching error count
C) For big n (200): only errors >n appear

Better reproducibility of case B would be achieved with proper placement of compDelay, but it needs investigation of the cause first.

ErrorList is documented to be thread safe, so these things should not happen.

Discussion

  • Jarek Czekalski

    Jarek Czekalski - 2012-06-02

    This was fixed together with a deadlock condition in r21749.

     
  • Jarek Czekalski

    Jarek Czekalski - 2012-06-02
    • status: open --> closed-fixed
     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks