Home Page › Forums › BizTalk 2004 – BizTalk 2010 › Load testing issue – suspended orchs
- This topic has 2 replies, 1 voice, and was last updated 8 years, 3 months ago by
community-content.
-
AuthorPosts
-
-
June 8, 2006 at 2:58 AM #14820
Hello,
I have a working solution that contains 3 orchestrations. I drop files in 1 by 1 to the in folder and everything works fine, the orchestration insert the data into my SQL Server tables. Then when i tried to drop 4 files in all at once the 1st one worked and the next 3 failed. I was working on a virtual PC, my PC at work only had 512 ram & that was split between my virtual PC running Windows server 2003 & my normal windows XP so as you could imagine everything is at a crawl.
Came home & tried on my home PC with 650 mb ram dedicated to the virtual PC and i could drop 4 files in at a time and they all worked fine. THen i pushed the pace by droping 8 files all at once, the 1st one worked and the next 7 failed (suspended orchs), tthen every file after that fails until i terminate the suspended orchs. My orchestrations uses a custom functoid I downloaded inside a map called Stored Procedure Runned (written by a microsoft team member i believe) at the bottom of this post is the error messages i receive.
Anyone ever see something like this? Should I be concearned? Cause I am! Am I dropping too many files to quickly? Could it just RAM issue and wont happen in a production environment with a real server? ANY info is appreciated!!!
We have an already existing solution that pulls files from FTP across our firewall into the network. I don’t know the details of this program & I am not sure if it runs on a schedule. I’m worried it could run & pull like 100 files all at once and then drop them in my IN folder.
Thanks in advance for any responses!!
Error Message… (seems to be on the Stored Procedure Runner functoid code)
Uncaught exception (see the ‘inner exception’ below) has suspended an instance of service ‘CCIBusinessProcesses.Phase3(e26d2b39-deae-7d99-8ec1-2fbc05dd6a61)’.
The service instance will remain suspended until administratively resumed or terminated.
If resumed the instance will continue from its last persisted state and may re-throw the same unexpected exception.
InstanceId: 71be28a3-886c-4f43-9aad-7b929f7d4577
Shape name: Construct InvManagement
ShapeId: c582da42-3c55-4b5e-be27-eb8145f7206e
Exception thrown from: segment 1, progress 7
Inner exception: Function ‘ScriptNS0:RunStoredProcedure()’ has failed.Exception type: XPathException
Source: System.Xml
Target Site: System.Object Evaluate(System.Xml.XPath.XPathNodeIterator)
The following is a stack trace that identifies the location where the exception occuredat MS.Internal.Xml.XPath.FunctionQuery.Evaluate(XPathNodeIterator nodeIterator)
at System.Xml.Xsl.XsltOld.Processor.RunQuery(ActionFrame context, Int32 key)
at System.Xml.Xsl.XsltOld.VariableAction.Execute(Processor processor, ActionFrame frame)
at System.Xml.Xsl.XsltOld.ActionFrame.Execute(Processor processor)
at System.Xml.Xsl.XsltOld.Processor.Execute()
at System.Xml.Xsl.XsltOld.Processor.Execute(Stream stream)
at System.Xml.Xsl.XslTransform.Transform(XPathNavigator input, XsltArgumentList args, Stream output, XmlResolver resolver)
at System.Xml.Xsl.XslTransform.Transform(IXPathNavigable input, XsltArgumentList args, Stream output, XmlResolver resolver)
at Microsoft.BizTalk.ScalableTransformation.BTSXslTransform.DoStandardTransform(Stream strm, XsltArgumentList args, Stream output, XmlResolver resolver)
at Microsoft.BizTalk.ScalableTransformation.BTSXslTransform.DoAutoSwitchTransform(Stream strm, XsltArgumentList args, Stream output, XmlResolver resolver)
at Microsoft.BizTalk.ScalableTransformation.BTSXslTransform.Transform(Stream input, XsltArgumentList args, Stream output, XmlResolver resolver)
at Microsoft.XLANGs.Core.Service.ApplyTransform(Type mapRef, Object[] outParams, Object[] inParams)
at CCIBusinessProcesses.Phase3.segment1(StopConditions stopOn)
at Microsoft.XLANGs.Core.SegmentScheduler.RunASegment(Segment s, StopConditions stopCond, Exception& exp)
Additional error information:Exception has been thrown by the target of an invocation.
Exception type: TargetInvocationException
Source: mscorlib
Target Site: System.Object _InvokeMethodFast(System.Object, System.Object[], System.SignatureStruct ByRef, System.Reflection.MethodAttributes, System.RuntimeTypeHandle)
The following is a stack trace that identifies the location where the exception occuredat 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.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
at System.Xml.Xsl.XsltOld.XsltCompileContext.FuncExtension.Invoke(XsltContext xsltContext, Object[] args, XPathNavigator docContext)
at MS.Internal.Xml.XPath.FunctionQuery.Evaluate(XPathNodeIterator nodeIterator)
Additional error information:Object reference not set to an instance of an object.
Exception type: NullReferenceException
Source: DBFunktoids
Target Site: System.String RunStoredProcedureEx(System.String, System.String, System.String, System.String[])
The following is a stack trace that identifies the location where the exception occuredat DBFunktoids.DBFunk.RunStoredProcedureEx(String connectionString, String storedProcedureName, String parameterNames, String[] parameters)
at DBFunktoids.DBFunk.RunStoredProcedure(String connectionString, String storedProcedureName, String paramNames, String p1, String p2, String p3) -
June 8, 2006 at 3:05 PM #14821
OH good – thats what i wanted to hear.
Great advice.I’m not sure why the stored proc fails exactly. It is a small proc that takes 3 params and I have very few records in the db at this point. I have decent indexing on the SARGS so I am fairly confident in the SP. I was thinking maybe it was a time out issue trying to connect to the DB. I was also nervous that there may have been an issue releasing resources in the functoid code, but since i didnt code it, and i believe someone from microsoft did, I want to think there should not be a problem there either.
I will look into some of your suggestions further. Our testing / production environments should have the proper resources, at least the min requirements. I also found out that we can tweak our other file grabber program, it loops through the files and copies one at a time & we can insert a variable seconds wait between files if we need to. I’m interested to look into the file adapter batch size you mentioned as well.
THANKS for your advice!!!
-
June 8, 2006 at 8:04 AM #14822
Your current problem is definitely a resource issue.
The minimum spec for a Biztalk Server 2006 is 1GB RAM, if you are also running SQL Server 2005 then you will need another 512MB to 1GB RAM.I would increase the memory to the minimum spec and retest, you may find that it will handle 10 simultaneous message OK but fail at 20. You can then size the server to handle this, throw lots of hardware at it and/or tune Biztalk Server.
e.g. Limit the batch size on the File adapter, look at the high and low water marks, etcYou should also check out the stored procedure – use SQL Server Profiler.
Any inefficiencies here will have an impact on the performance.
Do you know why the stored proc functoid is failing, is it a timeout, locking …
-
-
-
AuthorPosts
- The forum ‘BizTalk 2004 – BizTalk 2010’ is closed to new topics and replies.