PRE-RELEASE v0.8.0

Bundles the discard-body accounting fix for nginx_ipng_bytes_in_total
and the robot-test/install-deps iteration-speed work.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-22 10:02:12 +02:00
parent 05d405aba5
commit 2b7a2c136a
2 changed files with 21 additions and 1 deletions

View File

@@ -26,7 +26,7 @@ BUILD_DIR := $(CURDIR)/build
# the package version from there directly. The C code picks up VERSION # the package version from there directly. The C code picks up VERSION
# via the generated src/version.h (written by the version-header target # via the generated src/version.h (written by the version-header target
# below and depended on by the module build). # below and depended on by the module build).
VERSION := 0.7.2 VERSION := 0.8.0
NGINX_SRC ?= NGINX_SRC ?=

20
debian/changelog vendored
View File

@@ -1,3 +1,23 @@
nginx-ipng-stats-plugin (0.8.0-1) unstable; urgency=medium
* Pre-release v0.8.0.
- Log handler now accounts for request bodies that nginx
discarded before any handler could read them (rate-limit
403, auth_request denial, 413 on fixed Content-Length,
early `return 4xx;` on POST). Those paths route through
ngx_http_discard_request_body / HTTP/2 skip_data, both of
which drop bytes without touching r->request_length —
leaving nginx_ipng_bytes_in_total blind to most of the
wire on rate-limited POST-heavy workloads (observed ~20x
gap against btop on a CT-log-style box). When
r->discard_body is set and the client advertised a
Content-Length, we now add content_length_n to bin_sz.
Normal 200-OK POSTs are unchanged. See docs/nginx-issues.md
for the full analysis of which nginx paths update
r->request_length and which don't.
-- Pim van Pelt <pim@ipng.ch> Wed, 22 Apr 2026 09:59:53 +0200
nginx-ipng-stats-plugin (0.7.2-1) unstable; urgency=medium nginx-ipng-stats-plugin (0.7.2-1) unstable; urgency=medium
* Pre-release v0.7.2. * Pre-release v0.7.2.