We have an Oracle data source configured with Forms and it is being used on certain processes. I noticed recently that the lookups that use the data source are taking a while to populate certain fields. I looked in the Event Viewer in the Application log on the Forms server and noticed the following error message:
Log Name: Application
Source: Laserfiche Forms
Date: 5/18/2015 1:43:59 PM
Event ID: 0
Task Category: None
Level: Error
Keywords: Classic
User: N/A
Computer: xxxx.xx.xx.xx.us
Description:
5/18/2015 1:43:59 PM | Session: k5vsrsi4ffkivs0cyyes0z3q
URL: /Forms/form/lookup?formId=76
Message: ORA-03135: connection lost contact
Process ID: 9464
Session ID: 3195 Serial number: 43741
Stack trace: at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure, Boolean bCheck)
at Oracle.DataAccess.Client.OracleCommand.ExecuteReader(Boolean requery, Boolean fillRequest, CommandBehavior behavior)
at Oracle.DataAccess.Client.OracleDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
at Laserfiche.Forms.EntityModels.Data.OracleDBConnector.GetDataSet(String cmdTxt, ICollection`1 parameters)
at Laserfiche.Forms.EntityModels.Data.OracleDBConnector.GetTable(String cmdTxt, ICollection`1 parameters)
at FormsModel.DomainServices.LookupServiceProvider.GetColumnType(OdbcConnector odbcConnect, String tableName, String columnName, DataBaseType databaseType)
at FormsModel.DomainServices.LookupServiceProvider.InternalGetLookupResult(Expression`1 ruleCondition, Dictionary`2 lookups)
at E_Forms.Controllers.FormController.Lookup(String data, Int32 ruleId, Int32 formId, String uniqueid, Int32 storeNum, Boolean startEvent)
at lambda_method(Closure , ControllerBase , Object[] )
at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState)
at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass48.<InvokeActionMethodFilterAsynchronouslyRecursive>b__41()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass48.<InvokeActionMethodFilterAsynchronouslyRecursive>b__41()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass33.<BeginInvokeActionMethodWithFilters>b__32(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<>c__DisplayClass2b.<BeginInvokeAction>b__1c()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult asyncResult)
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="Laserfiche Forms" />
<EventID Qualifiers="0">0</EventID>
<Level>2</Level>
<Task>0</Task>
<Keywords>0x80000000000000</Keywords>
<TimeCreated SystemTime="2015-05-18T19:43:59.000000000Z" />
<EventRecordID>3003376</EventRecordID>
<Channel>Application</Channel>
<Computer>xxxx.xx.xx.xx.us</Computer>
<Security />
</System>
<EventData>
<Data>5/18/2015 1:43:59 PM | Session: k5vsrsi4ffkivs0cyyes0z3q
URL: /Forms/form/lookup?formId=76
Message: ORA-03135: connection lost contact
Process ID: 9464
Session ID: 3195 Serial number: 43741
Stack trace: at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure, Boolean bCheck)
at Oracle.DataAccess.Client.OracleCommand.ExecuteReader(Boolean requery, Boolean fillRequest, CommandBehavior behavior)
at Oracle.DataAccess.Client.OracleDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
at Laserfiche.Forms.EntityModels.Data.OracleDBConnector.GetDataSet(String cmdTxt, ICollection`1 parameters)
at Laserfiche.Forms.EntityModels.Data.OracleDBConnector.GetTable(String cmdTxt, ICollection`1 parameters)
at FormsModel.DomainServices.LookupServiceProvider.GetColumnType(OdbcConnector odbcConnect, String tableName, String columnName, DataBaseType databaseType)
at FormsModel.DomainServices.LookupServiceProvider.InternalGetLookupResult(Expression`1 ruleCondition, Dictionary`2 lookups)
at E_Forms.Controllers.FormController.Lookup(String data, Int32 ruleId, Int32 formId, String uniqueid, Int32 storeNum, Boolean startEvent)
at lambda_method(Closure , ControllerBase , Object[] )
at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState)
at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass48.<InvokeActionMethodFilterAsynchronouslyRecursive>b__41()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass48.<InvokeActionMethodFilterAsynchronouslyRecursive>b__41()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass33.<BeginInvokeActionMethodWithFilters>b__32(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<>c__DisplayClass2b.<BeginInvokeAction>b__1c()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult asyncResult)
</Data>
</EventData>
</Event>
When I Google this error message I see a lot of people suggesting that the Oracle timeout needs to be edited in the sqlnet.ora file on the server. I do not know a lot about Oracle and its setup and was wondering if anyone else has seen this error message and knows if changing the timeout would resolve the issue?