Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • kevinuk84 10 posts 30 karma points
    Jun 12, 2021 @ 09:02
    kevinuk84
    0

    Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding

    Hi,

    I have started to receive the following exception and wondered whether anyone knows of a fix? I have checked the Windows Event Logs and there are no other events at the time. Also, we have multiple databases on the server - None of the other applications report SQL as being unavailable.

    Do I need to increase a timeout somewhere?

    I am running Newsletter Studio 2.1.9.2

    2021-06-10 14:06:36,718 [P2220/D2/T68] ERROR NewsletterStudio.Umbraco.WebAPI.SendController - Unhandled controller exception occurred System.Data.SqlClient.SqlException (0x80131904): Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding. ---> System.ComponentModel.Win32Exception (0x80004005): The wait operation timed out 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, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) at System.Data.SqlClient.SqlCommand.ExecuteScalar() at NewsletterStudio.Infrastucture.Data.PetaPoco.Database.ExecuteScalar[T](String sql, Object[] args) at NewsletterStudio.Infrastucture.Data.PPDatabaseAdaptor.ExecuteScalar[T](Sql sql) at NewsletterStudio.Infrastucture.Services.SendInfoService.CreateViewModel(Newsletter newsletter) at NewsletterStudio.Umbraco.WebAPI.SendController.GetSendingStatus(HttpRequestMessage request, Int32 id) at lambdamethod(Closure , Object , Object[] ) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>cDisplayClass10.9(Object instance, Object[] methodParameters) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken) --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ApiControllerActionInvoker._0.MoveNext() ClientConnectionId:2fd74b09-05d5-48f9-8b40-92bdd925b804 Error Number:-2,State:0,Class:11

  • Markus Johansson 1936 posts 5864 karma points MVP 2x c-trib
    Jun 14, 2021 @ 13:17
    Markus Johansson
    0

    Hi!

    Thank you for using the package!

    Just to understand more about your setup, how are you hosting the solution? Do you have a lot of recipients in your lists? Approx. how many?

    In what part of the app do you see this error?

    Looking at the trace it looks like this error is returned when the "send out progress" is displayed, but these SQL-queries should require that much - it's just simple "Count()"-queries. You could try to increate the SQL-time out in your connection string.

    Ie:

    DataSource=server;
    InitialCatalog=database;
    UserId=username;
    Password=password;
    Connection Timeout=120
    

    Another thing you could try is to upgrade to the latest version for V7 (that would be 2.1.9.8) from here: https://our.umbraco.com/packages/backoffice-extensions/newsletter-studio-the-email-studio/

    Please let me know if the increased timeout solves your issues.

  • kevinuk84 10 posts 30 karma points
    Jun 21, 2021 @ 18:07
    kevinuk84
    0

    Hi Mark,

    Per your suggestion, I added the Connection Timeout to the web.config - Since doing this, I haven't seen anymore errors in the log.

    However, a user advised that they received a 'timeout' message today when sending an email to 1600 people. However, I can confirm that all emails have been sent successfully.

    I have found this in the log file:

    2021-06-21 11:38:42,104 [P8228/D14/T147] ERROR Umbraco.Core.UmbracoApplicationBase - An unhandled exception occurred System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.FormatException: Index (zero based) must be greater than or equal to zero and less than the size of the argument list. at System.Text.StringBuilder.AppendFormatHelper(IFormatProvider provider, String format, ParamsArray args) at System.String.FormatHelper(IFormatProvider provider, String format, ParamsArray args) at System.String.Format(String format, Object[] args) at NewsletterStudio.Infrastucture.Compression.LegacyEncryptionCompressor.Decompress(String compressedText) at NewsletterStudio.Infrastucture.Compression.LegacySimpleAESProxyCompressor.Decompress(String compressedText) at NewsletterStudio.AppPlugins.NewsletterStudio.Pages.Tracking.TrackPixel.ProccessQueryString() at NewsletterStudio.AppPlugins.NewsletterStudio.Pages.Tracking.TrackPixel.Page_Load(Object sender, EventArgs e) at System.Web.UI.Control.OnLoad(EventArgs e) at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) at System.Web.UI.Page.HandleError(Exception e) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) at System.Web.UI.Page.ProcessRequest() at System.Web.UI.Page.ProcessRequest(HttpContext context) at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

  • kevinuk84 10 posts 30 karma points
    Jun 21, 2021 @ 20:08
    kevinuk84
    0

    Hi Mark,

    Please ignore the comment above re timeout - This turned out to be Umbraco timing out the users login. Any thoughts you have on the above unhandled exception would be useful thought.

    Also, can you remind me, is the sending of email asynchronous - i.e. can the user close the browser once they have triggered the sending of an email?

    Kind Regards

    Kev

  • Markus Johansson 1936 posts 5864 karma points MVP 2x c-trib
    Jun 22, 2021 @ 19:59
    Markus Johansson
    0

    Hi!

    Thanks for the update, nice to hear that the "issue" was not related to the package =D

    Well, the sending is handles in a background thread that will continue to run until the website (the app pool) is shut down. If this happens during a send out the package will pick up where it was interrupted the next time the website starts again.

    So to answer your question: Your editors should be able to just close the browser if they would like to, or work on other things in the backoffice during the send out, they can always come back to the view to watch the progress.

    All the best!

    /// Markus

Please Sign in or register to post replies

Write your reply to:

Draft