#1612 ErrorList not thread safe, registerErrorSource vs addError


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.


  • 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