Observed on Jenkins; truncated analytics_diag.json due to an error in the diagnostic request logic. Per the http client documentation
// Callers should always process the n > 0 bytes returned before
|
// considering the error err. Doing so correctly handles I/O errors
|
// that happen after reading some bytes and also both of the
|
// allowed EOF behaviors.
|
the proxy should be processing any bytes read prior to handling any returned error code (e.g. EOF), but is failing fast when an EOF encountered, discarding any final bytes read.
This could occur with any of the diagnostic requests to Analytics, which can be critical for evaluating customer issues.
e.g.
https://analytics.jenkins.couchbase.com/job/cbas-cbcluster-test-jdk17/com.couchbase.analytic[…].cbserver/ClusterCbCollectInfoIT/testDiagnosticsJson/
|
Unexpected end-of-input in VALUE_STRING
|
at [Source: (File); line: 1, column: 179201]
|
172.17.0.2 - - [13/Dec/2023:21:00:08 -0800] "GET /analytics/node/diagnostics HTTP/1.1" 200 179263 - "cbas/7.6.100-0000"
|
$ ls -als ~/Downloads/analytics_diag.json
|
352 -rw-r--r--@ 1 michaelblow staff 179200 Dec 14 08:12 /Users/michaelblow/Downloads/analytics_diag.json
|