diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-28 17:51:35 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-10-01 00:12:15 -0300 |
| commit | 7de6d8304f563023c4a5fa9f8223f9ed626c5f91 (patch) | |
| tree | c406339964e6af5383d49cf8a23fe26dd8c634fb /test | |
| parent | 9f6de14934df03c2e3d521af78ce2e5d7362cc88 (diff) | |
| download | pardes-7de6d8304f563023c4a5fa9f8223f9ed626c5f91.tar.gz pardes-7de6d8304f563023c4a5fa9f8223f9ed626c5f91.zip | |
Sixteen 9P connections, and the next one is told there is no room instead of being reset
Four slots ran out under scripts plus a mount, and the fifth client was closed without a word, which through a mount looks exactly like a dead session. pardes now serves sixteen, and builds against cloud9 09b77cf, whose runner answers the Tversion of a client it cannot seat with an Rerror "too many connections" and tells pardes, which logs `err - 9p: too many connections`. QUIC keeps its own sixteen and still just closes.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'test')
| -rw-r--r-- | test/fs.py | 16 |
1 files changed, 16 insertions, 0 deletions
@@ -371,6 +371,22 @@ def discovery(binary, embedded=False): assert f'err {unsaved} ctl: Save /nonexistent-pardes-dir/x.txt: '.encode() in client.read('/log'), client.read('/log') client.remove(f'/pane/{unsaved}') + # Sixteen connections fill the slots; the next is told why. + extra = [Client(address) for _ in range(15)] + try: + try: + Client(address).__exit__() + raise AssertionError('a seventeenth connection was served') + except OSError as refused: + assert 'too many connections' in str(refused), refused + finally: + for other in extra: + other.__exit__() + deadline = time.monotonic() + 5 + while b'err - 9p: too many connections' not in client.read('/log'): + assert time.monotonic() < deadline, client.read('/log') + time.sleep(.01) + print('9P discovery: listing/stat/find are inert; new, remove, look, exec, name, sel, log, ctl lock, focus, the ctl split and commands behave') |
