Connection problems after Strataframe database migration


Author
Message
Jiri Brazda
Jiri Brazda
StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)
Group: StrataFrame Users
Posts: 78, Visits: 356
Hi,

we have moved Strataframe database to a new server, configured connections to a new location in all applications but since this moment we have problems when openning DDT, BOM and LME.

When we start any of those applications we receive the following error (after about 30 seconds waiting):

UIException
  Dynamically populating the ListView failed.  Could not create and fill the business object of type 'SFMessaging.MessageProjectsBO'
TargetInvocationException
  Exception has been thrown by the target of an invocation.
SqlException
  Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.


Source     : MicroFour StrataFrame UI

Stack Trace:
   at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
   at System.Data.SqlClient.TdsParserStateObject.ReadSniSyncOverAsync()
   at System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
   at System.Data.SqlClient.TdsParser.ConsumePreLoginHandshake(Boolean encrypt, Boolean trustServerCert, Boolean& marsCapable)
   at System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, SqlConnection owningObject)
   at System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject)
   at System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart)
   at System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)
   at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)
   at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)
   at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
   at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
   at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
   at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
   at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
   at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
   at System.Data.SqlClient.SqlConnection.Open()
   at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection, ConnectionState& originalState)
   at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)
   at MicroFour.StrataFrame.Data.DbDataSourceItem.GetDataTable(DbCommand Command, OnChangeEventHandler CallBack)
   at MicroFour.StrataFrame.Data.SqlDataSourceItem.GetDataTable(DbCommand Command, OnChangeEventHandler CallBack)
   at MicroFour.StrataFrame.Data.DbDataSourceItem.GetDataTable(String Statement, OnChangeEventHandler CallBack)
   at MicroFour.StrataFrame.Data.DataLayer.GetDataTable(String Statement, Boolean RegisterNotification)
   at MicroFour.StrataFrame.Business.BusinessLayer.FillDataTable(String SelectStatement)
   at SFMessaging.MessageProjectsBO.GetAll()
   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.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at MicroFour.StrataFrame.UI.Windows.Forms.ListView.GetFilledBusinessObject(Object[] Parameters)
   at MicroFour.StrataFrame.UI.Windows.Forms.ListView.PopulateListView(Object[] Parameters)
   at MicroFour.StrataFrame.UI.Windows.Forms.ListView.InitializeObject()
   at MicroFour.StrataFrame.UI.Windows.Forms.BaseForm.InitializeFormLoadObjects()
   at MicroFour.StrataFrame.UI.Windows.Forms.BaseForm.OnLoad(EventArgs e)
   at System.Windows.Forms.Form.OnCreateControl()
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl()
   at System.Windows.Forms.Control.WmShowWindow(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ContainerControl.WndProc(Message& m)
   at System.Windows.Forms.Form.WmShowWindow(Message& m)
   at System.Windows.Forms.Form.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.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


Then on the second attempt it opens database correctly so we can work but it is very annoying to always wait 30 second for an error and then make a second attempt...

We have already tried to reinstall SF on the computer but no change. It seems to me that on the first attempt it tries somehow to open a connection to an old server.

Can anybody help me, please?

Thank You

George
Ivan George Borges
Ivan George Borges
Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)
Group: StrataFrame MVPs
Posts: 1.9K, Visits: 21K
Hi George.

First thing would be to check the Database Connection menu at the StrataFrame menu on Visual Studio.

You can also try deleting the connection files which will force you to rebuild them once you run Visual Studio again. These files are at C:\ProgramData\MicroFour\ConnectionData.
Jiri Brazda
Jiri Brazda
StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)
Group: StrataFrame Users
Posts: 78, Visits: 356
Hi Ivan,

thank You for Your response. I have deleted the file, configured connection but the behavior is the same - first attempt - error with delay, then it works correctly :-(

George
Ivan George Borges
Ivan George Borges
Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)Strategic Support Team Member (4.4K reputation)
Group: StrataFrame MVPs
Posts: 1.9K, Visits: 21K
There is some problem on getting to your MessageProjects table. Can you open it alright using the SQL Server Management Studio and pointing to the new location? The exception is basically SQL Server telling you a timeout has occurred. Not sure why you get it working on a second attempt.
Ross L. Rooker, Sr.
Ross L. Rooker, Sr.
StrataFrame User (221 reputation)StrataFrame User (221 reputation)StrataFrame User (221 reputation)StrataFrame User (221 reputation)StrataFrame User (221 reputation)StrataFrame User (221 reputation)StrataFrame User (221 reputation)StrataFrame User (221 reputation)StrataFrame User (221 reputation)
Group: Forum Members
Posts: 153, Visits: 462
If you are using SQLExpress, then timeout needs to be manually set to 100. The default in SF is 60. I hit this issue and had to add the following command in SetDataSources of the Programs file:

   MicroFour.StrataFrame.Data.DataBasics.DataSources.Add(new SqlDataSourceItem(string.Empty, "server=xxxxxxxxx;user=xxxxxxx;password=xxxxxxx;database=xxxxxxxxx;Connect Timeout=100"));            

You will still have a wait when the user starts the app but no error. Again I am assuming this is SQLExpress.
Edited 12 Years Ago by Ross L. Rooker, Sr.
GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Similar Topics

Reading This Topic

Login

Explore
Messages
Mentions
Search