In our case it looks like I will have to provide a business case to Epicor in order to get this fix applied to 10.1.500 so that MRP will not take so darn long to get details when creating jobs during the MRP run and causing time outs and/or deadlocks.
Here is what I got from Epicor on the original SCR 207237:
Yes, the details on SCR 208632 are the same. Development basically created this related SCR 208632 when an update request (one-off) was requested for a different version. SCR 208632 was created/released with 10.1.600.15.
SCR 208632: UpdReq600 - Order Job Wizard - Get Details for a configured part generates an error.
PROBLEM DESCRIPTION:
When trying to create a Job using Getting Details for a configured part, the system hangs and generates an error(It takes a long time to see that error).
EXPECTED BEHAVIOR:
No error should be thrown and it should not take as long to get details and the job has to be created.
**Additional Info: **
Review also creating the job from Quote, and also running MRP
EXACT ERROR MESSAGE:
Application Error
Exception caught in: Epicor.ServiceModel
Error Detail ============Message: An error occurred while updating the entries. See the inner exception for details.Inner Exception Message: Lock request time out period exceeded.The statement has been terminated.Program: Epicor.ServiceModel.dllMethod: ShouldRethrowNonRetryableException
Client Stack Trace ================== at System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager stateManager, IEntityAdapter adapter) at System.Data.Objects.ObjectContext.SaveChanges(SaveOptions options) at Ice.IceDataContext.SaveChanges(SaveOptions options) in C:_Releases\ICE\3.1.600.9\Source\Framework\Epicor.System\Data\IceDataContext.cs:line 352 at Ice.IceDataContext.Validate[TLinqRow](TLinqRow row) in C:_Releases\ICE\3.1.600.9\Source\Framework\Epicor.System\Data\IceDataContext.cs:line 311 at Erp.Services.BO.OrderJobWizSvc.createjob() in c:_Releases\ERP\RL10.1.600.0\Source\Server\Services\BO\OrderJobWiz\OrderJobWiz.cs:line 1111 at Erp.Services.BO.OrderJobWizSvc.processJWOrderDtls(String& OP_ErrorMsgs) in c:_Releases\ERP\RL10.1.600.0\Source\Server\Services\BO\OrderJobWiz\OrderJobWiz.cs:line 2736 at Erp.Services.BO.OrderJobWizSvc.CreateJobs(OrderJobWizTableset& ds, String& pErrorMessages) in c:_Releases\ERP\RL10.1.600.0\Source\Server\Services\BO\OrderJobWiz\OrderJobWiz.cs:line 1379 at Erp.Services.BO.OrderJobWizSvcFacade.CreateJobs(OrderJobWizTableset& ds, String& pErrorMessages) in c:_Releases\ERP\RL10.1.600.0\Source\Server\Services\BO\OrderJobWiz\OrderJobWizSvcFacade.cs:line 83 at SyncInvokeCreateJobs(Object , Object[] , Object[] ) at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) at Epicor.Hosting.OperationBoundInvoker.InnerInvoke(Object instance, Func2 func) in C:\_Releases\ICE\3.1.600.9\Source\Framework\Epicor.System\Hosting\OperationBoundInvoker.cs:line 59 at Epicor.Hosting.OperationBoundInvoker.Invoke(Object instance, Func
2 func) in C:_Releases\ICE\3.1.600.9\Source\Framework\Epicor.System\Hosting\OperationBoundInvoker.cs:line 47 at Epicor.Hosting.Wcf.EpiOperationInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) in C:_Releases\ICE\3.1.600.9\Source\Framework\Epicor.System\Hosting\Wcf\EpiOperationInvoker.cs:line 23 at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc) at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
Inner Trace:Lock request time out period exceeded.The statement has been terminated.: at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData() at System.Data.SqlClient.SqlDataReader.get_MetaData() at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds, Boolean describeParameterEncryptionRequest) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource
1 completion, Int32 timeout, Task& task, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior) at System.Data.Mapping.Update.Internal.DynamicUpdateCommand.Execute(UpdateTranslator translator, EntityConnection connection, Dictionary2 identifierValues, List
1 generatedValues) at System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager stateManager, IEntityAdapter adapter)
at Epicor.ServiceModel.Channels.ImplBase`1.ShouldRethrowNonRetryableException(Exception ex, DataSet[] dataSets) at Erp.Proxy.BO.OrderJobWizImpl.CreateJobs(OrderJobWizDataSet ds, String& pErrorMessages) at Erp.Adapters.OrderJobWizAdapter.CreateJobs(String& pErrorMessages) at Erp.UI.App.OrderJobWizEntry.Transaction.CreateJobs()
Inner Exception ===============Lock request time out period exceeded.The statement has been terminated.
ADDITIONAL INFO:
Using a Non-Configured part that has the same Method as the configured part does generate a job but takes a long time to generate the job.