BBIS/Messages/Emails timing out during Send Final

The email exceptions when sending out with the following status:

[5/14/2013 4:39:30 PM] - [Created]
[5/14/2013 4:39:30 PM] - [Prepared]
[5/14/2013 4:57:43 PM] - [Processing]
[5/14/2013 4:57:43 PM] - [Processing]
Using processor Blackbaud.AppFx.ContentManagement.Platform.Email.Catalog.ConstituentExportDataProcessor.
[5/14/2013 4:57:43 PM] - [Processing]
Loading conditional content data.
[5/14/2013 5:07:43 PM] - [Exception]
System.Data.SqlClient.SqlException (0x80131904): Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.
The statement has been terminated.
   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
   at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at Blackbaud.AppFx.ContentManagement.Platform.Email.Catalog.Common.ExecuteNonQuery(String commandText, SqlConnection connection, Int32 timeout)
   at Blackbaud.AppFx.ContentManagement.Platform.Email.Catalog.ConstituentExportEmailListProcessor.BuildExportJoinMapTempTable()
   at Blackbaud.AppFx.ContentManagement.Platform.Email.Catalog.ConstituentExportEmailListProcessor.get_JoinMaps()
   at Blackbaud.AppFx.ContentManagement.Platform.Email.Catalog.ExportEmailListProcessorBase.RunExport()
   at Blackbaud.AppFx.ContentManagement.Platform.Email.Catalog.ExportEmailListProcessorBase.PrepareForProcessing()
   at Blackbaud.AppFx.ContentManagement.Platform.Email.Catalog.ExportDataProcessorBase.get_PreparedListProcessor()
   at Blackbaud.AppFx.ContentManagement.Platform.Email.Catalog.ExportDataProcessorBase.BuildRecipientsSelectionSQL()
   at Blackbaud.AppFx.ContentManagement.Platform.Email.Catalog.EmailProcessor.ProcessEmail()
   at Blackbaud.AppFx.ContentManagement.Platform.Email.Catalog.ProcessCMSEmailBusinessProcess.StartBusinessProcess()
Parenthesis placement in the original, failing query:
(Sites\Name = MySite
AND AttributeX = Yes
OR AttributeY = No)
AND (AttributeA = Yes
OR AttributeB = Yes)

The logical conflict occurs when AND & OR operators are encapsulated within the same parenthetical expression.  Moving the Parenthesis inside the first AND statement resolved the query timeout issue, and allowed the List to refresh and email to send.

Corrected parenthesis placement:
Sites\Name = MySite
AND (AttributeX = Yes
OR AttributeY = No)
AND (AttributeA = Yes
OR AttributeB = Yes)

Environment

 2.93 patch 65

Was this article helpful?