tballison commented on PR #2962:
URL: https://github.com/apache/tika/pull/2962#issuecomment-5046676738
I agree with my claude on this one. Seriously, thank you for opening this
and iterating on it.
```
Thanks for iterating. The last two commits trade the threaded read() param
for a mutable global static (PipesMessage.MAX_PAYLOAD_BYTES un-final'd,
set as a side effect of the config setter). I'd push back on that — the
global loses per-config semantics (multiple PipesConfig in one JVM → last
load() wins, so getMaxIpcPayloadBytes() can disagree with what's
enforced), pollutes tests (testMaxIpcPayloadBytesFromJson sets 200 MB and never
resets), and races (non-volatile, read from the IPC loops). The earlier
threaded approach (e2c987f) was verbose but correct. (The long → int switch
is a good call, though.)
Two things still open regardless:
1. Over-limit payloads throw a bare IOException that PipesClient reports
as UNSPECIFIED_CRASH/process_crash — reason dropped from the HTTP response
and the healthy server gets restarted. Deserves a distinct TASK_EXCEPTION
status (e.g. OUTPUT_TOO_LARGE).
2. Add a test that loads {"pipes":{"maxIpcPayloadBytes":0}} via
PipesConfig.load and asserts rejection.
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]