Bug 36730: (Bug 35428 follow-up) po files (sometimes) fail to update
Under some circumstances (e.g. non-standard disk latency) po files fail
to be generated. The output from the gulp po:update --lang xx-XX task
is than like this:
[10:01:39] 'po_update_staff' errored after 6.41 s
[10:01:39] Error: ENOENT: no such file or directory, open '/tmp/koha-5WCc9s/Koha-staff-prog.pot'
This is due to the time dependencies inside the function flush (callback)
(in the function xgettext) in gulpfile.js. It happens that the
/tmp/koha-NNNNNN folder gets deleted before the asynchronous callback
function called by fs.readFile is completed. The callback should copy
the content of the .pot file from /tmp/koha- to its final destination,
while, in parallel in fact, the folder inside /tmp is being removed.
This creates a race condition.
Test plan:
==========
Hard to reproduce. But the race condition found in the code should
be obvious.
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 67b3cbd438
)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This commit is contained in:
parent
9b1f7dfa32
commit
5291e6b6b5
1 changed files with 1 additions and 1 deletions
|
@ -385,8 +385,8 @@ function xgettext (cmd, filename) {
|
|||
file.path = path.join(file.base, filename);
|
||||
file.contents = data;
|
||||
callback(null, file);
|
||||
fs.rmSync(folder, { recursive: true });
|
||||
});
|
||||
fs.rmSync(folder, { recursive: true });
|
||||
});
|
||||
});
|
||||
})
|
||||
|
|
Loading…
Reference in a new issue