The encoding schemes require redundancy groups to meet certain requirements. For XOR, each group must have at least two members. Partner and RS included checks, but XOR was missing its check. This would allow an invalid group to pass through, which eventually leads to a divide by zero. This PR adds a check to print an error message and abort, which is not great. Though, it's better than a random divide by zero and it's consistent with how Partner and RS behave.
The encoding schemes require redundancy groups to meet certain requirements. For XOR, each group must have at least two members. Partner and RS included checks, but XOR was missing its check. This would allow an invalid group to pass through, which eventually leads to a divide by zero. This PR adds a check to print an error message and abort, which is not great. Though, it's better than a random divide by zero and it's consistent with how Partner and RS behave.