|
Replies:
7
-
Pages:
1
-
Last Post:
Jun 7, 2012 10:33 AM
by: Stanislav
|
Threads:
[
Previous
|
Next
]
|
|
Posts:
23
Registered:
3/28/07
|
|
|
|
Message displayed when running large scripts
Posted:
May 1, 2012 11:16 AM
|
|
|
I tried to run a large script that contains a lot of update statements and change 4 fields in the same table for many records where the primary id is specified in every statement.
I keep getting this message when I run the script:
Function 5117 (QP5_SHL_INT_CHUNKER): Handle (0x0C248008) passed to API is NOT of any known QP5 object type.
YES = continue, NO = continue and stop bugging me, CANCEL = abort program.
This message is shown in a dialog with header: API Guard (QP5 version 5.216.12111.13957)
What is up with this? Did I run into an error, is this trying to warn me about something, did I miss doing something, what knowledge do I gain from this message?
|
|
|
Posts:
437
Registered:
12/7/06
|
|
|
|
Re: Message displayed when running large scripts
Posted:
May 2, 2012 1:54 AM
in response to: lstatie
|
|
|
lstatie,
we already have a couple of reports similar to yours. Can you reproduce the problem on demand? if so, would it be possible to share your script with me? it will help us to ensure your case is covered by the fix we are going to apply. The fix should be a part of next beta.
|
Regards, Valentine
/R&D @ DELL
|
|
Posts:
437
Registered:
12/7/06
|
|
|
|
Re: Message displayed when running large scripts
Posted:
May 2, 2012 1:58 AM
in response to: lstatie
|
|
|
I forgot to mention, the error message you see is internal Toad message, advising that something bad happened with Code Completion/Parser components and they may give you wrong results (sometimes these components keep working fine).
|
Regards, Valentine
/R&D @ DELL
|
|
Posts:
17
Registered:
12/4/11
|
|
|
|
Re: Message displayed when running large scripts
Posted:
May 2, 2012 6:55 AM
in response to: lstatie
|
|
|
I'm getting the same in Toad for Data Analysts. Hope this helps pinpoint.
|
|
|
Posts:
23
Registered:
3/28/07
|
|
|
|
Re: Message displayed when running large scripts
Posted:
May 16, 2012 3:00 PM
in response to: lstatie
|
|
|
I can reproduce the issue on demand. All I need to do is try to run my script. It is a simple insert script with 60,000 statements like the one below:
INSERT INTO [dbo].[CodeDiagnosisTree] values(715907, 109332, 109332, 28894083, 'May 10 2012 4:40PM', 28894083, 'May 10 2012 4:40PM', 0, 1)
only the first 3 columns of data change, the others do not change from record to record.
another script I have has 60,000 lines like the one below:
INSERT INTO [dbo].[CodeDiagnosis] values(109332, 'A00', 'Cholera', 'Dec 5 2011 12:00AM', null, 1, null, 28894083, 'May 10 2012 4:40PM', 28894083, 'May 10 2012 4:40PM', 1, 0, 0)
only the first 3 columns of the records change, the rest are the same from record to record.
"Whenever I see "Large Script Mode", I can expect out of memory errors.
The errors I get include:
System.OutOfMemoryException Exception of type 'System.OutOfMemoryException' was thrown. Stack Trace: at System.String.GetStringForStringBuilder(String value, Int32 startIndex, Int32 length, Int32 capacity) at System.Text.StringBuilder.GetNewString(String currentString, Int32 requiredLength) at System.Text.StringBuilder.Append(Char[] value, Int32 startIndex, Int32 charCount) at System.Text.StringBuilder.AppendFormat(IFormatProvider provider, String format, Object[] args) at System.String.Format(IFormatProvider provider, String format, Object[] args) at Quest.Toad.Db.ToadDataAdapter.get_Description() at Quest.Toad.Db.ScriptEngine.InternalDescription() at Quest.Toad.Db.ScriptEngine.get_Description() at Quest.Toad.Editor.EditorForm.DocumentHint() at Quest.Toad.Gui.MdiDocumentForm.GetTabTooltip() at Quest.Toad.Gui.MainForm.UpdateDocumentHeader(MdiDocumentForm parent) at Quest.Toad.Gui.MainForm.UpdateEditControlCaption(DocumentForm editControl) at Quest.Toad.Gui.MainForm.EditControlChanged(Object sender, EventArgs args) at Quest.Toad.Gui.MainForm.LazyIdle(Object sender, EventArgs args) at System.EventHandler.Invoke(Object sender, EventArgs e) at Quest.Toad.Notification.NotificationManager.LazyIdle(Object sender) at Quest.Toad.Gui.MainForm.Application_Idle(Object sender, EventArgs e)
|
|
|
Posts:
437
Registered:
12/7/06
|
|
|
|
Re: Message displayed when running large scripts
Posted:
May 17, 2012 2:46 AM
in response to: lstatie
|
|
|
lstatie,
1 can you please confirm you are using latest beta build, if not - what version you are on? 2 can you please say if you can just open toad, this script and get the error? or you need to open some other parts of toad, if so which one and what's your scenario? 3 can you please specify how many objects in your database? tables/views/procedures and functions. 4 can you turn off large script mode and open your script - do you get the same out of memory error?
Many thanks in advance for your help with this issue. Looking forward for your answers!
|
Regards, Valentine
/R&D @ DELL
|
|
Posts:
23
Registered:
3/28/07
|
|
|
|
Re: Message displayed when running large scripts
Posted:
May 22, 2012 8:54 AM
in response to: Valentine
|
|
|
This is one of many errors I get with large scripts.
All I have to do is: Open Toad, open the script and run it. The errors are generated when I run large scripts.
I am using the latest beta. 5.7.0.527. The same happened when I tried 5.7.0.483.
System.OutOfMemoryException Exception of type 'System.OutOfMemoryException' was thrown. Stack Trace: at System.String.GetStringForStringBuilder(String value, Int32 startIndex, Int32 length, Int32 capacity) at System.Text.StringBuilder.GetNewString(String currentString, Int32 requiredLength) at System.Text.StringBuilder.Append(String value) at Quest.Toad.Editor.EditorForm.DocumentHint() at Quest.Toad.Gui.MdiDocumentForm.GetTabTooltip() at Quest.Toad.Gui.MainForm.UpdateDocumentHeader(MdiDocumentForm parent) at Quest.Toad.Gui.MainForm.UpdateEditControlCaption(DocumentForm editControl) at Quest.Toad.Gui.MainForm.EditControlChanged(Object sender, EventArgs args) at Quest.Toad.Gui.MainForm.LazyIdle(Object sender, EventArgs args) at System.EventHandler.Invoke(Object sender, EventArgs e) at Quest.Toad.Notification.NotificationManager.LazyIdle(Object sender) at Quest.Toad.Gui.MainForm.Application_Idle(Object sender, EventArgs e)
When I turn Large Script Mode off, I get the out of memory error as soon as I load the script.
System.OutOfMemoryException Exception of type 'System.OutOfMemoryException' was thrown. Stack Trace: at g.a(Document A_0, Int32 A_1, TextRange A_2) at g.h() at ActiproSoftware.SyntaxEditor.SyntaxEditor.a(f A_0) at ActiproSoftware.SyntaxEditor.SyntaxEditor.set_SplitType(SyntaxEditorSplitType value) at Quest.Toad.Editor.EditorControl.Dispose(Boolean disposing) at System.ComponentModel.Component.Dispose() at System.Windows.Forms.Control.Dispose(Boolean disposing) at System.Windows.Forms.ContainerControl.Dispose(Boolean disposing) at ActiproSoftware.WinUICore.UIContainerControl.Dispose(Boolean disposing) at ActiproSoftware.UIStudio.Dock.ToolWindow.Dispose(Boolean disposing) at System.ComponentModel.Component.Dispose() at ActiproSoftware.UIStudio.Dock.DockManager.Dispose(Boolean disposing) at System.ComponentModel.Component.Dispose() at System.ComponentModel.Container.Dispose(Boolean disposing) at System.ComponentModel.Container.Dispose() at Quest.Toad.Editor.EditorForm.Dispose(Boolean disposing) at System.ComponentModel.Component.Dispose() at System.Windows.Forms.Control.Dispose(Boolean disposing) at System.Windows.Forms.ContainerControl.Dispose(Boolean disposing) at System.Windows.Forms.Form.Dispose(Boolean disposing) at DevExpress.XtraEditors.XtraForm.Dispose(Boolean disposing) at Quest.Toad.Gui.MdiDocumentForm.Dispose(Boolean disposing) at System.ComponentModel.Component.Dispose() at System.Windows.Forms.Form.WmClose(Message& m) at System.Windows.Forms.Form.WndProc(Message& m) at DevExpress.XtraEditors.XtraForm.WndProc(Message& msg) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
The script has 60,000 simple insert statements in it. Another one has 21,000 simple uodate statements, changing 3 columns when the ID column has a certain value. Nothing complicated, no sub query. All simple 1 liner stuff.
|
|
|
Posts:
51
Registered:
6/16/11
|
|
|
|
Re: Message displayed when running large scripts
Posted:
Jun 7, 2012 10:33 AM
in response to: lstatie
|
|
|
Hello Istatie,
We just posted a new beta build (5.7.0.577) where number of fixed were made that are related to the mentioned issues. Please try it and let us know if you still have any of these issues.
Thank you much for participation!
|
Regards, Stanislav | R&D • Quest Software (now part of DELL)
|
|
|
Legend
|
|
Guru: 2001
+
pts
|
|
Expert: 751
- 2000
pts
|
|
Enthusiast: 31
- 750
pts
|
|
Novice: 0
- 30
pts
|
|
Moderators
|
|
Helpful answer
(5 pts)
|
|
Answered
(10 pts)
|
|