[PATCH] chg: handle EOF reading data block
quark at fb.com
Wed Jul 20 11:47:20 EDT 2016
Excerpts from Yuya Nishihara's message of 2016-07-21 00:18:35 +0900:
> When parent and child processes write to ui.fout/ferr, they have different
> stdio buffers and duplicated fds. So two writes won't be serialized even if
> we do write(header + data) instead of write(header) + write(data).
I'm aware of that but I'm not sure if it is the cause. Mercurial uses
threads to do batch updating and that may cause issues as well. Even if
we only have a single thread, it could also be problematic if exceptions
are raised during writing.
More information about the Mercurial-devel