none
EventID 7758 WinProj.SaveProject - ExecuteNonQuery requires an open and available Connection. RRS feed

  • Question

  • Hello!

    Since last week we are facing a lot of connections errors between our MS Project 2007 Web servers and the database servers. Brwosing through PWA works fine, but we got often error when we save plans via Project Professional. This happpens for severall users, severall PWA sites and all server farms (all connected to the same DB servers).

    The users getting errors with error ID 42 and 26000 and the Project Save from Professional job cancelled in the queue.

    The Eventof shows errors like

    Event Type: Error
    Event Source: Office SharePoint Server
    Event Category: Project Server Queue
    Event ID: 7758
    Date:  7/4/2011
    Time:  2:28:56 PM
    User:  N/A
    Computer: STRVMPWB1024
    Description:
    Standard Information:PSI Entry Point: WinProj.SaveProject
    Project User: DIR\raghuveer.mandal
    Correlation Id: 44706b88-026a-4209-ad04-876680ad2fc4
    PWA Site URL: <URL>

    SSP Name: SharedServices 2 - 8001
    PSError: Success (0)
    Queue SQL call failed. Error: System.InvalidOperationException: ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.
       at System.Data.SqlClient.SqlConnection.GetOpenConnection(String method)
       at System.Data.SqlClient.SqlConnection.ValidateConnectionForExecute(String method, SqlCommand command)
       at System.Data.SqlClient.SqlCommand.ValidateCommand(String method, Boolean async)
       at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
       at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
       at Microsoft.Office.Project.Server.DataAccessLayer.DAL.SubDal.ExecuteStoredProcedureReturnVal(String storedProcedureName, SqlParameter[] parameters)
       at Microsoft.Office.Project.Server.DataAccessLayer.QueueDal.SendMessage(String prefix, Int32 MessageID, Guid GroupUID, String BodyType, Byte[] MessageBody)
       at Microsoft.Office.Project.Server.BusinessLayer.Queue.BaseQueueAccess.SqlCallRetry.SendMessageSqlCall.Execute()
       at Microsoft.Office.Project.Server.BusinessLayer.Queue.BaseQueueAccess.SqlCallRetry.RetryableSqlCallBase.ExecuteRetryableSqlCall()

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

    Event Type: Error
    Event Source: Office SharePoint Server
    Event Category: Office Server General
    Event ID: 7888
    Date:  7/4/2011
    Time:  1:21:27 PM
    User:  N/A
    Computer: Servername

    Description:
    A runtime exception was detected. Details follow.
    Message: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.

    Techinal Details:
    System.Data.SqlClient.SqlException: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.
       at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
       at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
       at System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error)
       at System.Data.SqlClient.TdsParserStateObject.ReadSni(DbAsyncResult asyncResult, TdsParserStateObject stateObj)
       at System.Data.SqlClient.TdsParserStateObject.ReadPacket(Int32 bytesExpected)
       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.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup)
       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 Microsoft.Office.Server.Data.SqlSession.OpenConnection()
       at Microsoft.Office.Server.Data.SqlSession.ExecuteNonQuery(SqlCommand command)
       at Microsoft.Office.Server.Data.SqlDatabaseManager.HasAccess(String user)
       at Microsoft.Office.Server.Administration.SharedDatabase.Microsoft.Office.Server.Administration.ISharedAccessControl.SetAccessControl(SharedComponentSecurity security)
       at Microsoft.Office.Server.Administration.SharedResourceProvider.SynchronizeAccessControl(SharedComponentSecurity sharedApplicationSecurity)
       at Microsoft.Office.Server.Administration.SharedResourceProvider.Microsoft.Office.Server.Administration.ISharedComponent.Synchronize()

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

     

     We have changed nothing on the Project Server site. On the DB server was SQL Server 2005 Service Pack 4 applied.

    What could be the cause of this issue? From network perspective it looks ok. There is no firewall between the 2 servers.

    Many thanks

    Joerg

     

    Monday, July 4, 2011 7:13 PM

All replies

  • Hi Joerg,

    I can make a few suggestions

    1) one obvious solution would be - Restart the Queue service

    Have you tried that?

    2) Ask the users who get errors with Project Professional to carry out this procedure on their machines-

  • Delete the 12 and Cache folders, generally located at:
    • C:\Documents and Settings\[computer profile name]\Application Data\Microsoft\MS Project
    • C:\Users\[computer profile]\AppData\Roaming\Microsoft\MS Project

    Please see this link for more details

    http://kb.epmlive.com/Print50883.aspx

     

     

     

Tuesday, July 5, 2011 6:55 AM
  • We have restarted the queue severall times. Additional this affects severall users and sometimes it is working sometimes they get this error. Joerg
    Tuesday, July 5, 2011 7:05 AM
  • Only other solution I can think of is increasing the timeout settings.

    http://projectserverblogs.com/?p=2828

    please check the link

    Tuesday, July 5, 2011 7:33 AM