node/test
isaacs cd2b9f542c stream: Avoid nextTick warning filling read buffer
In the function that pre-emptively fills the Readable queue, it relies
on a recursion through:

stream.push(chunk) ->
maybeReadMore(stream, state) ->
  if (not reading more and < hwm) stream.read(0) ->
stream._read() ->
stream.push(chunk) -> repeat.

Since this was only calling read() a single time, and then relying on a
future nextTick to collect more data, it ends up causing a nextTick
recursion error (and potentially a RangeError, even) if you have a very
high highWaterMark, and are getting very small chunks pushed
synchronously in _read (as happens with TLS, or many simple test
streams).

This change implements a new approach, so that read(0) is called
repeatedly as long as it is effective (that is, the length keeps
increasing), and thus quickly fills up the buffer for streams such as
these, without any stacks overflowing.
2013-03-10 11:04:48 -07:00
..
addons test: modify async native test.js to test for #4820 2013-02-21 13:14:07 -08:00
disabled Merge remote-tracking branch 'ry/v0.8' into master 2013-02-18 10:21:08 -08:00
fixtures test: Fix debugger repl tests 2013-02-26 16:49:17 -08:00
gc test: use the debug build of node-weak when necessary 2012-06-13 17:58:28 -07:00
internet DNS: Support NAPTR queries 2013-03-06 14:31:22 +04:00
message process: separate nextTick domain logic 2013-02-27 16:37:10 -08:00
pummel test: Pass cli flags in pummel/test-regress-GH-892 2013-03-06 11:44:29 -08:00
simple stream: Avoid nextTick warning filling read buffer 2013-03-10 11:04:48 -07:00
common.js test: optionally set common.PORT via env variable 2013-03-02 19:09:39 +01:00