hpcc-systems/HPCC-Platform — pull request #6040 by jakesmith (2014-06-11 08:39:39+00:00)
Title: HPCC-11261 - fileservice superfile actions can lockup on retry

Back porting 5.0 changes to 4.2.6, comprised of 3 cherry-picked commits:

1) [ NB: This was opened as separate issue to fix regression introduced by HPCC-11261 ]
commit 4cc6ced8aa10ffbac47e15ef6edf1988fdec2311
Author: Jake Smith
Date: Wed Apr 30 16:37:00 2014 +0100

HPCC-11288 - regression if inside transaction

Signed-off-by: Jake Smith

2) commit ce5aea2f2c687947c18d2b8e3b6bc79ce64b537a
Author: Jake Smith
Date: Tue Apr 29 11:54:09 2014 +0100

HPCC-11261 - add some comments

Signed-off-by: Jake Smith

3) commit c461b36d501fc3d06bc4f7ac17570e88b251910a
Author: Jake Smith
Date: Tue Apr 29 11:27:55 2014 +0100

HPCC-11261 - fileservice superfile actions can lockup on retry

superfile actions that block due to other locks, clear their
cached files on pause/retry. However, the superfiles from
fileservices were still being held behind the transactions back.
On retry the transaction restablishes the file locks, but is
now in contention with the superfiles held in the caller.

Change so that transaction is started/committed (if required)
after the file is release in the caller

Signed-off-by: Jake Smith