As far as I can tell it is because the family_pids are dynamic, and we
cannot tell for sure if the a pid has been reused: it can happen
milliseconds after family_pids have been computed. In a normal system
chances are extremely slim, but as my test system shows it is
non-zero.
Again: GNU Parallel has no business sending signals to arbitrary process
ids. As your toy example shows, this may kill an unrelated process.
Agreed. GNU Parallel should only send signals to its own child
processes, it should not attempt to send signals elsewhere.
Martin