[Freeipa-devel] [patch 0010] Python list comprehension leak breaking the test execution

Jan Cholasta jcholast at redhat.com
Tue Aug 11 07:08:47 UTC 2015


On 11.8.2015 09:00, Milan Kubík wrote:
> On 08/10/2015 06:22 PM, Milan Kubík wrote:
>> On 08/10/2015 06:02 PM, Milan Kubík wrote:
>>> On 08/10/2015 05:54 PM, Jan Cholasta wrote:
>>>> On 10.8.2015 17:43, Milan Kubík wrote:
>>>>> Hi all,
>>>>>
>>>>> this patch fixes problem described in the ticket [1]
>>>>> that caused the test run to fail completely at every other or so run.
>>>>> I took the liberty to fix most of the pep8 issues while I was at it.
>>>>>
>>>>> Thanks to Jan Cholasta for help with identifying this one.
>>>>
>>>> IMO this would be more robust:
>>>>
>>>>     t = None
>>>>     try:
>>>>         ...
>>>>     finally:
>>>>         del t
>>>>         nss.nss_shutdown()
>>>>
>>>> By assigning a value to the variable at the beginning you make sure
>>>> that the del statement will not fail.
>>>>
>>>> Honza
>>>>
>>> Thanks for the idea. It also removed the version check.
>>> Updated patch attached.
>>>
>>> Milan
>>>
>>>
>> Self NACK.
>>
>> I have updated the fix for all of the leaks in that class. It seems to
>> corrupt the database even when no init/shutdown was called. Just not
>> so often.
>>
>> Milan
>>
>>
> NACK again. The problem is the reference counting. Even with this patch,
> there seems to be at least one reference left after 't' is deleted and
> nss.nss_shutdown races with the garbage collector.

Doesn't the PKCDDocument object also reference some NSS objects? It 
might be worth trying to delete it manually before nss_shutdown as well.

-- 
Jan Cholasta




More information about the Freeipa-devel mailing list