TheRosettaFoundation / SOLAS-Match

Self-managed translation project interface
www.TheRosettaFoundation.org
GNU Lesser General Public License v3.0
12 stars 8 forks source link

Cannot change deadlines on 'In progress' tasks #1256

Closed Paulina-Rosetta closed 7 years ago

Paulina-Rosetta commented 7 years ago

While this might sound like it shouldn't be possible, it is usually possible, but not in this case.

We added new languages to an old project yesterday: https://trommons.org/project/5622/view/ This involved adding two segmentation tasks. When the segments for these were uploaded, they (the segments = translation tasks) took their deadlines from the old project deadline which was 29 Nov. I have since changed the project deadline to 31 Dec.

So the translation tasks that were created had a deadline of 25 Nov, which needed to be changed. By changing the project deadline, the deadline on all UNCLAIMED tasks was automatically updated to 27 Dec. However, a substantial number of tasks have already been claimed, and in order to avoid complaints and confusion, I have tried to update the deadlines on these claimed tasks manually. The system usually allows me to do this. While some details cannot be changed on claimed (In progress) tasks, the deadline can usually be changed.

When I try to change these deadlines, I get the following error:

A deadlock has occured, please check your task prerequisites.

alanbarrett commented 7 years ago

"public function parseAndBuild($graphArray)" is returning false.

I may not get to sorting this out straight away I do not understand this part of the code and as I have committed to help a Nephew (and separately a Niece) with Maths and other Engineering studies.

Maybe @aquilax will get a chance over the weekend, but if not, I will look at it.

Alan.
alanbarrett commented 7 years ago

I can reproduce and have started to look at this. I have dumped the "$graphArray" in the log.

Alan.
aquilax commented 7 years ago

@alanbarrett sorry, saw this just now.

alanbarrett commented 7 years ago

That is OK, I have started to look at it.

Alan.

On 27 November 2016 at 17:51, Evgeniy Vasilev notifications@github.com wrote:

@alanbarrett https://github.com/alanbarrett sorry, saw this just now.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/TheRosettaFoundation/SOLAS-Match/issues/1256#issuecomment-263136151, or mute the thread https://github.com/notifications/unsubscribe-auth/AAlN_xt7cbQWSSCYaY_atfdSv2pECzyCks5rCcMVgaJpZM4K8UJL .

alanbarrett commented 7 years ago

At last.. The Template has checkboxes disabled when a task has been Claimed, so they will never be successfully sent to server. So the server ends up incorrectly with a NULL for the prerequisites for the current task being edited. This causes the "deadlock" error to be displayed incorrectly. So I have changed the code to not take the new prerequisites from the browser template when a task is Claimed or Complete (but rather keep the old ones).

See commit dbfb206dcf122222fdebd45630aa23533bcdb926

However it does not seem to be possible to set the deadline backwards in time... But if you tell me the Tasks that you want to change the deadline for, I will do it in the database manually, if you give me the date e.g. 2016-12-25 23:00:00

Alan.