public static Map<String, Object> testServiceLockWaitTimeoutRetry(DispatchContext dctx, Map<String, ? extends Object> context) {
LocalDispatcher dispatcher = dctx.getDispatcher();
Locale locale = (Locale) context.get("locale");
try {
// NOTE using persist=false so that the lock retry will have to fix the problem instead of the job poller picking it up again
GenericResultWaiter grabberWaiter = dispatcher.runAsyncWait("testServiceLockWaitTimeoutRetryGrabber", null, false);
GenericResultWaiter waiterWaiter = dispatcher.runAsyncWait("testServiceLockWaitTimeoutRetryWaiter", null, false);
// make sure to wait for these to both finish to make sure results aren't checked until they are done
Map<String, Object> grabberResult = grabberWaiter.waitForResult();
Map<String, Object> waiterResult = waiterWaiter.waitForResult();
List<Object> errorList = FastList.newInstance();