Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 Other Forums
 ClearTrace Support Forum
 System out of memory error any version

Author  Topic 

mperino
Starting Member

11 Posts

Posted - 2009-07-29 : 13:15:07
Hello Graz,
For the last couple of weeks I have encountered an 'System.OutofMemoryException' errors. Does not matter what version of the command line or gui that I use. Have tried running on a Win 2003 Server, Win 2008 server, or XP workstation and vm. Gui and command line both have the same errors. The servers are x86 and x64.
Here is a copy of the error text. Any help would be greatly appreciated.

******************************************************************************
ClearTrace Error
******************************************************************************
Version: 2008.34.0
Last Exception: Exception of type 'System.OutOfMemoryException' was thrown.
Last Target Site: System.String CreateStringFromEncoding(Byte*, Int32, System.Text.Encoding)
******************************************************************************

Exception Type: System.Reflection.TargetInvocationException
Exception Message: Exception has been thrown by the target of an invocation.
at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
at System.Delegate.DynamicInvokeImpl(Object[] args)
at System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme)
at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
at System.Threading.ExecutionContext.runTryCode(Object userData)
at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
at System.Windows.Forms.Control.InvokeMarshaledCallbacks()
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.Run(Form mainForm)
at ClearTraceGui.Program.Main()

================================
Inner Exception
================================
Exception Type: System.Reflection.TargetInvocationException
Exception Message: An exception occurred during the operation, making the result invalid. Check InnerException for exception details.
at System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary()
at System.ComponentModel.RunWorkerCompletedEventArgs.get_Result()
at ClearTraceGui.MainForm.backgroundWorker1_RunWorkerCompleted(Object sender, RunWorkerCompletedEventArgs e)
at System.ComponentModel.BackgroundWorker.OnRunWorkerCompleted(RunWorkerCompletedEventArgs e)
at System.ComponentModel.BackgroundWorker.AsyncOperationCompleted(Object arg)

================================
Inner Exception
================================
Exception Type: System.OutOfMemoryException
Exception Message: Exception of type 'System.OutOfMemoryException' was thrown.
at System.String.CreateStringFromEncoding(Byte* bytes, Int32 byteLength, Encoding encoding)
at System.Text.UnicodeEncoding.GetString(Byte[] bytes, Int32 index, Int32 count)
at System.Data.SqlClient.TdsParserStateObject.ReadString(Int32 length)
at System.Data.SqlClient.TdsParser.ReadSqlStringValue(SqlBuffer value, Byte type, Int32 length, Encoding encoding, Boolean isPlp, TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.ReadSqlValue(SqlBuffer value, SqlMetaDataPriv md, Int32 length, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlDataReader.ReadColumnData()
at System.Data.SqlClient.SqlDataReader.ReadColumn(Int32 i, Boolean setTimeout)
at System.Data.SqlClient.SqlDataReader.GetString(Int32 i)
at ClearData.ClearTrace.TextDataDimension.GetDatabaseValues(String connectionString)
at ClearData.ClearTrace.SqlTrace.ProcessFiles(BackgroundWorker worker, DoWorkEventArgs eventArgs)
at ClearTraceGui.MainForm.backgroundWorker1_DoWork(Object sender, DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

graz
Chief SQLTeam Crack Dealer

4149 Posts

Posted - 2009-07-29 : 13:28:37
How big is the trace file you're reading? How much memory is there on the machine where you're running ClearTrace?

=================================================
Creating tomorrow's legacy systems today. One crisis at a time.
Go to Top of Page

mperino
Starting Member

11 Posts

Posted - 2009-07-29 : 16:14:10
The trace files were the standard 5mb, then switched to 20mb - no difference. The memory on the machines vary with min at 4gb and max at 16gb on an x64 SQL Server 2005 sp3 fully current with patches and updates.
Go to Top of Page

graz
Chief SQLTeam Crack Dealer

4149 Posts

Posted - 2009-07-29 : 16:29:46
Does it happen when you process one trace file? Or do you need to process a large number of files? Is there already a lot of data in the database? Can you use Task Manager to monitor the memory footprint of the EXE and see where it has issues?

=================================================
Creating tomorrow's legacy systems today. One crisis at a time.
Go to Top of Page

mperino
Starting Member

11 Posts

Posted - 2009-07-29 : 16:39:36
I thought it was because I was processing too many files. Cut it down to just one, and the same error occured. Rebooted the machine, still bombed out. I was using this since you fixed the cmd for us and then all of a sudden it started throwing these errors. Now I get errors every time on any machine. Does not make sense. I watched the task mgr. cleartrace was using 1.7gb of mem at peak.
Go to Top of Page

mperino
Starting Member

11 Posts

Posted - 2009-07-29 : 16:43:05
I have the trace files being written to a file share with each server having its own directory. Before I made that change I was processing the files on the server that contained the cleartrace db. Now I am processing on a different machine because that SQL Server is getting too busy for me to process on. The cleartrace db is now over 9gb is size. Whould that make a difference? I will create a new db and see if that makes a difference.
Go to Top of Page

graz
Chief SQLTeam Crack Dealer

4149 Posts

Posted - 2009-07-29 : 19:25:04
Yes. A large database would definitely make a difference. Is it also slow to start up? I do a lot of caching at the start. I'm guessing that's where the problem is.



=================================================
Creating tomorrow's legacy systems today. One crisis at a time.
Go to Top of Page

mperino
Starting Member

11 Posts

Posted - 2009-07-30 : 13:00:50
ok, I will create another one and let you know what happens. Thanks for your prompt replies Graz, appreciate it! Mike
Go to Top of Page

mperino
Starting Member

11 Posts

Posted - 2009-07-30 : 13:53:40
Hey Graz, the size of the database was the key. I created a new one and now I can process very quickly with no errors with both command line and gui. Task mgr says CT cmd line is using about 35mb of mem and just blowing through the trace files. Thanks for your assistance again! Mike
Go to Top of Page

graz
Chief SQLTeam Crack Dealer

4149 Posts

Posted - 2009-07-30 : 14:29:16
If you can, keep your big database. I'll try to get a build that works better with large databases.

=================================================
Creating tomorrow's legacy systems today. One crisis at a time.
Go to Top of Page
   

- Advertisement -