Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.

Bug 1060749

Summary: Mock python thread.allocate_lock with pthreading Lock
Product: Red Hat Enterprise Virtualization Manager Reporter: Yaniv Bronhaim <ybronhei>
Component: python-pthreadingAssignee: Yaniv Bronhaim <ybronhei>
Status: CLOSED CURRENTRELEASE QA Contact: Tareq Alayan <talayan>
Severity: unspecified Docs Contact: Cheryn Tan <chetan>
Priority: unspecified    
Version: 3.4.0CC: aberezin, bazulay, danken, dougsland, gklein, iheim, mkalinin, pbandark, rlandman, ybronhei, yeylon
Target Milestone: ---   
Target Release: 3.4.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: infra
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Infra RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Yaniv Bronhaim 2014-02-03 14:04:41 UTC
We suspect that thread.allocate_lock causes issues that leaded to deadlock during long run of vdsm (bz 1022036). As we monkeypatch python's threading package, we should also monkeypatch this lock.

The patch format should be:
def monkey_patch():
    """
    Hack threading module to use our classes

    Thus, Queue and SocketServer can easily enjoy them.
    """

+   import thread
+
+   thread.allocate_lock = Lock
+
    import threading

    threading.Condition = Condition
    threading.Lock = Lock
    threading.RLock = RLock

Comment 1 Douglas Schilling Landgraf 2014-02-04 02:53:11 UTC
Hi Yaniv, 

Please let me know when we have this patch on upstream then I can build a new python-pthreading for fedora too. If we want that to be included on 3.3 probably we will need flags here too.

Comment 2 Douglas Schilling Landgraf 2014-02-04 12:47:22 UTC
thread upstream:
https://lists.fedorahosted.org/pipermail/vdsm-devel/2014-February/003071.html

Comment 4 Douglas Schilling Landgraf 2014-03-19 03:13:41 UTC
Hello Yaniv,

I have build 0.1.3 python-pthreading for Fedora, to have this version of package on RHEV-M-3.4, we need the flags on this bugzilla. Do you want to see this 0.1.3 for EL7 at this moment? 

python-pthreading-0.1.3-0.fc19
http://koji.fedoraproject.org/koji/buildinfo?buildID=505373

python-pthreading-0.1.3-0.fc20
http://koji.fedoraproject.org/koji/buildinfo?buildID=505371

python-pthreading-0.1.3-0.fc21
http://koji.fedoraproject.org/koji/buildinfo?buildID=505369

Comment 5 Yaniv Bronhaim 2014-03-23 21:37:33 UTC
all acks granted. yes, el7 build is also required

Comment 7 Tareq Alayan 2014-05-01 11:19:43 UTC
what to test here?

Comment 8 Douglas Schilling Landgraf 2014-05-01 16:42:25 UTC
(In reply to Tareq Alayan from comment #7)
> what to test here?

Yaniv, can you please share your thoughts here?

Comment 9 Yaniv Bronhaim 2014-05-05 09:36:19 UTC
same flow you verify in Bug 1022036. read what the customer faces and try to run the system with same load, same duration, until facing the non-responsive state.

Comment 10 Tareq Alayan 2014-05-08 08:14:48 UTC
since the patch is already riunning on custome env.
I am moving it to verified.

Comment 11 Itamar Heim 2014-06-12 14:11:38 UTC
Closing as part of 3.4.0