1ac7407 Issue 50638 - RecursionError: maximum recursion depth exceeded while calling a Python object

Authored and Committed by vashirov 4 years ago
    Issue 50638 - RecursionError: maximum recursion depth exceeded while calling a Python object
    
    Bug Description:
    DSLdapObject has an overridden `__getattr__` method. In case the requested
    attribute doesn't exist, `getattr()` goes into an infitite recursive loop,
    only to be interrupted by a `RecursionError` exception.
    
    `rename()` method has one such lookup for a non-existent attribute,
    and it's not used at all.
    
    Fix Description:
    * Restore the default behaviour of `getattr()` when attribute doesn't exist.
    * Remove unneeded attribute lookup in `rename()`.
    
    Fixes: https://pagure.io/389-ds-base/issue/50638
    
    Reviewed by: mreynolds, mhonek, firstyear (Thanks!)