During investigation related to ticket 47366, an issue was tracked down to a connection reaching the max threads per connection limit. Specifically, this was with the referential integrity plug-in.
Adding a warning message would help in tracking these sorts of issues down. I'm not sure if this can be done in such a way that the warnings are not too frequent. There are certain workloads that might trigger the limit to be hit often, which would not necessarily be a bad thing. We don't want to pollute the logs with warnings that are not important. We should investigate this and see if it makes sense to add a warning.
I don't think we should log anything - will be too much to be useful.
I think the best approach would be to keep a counter of the number of times max threads per conn is hit, and a flag that indicates if a connection has hit the limit or not. This would be useful in the snmp/shared memory stats, and in the cn=monitor stats - show how many times a connection has hit max threads, and if the connection is currently in the state of max threads. Also, keep global stats of the number of times any connection has hit max threads, and how many connections are currently in that state.
attachment 0001-Ticket-47382-Add-a-warning-message-when-a-connection.patch
git merge ticket47382 Updating 6041c77..bbe198d Fast-forward ldap/servers/slapd/agtmmap.c | 3 ++ ldap/servers/slapd/agtmmap.h | 2 + ldap/servers/slapd/connection.c | 32 ++++++++++++++++---- ldap/servers/slapd/conntable.c | 41 +++++++++++++++++++++++--- ldap/servers/slapd/daemon.c | 9 ++++- ldap/servers/slapd/fe.h | 4 ++- ldap/servers/slapd/globals.c | 7 ++++- ldap/servers/slapd/ntperfdll/nsldapctr.cpp | 32 +++++++++++++++++++++ ldap/servers/slapd/ntperfdll/nsldapctrdef.h | 2 + ldap/servers/slapd/ntperfdll/nsldapctrs.h | 10 ++++-- ldap/servers/slapd/slap.h | 9 +++++- ldap/servers/slapd/snmp_collator.c | 6 ++++ ldap/servers/snmp/ldap-agent.c | 12 ++++++++ ldap/servers/snmp/ldap-agent.h | 5 ++- ldap/servers/snmp/ntagt/nsldapagt_nt.c | 2 + ldap/servers/snmp/ntagt/nsldapagt_nt.h | 2 + ldap/servers/snmp/redhat-directory.mib | 41 ++++++++++++++++++++++++++- 17 files changed, 197 insertions(+), 22 deletions(-)
git push origin master Counting objects: 49, done. Delta compression using up to 4 threads. Compressing objects: 100% (25/25), done. Writing objects: 100% (25/25), 4.61 KiB, done. Total 25 (delta 23), reused 0 (delta 0) To ssh://git.fedorahosted.org/git/389/ds.git 6041c77..bbe198d master -> master
commit bbe198d
Ticket has been cloned to Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1044146
Metadata Update from @nkinder: - Issue assigned to mreynolds - Issue set to the milestone: 1.3.2 - 07/13 (July)
389-ds-base is moving from Pagure to Github. This means that new issues and pull requests will be accepted only in 389-ds-base's github repository.
This issue has been cloned to Github and is available here: - https://github.com/389ds/389-ds-base/issues/719
If you want to receive further updates on the issue, please navigate to the github issue and click on subscribe button.
subscribe
Thank you for understanding. We apologize for all inconvenience.
Metadata Update from @spichugi: - Issue close_status updated to: wontfix (was: Fixed)
Login to comment on this ticket.