Skip to content

Commit

Permalink
Update git submodules
Browse files Browse the repository at this point in the history
* Update oslo.concurrency from branch 'master'
  to ee3f73a13379a79282325906787aae7da0f6ac27
  - Fix fair internal lock used from eventlet.spawn_n
    
    The fasteners lib in version 0.15.0 removed the
    threading.current_thread workaround for eventlet[1] because eventlet
    seemed to fixed the current_thread issues tracked in [2]. However the
    fix for [2] only fixed half of the problem. The threading.current_thread
    call works if it is called from thread created by eventlet.spawn.
    However if the thread is created with eventlet.spawn_n then
    threading.current_thread is still broken and returns the ID of the
    python native thread.
    
    The fasteners' ReaderWriterLock depends heavily on
    threading.current_thread to decide which thread holds a lock and to
    allow re-entry of that thread. This leads to the situation that
    multiple threads created from spawn_n could take the same
    ReaderWriterLock at the same time.
    
    The fair internal lock in oslo.concurrency uses ReaderWriterLock and
    as a result such lock is broken for threads created with spawn_n.
    
    Note that this issue was raised with eventlet in [3] when the nova team
    detected it via a direct usage of ReaderWriterLock in the nova test
    code. As [3] did not lead to a solution in eventlet nova implemented a
    nova local fix for the test code in [4].
    
    However now we detected that oslo.concurrency is affected by this issue
    as well.
    
    This patch restores the workaround that was removed by [1].
    
    Note that a fasteners issue [5] also opened to restore the
    workaround[1].
    
    [1] harlowja/fasteners@467ed75
    [2] eventlet/eventlet#172
    [3] eventlet/eventlet#731
    [4] https://review.opendev.org/c/openstack/nova/+/813114
    [5] harlowja/fasteners#96
    
    Closes-Bug: #1988311
    Change-Id: Ia873bcc6b07121c9bd0b94c593567d537b4c1112
  • Loading branch information
gibizer authored and openstack-gerrit committed Sep 6, 2022
1 parent 5b4894e commit 33fe743
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion oslo.concurrency

0 comments on commit 33fe743

Please sign in to comment.