Bug 1283748 - Caching of ipaconfig does not work in framework
Summary: Caching of ipaconfig does not work in framework
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: ipa
Version: 7.2
Hardware: All
OS: Linux
urgent
urgent
Target Milestone: rc
: ---
Assignee: IPA Maintainers
QA Contact: Namita Soman
URL:
Whiteboard:
Keywords: Regression, ZStream
Depends On:
Blocks: 1283915
TreeView+ depends on / blocked
 
Reported: 2015-11-19 17:39 UTC by Petr Vobornik
Modified: 2016-11-04 05:40 UTC (History)
5 users (show)

(edit)
Clone Of:
: 1283915 (view as bug list)
(edit)
Last Closed: 2016-11-04 05:40:50 UTC


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2016:2404 normal SHIPPED_LIVE ipa bug fix and enhancement update 2016-11-03 13:56:18 UTC

Description Petr Vobornik 2015-11-19 17:39:07 UTC
This bug is created as a clone of upstream ticket:
https://fedorahosted.org/freeipa/ticket/5463

Method: get_ipa_config() in ldap2.py does not work as expected.
The ipaconfig values are not cached and method always asks directly LDAP server.

The issues is that the *is* operator return false even if the connection is the same as was before. 
{{{
        try:
            config_entry = getattr(context, 'config_entry')
            if config_entry.conn is self.conn:
                return config_entry
        except AttributeError:
            # Not in our context yet
            pass

}}}

Details are also here: http://www.redhat.com/archives/freeipa-devel/2015-November/msg00238.html

Comment 1 Petr Vobornik 2015-11-19 17:40:44 UTC
fixed upstream

master:
    7f0d018c66da1fe2adedd45aa9f5a63c913e4527 fix caching in get_ipa_config 

ipa-4-2:
    0ca4c1db3ee6d9366f447d0d704fa56d98e366b4 fix caching in get_ipa_config

Comment 2 Petr Vobornik 2015-11-19 17:43:06 UTC
Causes that IPA command performs additional ldap search for server config for every ldap search done in the command. E.g., in user-add it is additional 12 searches. 

This has slight performance impact.

Comment 7 Abhijeet Kasurde 2016-08-09 10:18:38 UTC
Verified.

IPA server version::

ipa-server-4.4.0-5.el7.x86_64


Steps to verify ::

1. Fresh install ipa-server
2. Add IPA user 
3. tail DS access log, usually found /var/log/dirsrv/slapd-<INSTANCE>/access
4. perform operations like 'ipa user-show', 'ipa user-find' and 
5. Grep for string in DS access log
 {{
"SRCH base="cn=ipaconfig,cn=etc,dc=example.com" scope=0 filter="(objectClass=*)" attrs=ALL" 

}}

6. Note that this string should appear once for each request / connection of ipa command.

Comment 9 errata-xmlrpc 2016-11-04 05:40:50 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-2404.html


Note You need to log in before you can comment on or make changes to this bug.