* [ANN] yahns 1.3.1 - fix large response corruption
@ 2014-07-16 20:13 5% Eric Wong
0 siblings, 0 replies; 3+ results
From: Eric Wong @ 2014-07-16 20:13 UTC (permalink / raw)
To: yahns-public
This release contains a major bug fix noticeable on FreeBSD VMs, but
should affect Linux systems making large responses which require
output buffering, too.
- test_server: avoid multiple workers for dead parent check
- wbuf: avoid corrupted large responses with zero-copy sendfile
* git clone git://yhbt.net/yahns
* http://yahns.yhbt.net/README
* http://yahns.yhbt.net/NEWS.atom.xml
* yahns-public@yhbt.net
^ permalink raw reply [relevance 5%]
* [PATCH 1/2] test_server: avoid multiple workers for dead parent check
2014-07-16 19:57 5% [PATCH 0/2] FreeBSD-related fixes (affects Linux users, too) Eric Wong
@ 2014-07-16 19:57 7% ` Eric Wong
0 siblings, 0 replies; 3+ results
From: Eric Wong @ 2014-07-16 19:57 UTC (permalink / raw)
To: yahns-public; +Cc: e, EW
From: EW <e+fbsd@80x24.org>
This test is less reliable when there are multiple workers as the
second worker may not be ready to detect a dead parent.
This is still a possible race if the master dies very quicklly
before a worker is fully setup.
---
test/test_server.rb | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/test/test_server.rb b/test/test_server.rb
index bd38ce3..69babb3 100644
--- a/test/test_server.rb
+++ b/test/test_server.rb
@@ -302,7 +302,7 @@ class TestServer < Testcase
end
def test_mp_dead_parent
- pid, host, port = new_mp_server
+ pid, host, port = new_mp_server(1)
wpid = nil
run_client(host, port) do |res|
wpid ||= res.body.to_i
@@ -334,7 +334,7 @@ class TestServer < Testcase
c.close
end
- def new_mp_server(nr = 1)
+ def new_mp_server(nr = 2)
ru = @ru = tmpfile(%w(config .ru))
@ru.puts('a = $$.to_s')
@ru.puts('run lambda { |_| [ 200, {"Content-Length"=>a.size.to_s},[a]]}')
@@ -342,7 +342,7 @@ class TestServer < Testcase
cfg = Yahns::Config.new
host, port = @srv.addr[3], @srv.addr[1]
cfg.instance_eval do
- worker_processes 2
+ worker_processes nr
GTL.synchronize { app(:rack, ru.path) { listen "#{host}:#{port}" } }
logger(Logger.new(File.open(err.path, "a")))
end
--
EW
^ permalink raw reply related [relevance 7%]
* [PATCH 0/2] FreeBSD-related fixes (affects Linux users, too)
@ 2014-07-16 19:57 5% Eric Wong
2014-07-16 19:57 7% ` [PATCH 1/2] test_server: avoid multiple workers for dead parent check Eric Wong
0 siblings, 1 reply; 3+ results
From: Eric Wong @ 2014-07-16 19:57 UTC (permalink / raw)
To: yahns-public; +Cc: e
[PATCH 1/2] test_server: avoid multiple workers for dead parent check
A minor test patch I had queued on my FreeBSD VM but never pushed.
[PATCH 2/2] wbuf: avoid corrupted large responses with zero-copy
This is a major fix, and likely to affect some Linux users with
large responses and fast clients.
Will push a new 1.3.1 release soon.
^ permalink raw reply [relevance 5%]
Results 1-3 of 3 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2014-07-16 19:57 5% [PATCH 0/2] FreeBSD-related fixes (affects Linux users, too) Eric Wong
2014-07-16 19:57 7% ` [PATCH 1/2] test_server: avoid multiple workers for dead parent check Eric Wong
2014-07-16 20:13 5% [ANN] yahns 1.3.1 - fix large response corruption Eric Wong
Code repositories for project(s) associated with this public inbox
https://yhbt.net/yahns.git/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).