From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.0 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 1457120706 for ; Tue, 5 Jul 2016 13:50:20 +0000 (UTC) From: Eric Wong To: yahns-public@yhbt.net Subject: [PATCH 0/3] another round of proxy_pass fixes Date: Tue, 5 Jul 2016 13:50:13 +0000 Message-Id: <20160705135016.14274-1-e@80x24.org> List-Id: I really hope this will be the last round of critical fixes :) Stress-tested numerous times on a yet-to-be-public 800M+ git repo over dumb HTTP cloning: GIT_SMART_HTTP=0 git clone (client) | v yahns HTTP/HTTPS proxy_pass(proxy_buffering: false) | v varnish 4.0.2 (random chunks results, even given Content-Length :p) | v static file server (with some dynamic parts) Eric Wong (3): proxy_pass: avoid TOCTTOU race when unbuffering, too proxy_pass: avoid accessing logger in env after hijacking proxy_pass: avoid stuck responses in "proxy_buffering: false" lib/yahns/proxy_http_response.rb | 8 +++----- lib/yahns/wbuf_lite.rb | 8 ++++++-- 2 files changed, 9 insertions(+), 7 deletions(-) P.S. and git dumb HTTP cloning could probably be better about memory/CPU usage...