Copied to clipboard

Flag this post as spam?

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


  • Kevin Hall 7 posts 97 karma points
    Feb 11, 2022 @ 14:10
    Kevin Hall
    0

    Try to continue the send out query

    Hi,

    I have received the following error whilst trying to send a newsletter to ~1700 members.

    This newsletter has the status error, something probably went wrong during the send out

    Error message: NewsletterStudio, SendNewsletterService: 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.ExecuteReader(CommandBehavior behavior, String method) at NewsletterStudio.Infrastucture.Data.PetaPoco.Database.

    You can try to continue to send the newsletter by going to the "Send options" and follow the instructions.

    The send was successful to ~1200 members. If I click, 'Try to continue the send out', will it attempt to send to the full list again, or just the remaining members?

  • Markus Johansson 1911 posts 5757 karma points MVP c-trib
    Feb 15, 2022 @ 15:47
    Markus Johansson
    0

    Hi!

    Sorry to hear that you are having issues.

    Newsletter Studio keeps a queue in the database so it will just continue from where the exception happened.

    Not sure why this exception happened, maybe the SQL Server was under load or unavailable? During the sending, the quires to the database should not be heavy at all.

    Maybe you could try to extend the timeout using the connection string settings: https://stackoverflow.com/questions/20142746/what-is-connect-timeout-in-sql-server-connection-string/20142791

    If you need further assistance I also need to know what version of the package you are running and also Umbraco-version.

    Cheers!

  • Kevin Hall 7 posts 97 karma points
    Mar 02, 2022 @ 15:40
    Kevin Hall
    0

    Hi Mark,

    Thank you for your reply. I have done some further investigation into this.

    I can see that SQL Server consumes 100% CPU when the newsletter send is running

    I have taken a SQL trace - Can I send you this via email?

    Also, would you have any concerns with me adding an index to the following columns:

    [dbo].[ns_EmailTrackingItems]

    • Newsletter_Id
    • Status
    • SubscriberId
    • SendDate
    • CreateDate

    [dbo].[ns_Newsletters]

    • SentDate
    • Status

    Kind Regards

    Kev

  • Markus Johansson 1911 posts 5757 karma points MVP c-trib
    Mar 03, 2022 @ 08:14
    Markus Johansson
    0

    Hi!

    Does it consume 100% all the time? The startup of the process is quite heavy when the queue is created but after this there should only be some writes to update the status of items in the queue.

    Some questions:

    • What version of the package are you on?
    • What version of Umbraco are you on?
    • Do you have any custom code? Ig. "RenderTasks"?

    It would be very helpful to see the SQL-trace feel free to send it to markus [at sign here] enkelmedia.se.

    Reg. indexes, I don't see any problems with adding these indexes. We could include all kinds of indexes "out of the box" but the once we ship is the once we've found most useful so far. If you find that any of these indexes makes a big difference I'm more than happen to add them to the package as well.

    Cheers!

  • Kevin Hall 7 posts 97 karma points
    Mar 03, 2022 @ 08:55
    Kevin Hall
    0

    Thanks Mark,

    We are running Umbraco 7.7.4 and Newsletter Studio 2.1.9.8.

    I am not aware of us implementing any custom code.

    For awareness, I implemented the indexes last night and a newsletter to 1700 completed successfully this morning. Unfortunately, I was in a meeting at the time, so was not able to check the CPU at runtime, to see if the indexes made any difference.

    I will send you the SQL trace file later today.

    Kind Regards

    Kev

  • Markus Johansson 1911 posts 5757 karma points MVP c-trib
    Mar 03, 2022 @ 09:04
    Markus Johansson
    0

    Hi!

    Thanks! Great, your are on the latest version of the package which is always a good thing.

    1 700 recipients should be a "no brainer" for the package in terms of performance so it really sounds strange. We have customers sending to over 100k recipients in the V2-version.

    But there might be something that you're using in the templates that is slowing it down. SQL traces might give more insights, I'll wait for them and lets take if from there.

    Cheers!

Please Sign in or register to post replies

Write your reply to:

Draft