Skip to content

Commit

Permalink
Update patch set 3
Browse files Browse the repository at this point in the history
Patch Set 3:

> Patch Set 3:
> 
> > Patch Set 2:
> > 
> > > Patch Set 2:
> > > 
> > > expected, but only nova is good
> > 
> > I'm looking at this and have found that we're hitting this issue again:
> > 
> > harlowja/fasteners#36
> > 
> > due to this commit which was released in fasteners==0.15:
> > 
> > harlowja/fasteners@467ed75
> > 
> > Inside of the nova test fixture, we are somehow getting the unpatched version of threading.current_thread instead of the eventlet version that we need. This implies that at the time of the creation of our ReaderWriterLock inside the fixture, the threading module is not eventlet monkey patched:
> > 
> > harlowja/fasteners#36 (comment)
> > 
> > I don't know how or why this is the case, same as bnemec mentioned here:
> > 
> > harlowja/fasteners#36 (comment)
> > 
> > I'm going to keep looking but will need help from other nova devs who know more about eventlet.
> 
> Correction: the threading module *is* eventlet monkey patched at that point but we are going into the fallback to the native threading.current_thread because we are apparently not in a greenthread at that point:
> 
> https://github.com/eventlet/eventlet/blob/690464aee772b62a54eedf5275843dce30318597/eventlet/green/threading.py#L94-L96

That ^ was also wrong. I put in some print statements and see that it's weirder than I expected. We're hitting a condition where the current thread is not of type GreenThread ... it's just 'greenlet.greenlet':

https://github.com/eventlet/eventlet/blob/v0.32.0/eventlet/green/threading.py#L124-L128

so it's falling back to the native threading.current_thread() method bc of that.

Patch-set: 3
  • Loading branch information
Gerrit User 4690 authored and openstack-gerrit committed Oct 7, 2021
1 parent 7388c10 commit 47ec5f6
Showing 0 changed files with 0 additions and 0 deletions.

0 comments on commit 47ec5f6

Please sign in to comment.