Bug 185765

Summary: PassSync service leaks memory
Product: Red Hat Directory Server Reporter: Nathan Kinder <nkinder>
Component: Sync ServiceAssignee: Nathan Kinder <nkinder>
Status: CLOSED ERRATA QA Contact: Orla Hegarty <ohegarty>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.1CC: nhosoi
Target Milestone: DS8.0   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-05-26 17:47:59 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 152373, 159328, 182367, 240316    
Attachments:
Description Flags
CVS Diffs
none
Revised Diffs none

Description Nathan Kinder 2006-03-17 19:01:53 UTC
Ulf reported that passsync.exe and lsass.exe both keep growing with every
password change that is synchd.  There appears to be a few memory leaks whenever
we load or save away password modifications from/to passhook.dat.

Comment 1 Nathan Kinder 2006-03-17 19:36:55 UTC
Created attachment 126286 [details]
CVS Diffs

Comment 2 Nathan Kinder 2006-03-17 23:32:17 UTC
Created attachment 126292 [details]
Revised Diffs

There were other areas that were leaking that my first proposed fix didn't
address.  We weren't freeing the slot that NSS uses, the dn that we use for
logging purposes, or the LDAP search results.  This addresses all of those
issues plus the previous leaks of the plaintext and ciphertext password
buffers.

Ulf has tested a build with these changes and the memory usage is stable under
stress conditions.

Comment 3 Orla Hegarty 2006-03-18 00:33:19 UTC
*DOCS*
Password sync tool leaked memory. This problem has been fixed.

Comment 4 Nathan Kinder 2006-03-18 00:35:47 UTC
Checked into HEAD.  Reviewed by Noriko.

Checking in passwordsync/passhand.cpp;
/cvs/dirsec/winsync/passwordsync/passhand.cpp,v  <--  passhand.cpp
new revision: 1.8; previous revision: 1.7
done
Checking in passwordsync/passsync/dssynch.h;
/cvs/dirsec/winsync/passwordsync/passsync/dssynch.h,v  <--  dssynch.h
new revision: 1.7; previous revision: 1.6
done
Checking in passwordsync/passsync/syncserv.cpp;
/cvs/dirsec/winsync/passwordsync/passsync/syncserv.cpp,v  <--  syncserv.cpp
new revision: 1.12; previous revision: 1.11
done
Checking in passwordsync/wix/PassSync.wxs;
/cvs/dirsec/winsync/passwordsync/wix/PassSync.wxs,v  <--  PassSync.wxs
new revision: 1.13; previous revision: 1.12
done
Checking in branding/fedora/brandver.dat;
/hurricane/cvs/spd/winsync/branding/fedora/brandver.dat,v  <--  brandver.dat
new revision: 1.2; previous revision: 1.1
done
Checking in branding/rhds/brandver.dat;
/hurricane/cvs/spd/winsync/branding/rhds/brandver.dat,v  <--  brandver.dat
new revision: 1.2; previous revision: 1.1
done

Comment 5 To Ngan 2006-04-04 17:11:21 UTC
Verified against build 20060330.1  (20060322.1 improved but still showed slight
increase)
Same mod passwd script ran for days and passsync.exe memory footprint remains
stable under 5MB.

Comment 7 Orla Hegarty 2006-05-26 17:47:59 UTC
Somehow the errata system did not automatically close these bugs even though DS
SP 2 is shipped and available live on RHN

Comment 8 Chandrasekar Kannan 2007-07-25 19:16:56 UTC
DS7.2 is not a valid milestone anymore. Anything thats set to DS7.2 should be
set to DS8.0. Will make further changes per bug council on 07/24/2007, after this.

Comment 9 Chandrasekar Kannan 2008-08-11 23:45:35 UTC
Bug already CLOSED. setting screened+ flag