|
| IIFP hitting 2GB and MA stopping |
 |
Fri, 4 Apr 2008 02:02:13 -0700 |
HI,
I'm running IIFP SP2 (v3.2.559.0) to replicate some accounts (about 38,000)
from a W2K AD to two W2K3 ADs (around 2,000 to one and the rest to another).
There are around 25 additions to the number of acconts per day and very few
changes (passwords are not sync'd).
I've scheduled the import MA to run every 30 seconds or so and to trigger
exports if required.
All has been running well for several months, but now it appears that the
process is hitting 2GB (peaking around 800MB physical and 1.2GB virtual
according to MIIS Service Monitor) and the MA runs are returning
'stopped-out-of-memory' errors. Once it occurs it happens for every MA import
until the MIIS service is restarted, and then everything is stable for a few
hours or so.
Once the error has stopped the MA, the MIIS service memory usage goes back
down until the MA runs again 30 seconds later and the same error is returned.
Any of the MAs can trigger the error and there seems to be no pattern - it
even occurs when there is nothing to replicate.
IIFP is running on a dedicated quad processor box with 4GB RAM.
The database is running on a separate server.
Shouldn't MIIS handle this memory limit?
And is there a way of reducing how much memory MIIS uses?
--
|
| Post Reply
|
| Re: IIFP hitting 2GB and MA stopping |
 |
Fri, 04 Apr 2008 16:49:01 +020 |
Dave C wrote:
> HI,
>
> I'm running IIFP SP2 (v3.2.559.0) to replicate some accounts (about 38,000)
> from a W2K AD to two W2K3 ADs (around 2,000 to one and the rest to
another).
> There are around 25 additions to the number of acconts per day and very few
> changes (passwords are not sync'd).
> I've scheduled the import MA to run every 30 seconds or so and to trigger
> exports if required.
> All has been running well for several months, but now it appears that the
> process is hitting 2GB (peaking around 800MB physical and 1.2GB virtual
> according to MIIS Service Monitor) and the MA runs are returning
> 'stopped-out-of-memory' errors. Once it occurs it happens for every MA
import
> until the MIIS service is restarted, and then everything is stable for a
few
> hours or so.
> Once the error has stopped the MA, the MIIS service memory usage goes back
> down until the MA runs again 30 seconds later and the same error is
returned.
> Any of the MAs can trigger the error and there seems to be no pattern - it
> even occurs when there is nothing to replicate.
>
> IIFP is running on a dedicated quad processor box with 4GB RAM.
> The database is running on a separate server.
>
> Shouldn't MIIS handle this memory limit?
> And is there a way of reducing how much memory MIIS uses?
Are You using any custom MA or MV provisining extensions? Any extensible
MA by any chance? It looks more like problem with memory leak caused
by custom code than ILM itself. Is this ILM up to date?
If You will eliminate memory leak in your code You should try to contact
MS support ...
--
Tomasz Onyszko
http://www.w2k.pl/ - (PL)
|
| Post Reply
|
| Re: IIFP hitting 2GB and MA stopping |
 |
Mon, 7 Apr 2008 08:26:00 -0700 |
Thomasz,
Thanks for responding.
I am using a custom MV extension. It's a very simple one that just changes
the user's UPN and sets a complex password. It did leave some objects
uncleared but I have corrected this.
So far the system has been running for six hours without any problems.
I'll let you know if it remains stable.
Regards,
Dave
--
Dave C.
"Tomasz Onyszko" wrote:
> Dave C wrote:
> > HI,
> >
> > I'm running IIFP SP2 (v3.2.559.0) to replicate some accounts (about
38,000)
> > from a W2K AD to two W2K3 ADs (around 2,000 to one and the rest to
another).
> > There are around 25 additions to the number of acconts per day and
very few
> > changes (passwords are not sync'd).
> > I've scheduled the import MA to run every 30 seconds or so and to
trigger
> > exports if required.
> > All has been running well for several months, but now it appears that
the
> > process is hitting 2GB (peaking around 800MB physical and 1.2GB
virtual
> > according to MIIS Service Monitor) and the MA runs are returning
> > 'stopped-out-of-memory' errors. Once it occurs it happens for every MA
import
> > until the MIIS service is restarted, and then everything is stable for
a few
> > hours or so.
> > Once the error has stopped the MA, the MIIS service memory usage goes
back
> > down until the MA runs again 30 seconds later and the same error is
returned.
> > Any of the MAs can trigger the error and there seems to be no pattern
- it
> > even occurs when there is nothing to replicate.
> >
> > IIFP is running on a dedicated quad processor box with 4GB RAM.
> > The database is running on a separate server.
> >
> > Shouldn't MIIS handle this memory limit?
> > And is there a way of reducing how much memory MIIS uses?
>
>
>
> Are You using any custom MA or MV provisining extensions? Any extensible
> MA by any chance? It looks more like problem with memory leak caused
> by custom code than ILM itself. Is this ILM up to date?
>
>
> If You will eliminate memory leak in your code You should try to contact
> MS support ...
>
> --
> Tomasz Onyszko
> http://www.w2k.pl/ - (PL)
> http://blogs.dirteam.com/blogs/tomek/ - (EN)
|
| Post Reply
|
| Re: IIFP hitting 2GB and MA stopping |
 |
Mon, 7 Apr 2008 08:34:02 -0700 |
I spoke too soon!
As soon as I clicked on Post for the last message MIIS reported out of memory!
Here is my simple MV Extension code - could it be the source of a memory leak?
Imports Microsoft.MetadirectoryServices
Public Class MVExtensionObject
Implements IMVSynchronization
Public Sub Initialize() Implements IMvSynchronization.Initialize
' TODO: Add initialization code here
End Sub
Public Sub Terminate() Implements IMvSynchronization.Terminate
' TODO: Add termination code here
End Sub
Public Sub Provision(ByVal mventry As MVEntry) Implements
IMVSynchronization.Provision
Dim ManagementAgentCAP As ConnectedMA ' Management agent object
Dim ManagementAgentOLDCOM As ConnectedMA ' Management agent object
Dim Connectors As Integer ' Management agent connectors
Dim DN As ReferenceValue ' Distinguished name attribute
Dim RDN As String ' Relative distinguished name
strings
Dim csentry As CSEntry ' Connector space entry object
Dim MyConnector As CSEntry ' Connector space entry object
Dim OriginalDN As String ' Original DN
Dim ExceptionMessage As String
'Define new containers
Dim ContainerIT As String =
"OU=SysTest,DC=test,DC=new,DC=com"
Dim ContainerUAT As String =
"OU=UserTest,DC=test,DC=new,DC=com"
Dim ContainerPROD As String = "OU=Prod,DC=prod,DC=new,DC=com"
' Determine the state of the metaverse object.
If mventry.ObjectType.Equals("person") Then
' Get the objects original OU
ManagementAgentOLDCOM = mventry.ConnectedMAs("OLDCOM MA")
csentry = ManagementAgentOLDCOM.Connectors.ByIndex(0)
OriginalDN = csentry.DN.ToString().ToUpper
RDN = "CN=" & mventry("cn").Value
If InStr(OriginalDN, "OU=IT") Then
' Get the NEWCOM TEST management agent connectors.
ManagementAgentNEWCOM = mventry.ConnectedMAs("NEWCOM TEST
MA")
DN =
ManagementAgentNEWCOM.EscapeDNComponent(RDN).Concat(ContainerIT)
Else
If InStr(OriginalDN, "OU=UAT") Then
' Get the NEWCOM TEST management agent connectors.
ManagementAgentNEWCOM = mventry.ConnectedMAs("NEWCOM
TEST MA")
DN =
ManagementAgentNEWCOM.EscapeDNComponent(RDN).Concat(ContainerUAT)
Else
If InStr(OriginalDN, "OU=PROD") Then
' Get the NEWCOM PROD management agent connectors.
ManagementAgentNEWCOM =
mventry.ConnectedMAs("NEWCOM
PROD MA")
DN =
ManagementAgentNEWCOM.EscapeDNComponent(RDN).Concat(ContainerPROD)
Else
EventLog.WriteEntry("MVExtension",
"Provisioning
Error: " & OriginalDN & " not in IT, UAT or PROD!",
EventLogEntryType.Error)
ExceptionMessage = "Provisioning Error: Object not
in IT, UAT or PROD"
ManagementAgentNEWCOM = Nothing
ManagementAgentOLDCOM = Nothing
DN = Nothing
csentry = Nothing
MyConnector = Nothing
Throw New UnexpectedDataException(ExceptionMessage)
End If
End If
End If
Connectors = ManagementAgentNEWCOM.Connectors.Count
' If there are no connectors, create the connector, set the
distinguished
' name attribute, and then add the new connector to the
collection.
If 0 = Connectors Then
csentry =
ManagementAgentNEWCOM.Connectors.StartNewConnector("user")
csentry.DN = DN
SetInitialValues(csentry, mventry)
csentry.CommitNewConnector()
ElseIf 1 = Connectors Then
' If a connector exists, get the existing connector and
assign the new
' distinguished name value. If the original attribute value
is the same
' as the new distinguished name, then the original attribute
value
' remains the same.
MyConnector = ManagementAgentNEWCOM.Connectors.ByIndex(0)
MyConnector.DN = DN
' Throw an exception if more than one connector exists.
Else
ExceptionMessage = "Multiple Connectors on Management
Agent"
ManagementAgentNEWCOM = Nothing
ManagementAgentOLDCOM = Nothing
DN = Nothing
csentry = Nothing
MyConnector = Nothing
Throw New UnexpectedDataException(ExceptionMessage)
End If
End If
ManagementAgentNEWCOM = Nothing
ManagementAgentOLDCOM = Nothing
DN = Nothing
csentry = Nothing
MyConnector = Nothing
End Sub
' Set Values on a NEW provisioned CS Entry
Private Sub SetInitialValues( _
ByRef csentry As CSEntry, _
ByVal mventry As MVEntry)
csentry("unicodepwd").Values.Add("NotTheRealComplexPassword"
)
End Sub
Public Function ShouldDeleteFromMV(ByVal csentry As CSEntry, ByVal
mventry As MVEntry) As Boolean Implements
IMVSynchronization.ShouldDeleteFromMV
' TODO: Add MV deletion code here
Throw New EntryPointNotImplementedException
End Function
End Class
--
Dave C.
"Dave C" wrote:
> Thomasz,
> Thanks for responding.
> I am using a custom MV extension. It's a very simple one that just changes
> the user's UPN and sets a complex password. It did leave some objects
> uncleared but I have corrected this.
> So far the system has been running for six hours without any problems.
> I'll let you know if it remains stable.
>
> Regards,
> Dave
> --
> Dave C.
>
>
> "Tomasz Onyszko" wrote:
>
> > Dave C wrote:
> > > HI,
> > >
> > > I'm running IIFP SP2 (v3.2.559.0) to replicate some accounts
(about 38,000)
> > > from a W2K AD to two W2K3 ADs (around 2,000 to one and the rest
to another).
> > > There are around 25 additions to the number of acconts per day
and very few
> > > changes (passwords are not sync'd).
> > > I've scheduled the import MA to run every 30 seconds or so and to
trigger
> > > exports if required.
> > > All has been running well for several months, but now it appears
that the
> > > process is hitting 2GB (peaking around 800MB physical and 1.2GB
virtual
> > > according to MIIS Service Monitor) and the MA runs are returning
> > > 'stopped-out-of-memory' errors. Once it occurs it happens for
every MA import
> > > until the MIIS service is restarted, and then everything is
stable for a few
> > > hours or so.
> > > Once the error has stopped the MA, the MIIS service memory usage
goes back
> > > down until the MA runs again 30 seconds later and the same error
is returned.
> > > Any of the MAs can trigger the error and there seems to be no
pattern - it
> > > even occurs when there is nothing to replicate.
> > >
> > > IIFP is running on a dedicated quad processor box with 4GB RAM.
> > > The database is running on a separate server.
> > >
> > > Shouldn't MIIS handle this memory limit?
> > > And is there a way of reducing how much memory MIIS uses?
> >
> >
> >
> > Are You using any custom MA or MV provisining extensions? Any
extensible
> > MA by any chance? It looks more like problem with memory leak caused
> > by custom code than ILM itself. Is this ILM up to date?
> >
> >
> > If You will eliminate memory leak in your code You should try to
contact
> > MS support ...
> >
> > --
> > Tomasz Onyszko
> > http://www.w2k.pl/ - (PL)
> > http://blogs.dirteam.com/blogs/tomek/ - (EN)
|
| Post Reply
|
|
|