AbstractObject/EndInvokeAsync Bug Fix

posted Oct 18, 2018, 7:36 AM by Eric Patrick
AbstractObject.Async.cs has been updated to fix a bug that can result in IIS crashes. Specifically:

object result = InvokeAsync(operation, parameters);

has been changed to:

object result = await InvokeAsync(operation, parameters);

When called from ImportFile.ashx/Import, synchronous imports run the risk of raising an exception that crashes the application pool. This can be replicated from the Jasmine test specification Import > Import File Queue Engine.

The missing await caused the result object to be an unexecuted task, instead of the expected DataSet, XmlReader, DataReader or null (void).