Hi,
recently we keep getting timeouts when starting new builds from Continua after the server has been running for a while. Normally restarting the Continua and Postgres services helps in that situation but that is quite inconvenient. We are using an imported database from our old buildserver.
The error message is
Exception: NpgsqlException
Message: A timeout has occured. If you were establishing a connection, increase Timeout value in ConnectionString. If you were executing a command, increase the CommandTimeout value in ConnectionString or in your NpgsqlCommand object.
Stack Trace: at Npgsql.NpgsqlState.ProcessBackendResponsesEnum(NpgsqlConnector context)
at Npgsql.NpgsqlCommand.GetReader(CommandBehavior cb)
at Npgsql.NpgsqlCommand.ExecuteNonQuery()
at NHibernate.AdoNet.AbstractBatcher.ExecuteNonQuery(IDbCommand cmd)
at NHibernate.AdoNet.NonBatchingBatcher.AddToBatch(IExpectation expectation)
at NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Boolean[] notNull, Int32 j, SqlCommandInfo sql, Object obj, ISessionImplementor session)
The full entry from Continua event log is attached.
Okay apparently I cannot attach files so here is the full event log entry
Importance: Error
Date: Monday, February 10, 2014
Time: 11:28:52 AM
Message:
Unhandled Service Exception
Exception: GenericADOException
Message: could not insert: [Continua.Modules.Builds.BuildRepository#52ed2f45-427f-4153-a81d-a2ce00bd1d2a][SQL: INSERT INTO builds_buildrepository (CacheRevision, Branch, Branchdisplayname, RepositoryId, BuildId, id) VALUES (?, ?, ?, ?, ?, ?)]
Stack Trace: at NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Boolean[] notNull, Int32 j, SqlCommandInfo sql, Object obj, ISessionImplementor session)
at NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Object obj, ISessionImplementor session)
at NHibernate.Action.EntityInsertAction.Execute()
at NHibernate.Engine.ActionQueue.Execute(IExecutable executable)
at NHibernate.Engine.ActionQueue.ExecuteActions(IList list)
at NHibernate.Engine.ActionQueue.ExecuteActions()
at NHibernate.Event.Default.AbstractFlushingEventListener.PerformExecutions(IEventSource session)
at NHibernate.Event.Default.DefaultFlushEventListener.OnFlush(FlushEvent event)
at NHibernate.Impl.SessionImpl.Flush()
at NHibernate.Transaction.AdoTransaction.Commit()
at Continua.Shared.Data.Hibernate.NHibernateDatabase.SaveChanges()
at Continua.Modules.Builds.BuildManager.QueueUsersBuild(Configuration configuration, User user, BuildPriority priority, IDictionary2 variables, BuildChangesetAssociationOptions associationOptions, IDictionary
2 repositoryBranches, String comment)
at Continua.Modules.Builds.Services.ConfigurationService.Start(Guid configurationId, BuildPriority priority, BuildChangesetAssociationOptions associationOptions, String comment, IDictionary2 variables, IDictionary
2 repoBranches)
at SyncInvokeStart(Object , Object[] , Object[] )
at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
Exception: NpgsqlException
Message: A timeout has occured. If you were establishing a connection, increase Timeout value in ConnectionString. If you were executing a command, increase the CommandTimeout value in ConnectionString or in your NpgsqlCommand object.
Stack Trace: at Npgsql.NpgsqlState.ProcessBackendResponsesEnum(NpgsqlConnector context)
at Npgsql.NpgsqlCommand.GetReader(CommandBehavior cb)
at Npgsql.NpgsqlCommand.ExecuteNonQuery()
at NHibernate.AdoNet.AbstractBatcher.ExecuteNonQuery(IDbCommand cmd)
at NHibernate.AdoNet.NonBatchingBatcher.AddToBatch(IExpectation expectation)
at NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Boolean[] notNull, Int32 j, SqlCommandInfo sql, Object obj, ISessionImplementor session)