diff options
| -rw-r--r-- | test/monkey9p.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/test/monkey9p.py b/test/monkey9p.py index ee0b0ebc..7ab6cb0c 100644 --- a/test/monkey9p.py +++ b/test/monkey9p.py @@ -1514,7 +1514,11 @@ def one_failure_rule(ctx, res): if not lo <= len(errs) <= hi: return (f'{len(failed)} failed write(s) logged {len(errs)} err record(s) ' f'(allowed {lo}..{hi}); failed={[(w[0], w[1], w[3]) for w in failed]} window={res.window}') - if failed and msgs: + # A msg is a failed write's only when no Twrite of the op succeeded: a + # line cut across Twrites runs a piece a Twrite, and a piece that ran + # (a Save) says so while a later one is refused. + succeeded = [w for w in writes if w[2] is True and w[0] == 'write'] + if failed and msgs and not succeeded: return f'a failed write also logged msg: {msgs}; failed={[(w[1], w[3]) for w in failed]}' return None |
