- 14 Jan, 2020 1 commit
-
-
Nils Goroll authored
This reverts commit 8ea006ee. does not seem to make a difference, trying to narrow down using other means (different platforms)
-
- 13 Jan, 2020 7 commits
-
-
Dridi Boukelmoune authored
V1L_Close() is now in charge of returning a specific enum sess_close instead of an error flag where SC_NULL implies that everything went well. This otherwise maintains the status quo regarding prior handling of HTTP/1 write errors. The calling code falls back to what it used to default to when an error occurred somewhere else.
-
Dridi Boukelmoune authored
Under load, client c4 from g00005.vtc may fail with a 200 response instead of the expected 206 partial response. There is a window during which we might still see a boc, but because c4 sets beresp.do_stream to false, the fetch has to be over. To close this race we can instead reference the boc as suggested in #2904 and keep track of the boc state.
-
Nils Goroll authored
-
Nils Goroll authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
Poul-Henning Kamp authored
-
- 10 Jan, 2020 1 commit
-
-
Federico G. Schwindt authored
-
- 09 Jan, 2020 3 commits
-
-
Federico G. Schwindt authored
-
Federico G. Schwindt authored
-
Federico G. Schwindt authored
-
- 08 Jan, 2020 3 commits
-
-
Dridi Boukelmoune authored
Closes #3178
-
Dridi Boukelmoune authored
Contrary to previous attempts this one takes a different route that is much more reliable and faster. First, it sets things up so that we can predicatbly lock varnish when it's trying to send the first (and only) part of the body. Instead of assuming a delay that is sometimes not enough under load, we wait for the timeout to show up in the log. We can't put the barrier in l1 or l2 because logexpect spec evaluation is eager, in order to cope with the VSL API. Because we bypass the cache, we can afford letting c1 bail out before completing the transaction, which is necessary because otherwise the second c1 run would take forever on FreeBSD that takes our request to limit the send buffer to 128 octets very seriously (on Linux we get around 4k). Because we use barriers, the send and receive buffers were bumped to 256 to ensure c1 doesn't fail (on FreeBSD) before it reaches barrier statements.
-
Dridi Boukelmoune authored
-
- 05 Jan, 2020 2 commits
-
-
Federico G. Schwindt authored
-
Federico G. Schwindt authored
-
- 03 Jan, 2020 2 commits
-
-
Dridi Boukelmoune authored
This reverts commit df9f3489. It succeeded in terms of determinism but there is another underlying bug to fix so it will be submitted again via #3178 instead.
-
Dridi Boukelmoune authored
The fetch may be interrupted before s1 has time to buffer the complete response.
-
- 02 Jan, 2020 3 commits
-
-
Dridi Boukelmoune authored
This test has been relying on SLT_Debug records from day one and now that we have SLT_Notice we could perpetuate this information and at the same time grant ourselves the freedom to explain each case and which parameters may be used to try to improve the situation.
-
Dridi Boukelmoune authored
I'm no longer able to time it out under load.
-
Dridi Boukelmoune authored
There was a race with the reuse of s1 and server -dispatch was the simplest way to also circumvent the race where varnish could retry before s1 would reach the next accept action. While at it, add coverage for the 503 case.
-
- 01 Jan, 2020 3 commits
-
-
Federico G. Schwindt authored
Apparently this is missing in sunos+gcc 4.7. While here tight things up a bit.
-
Dridi Boukelmoune authored
The previous tweak paid off, the problem is not an unexpected ReqAcct when this test fails, but a lack of logs during the check.
-
Federico G. Schwindt authored
-
- 31 Dec, 2019 2 commits
-
-
Dridi Boukelmoune authored
The test cases disabling the accept_filter parameter are those involving GET requests with a body that are meant to be cached, and one test case covering OOB data. The rest uses the POST method since the httpready filter will only let syntactically correct GET or HEAD methods pass to the application. Apparently FreeBSD's httpready filter considers that a GET request with a body is syntactically incorrect although this is not specifically said in the manual. The HTTP specification doesn't forbid such requests and they are hard to justify considering the semantics of GET and HEAD, but there are products in the wild relying on that. On the other hand GET\r\n\r\n isn't considered malformed, see r01881.vtc. We don't need the dataready filter on FreeBSD for listen addresses that expect a PROXY protocol header, the httpready filter will effectively work like that if the request doesn't look like a GET or a HEAD.
-
Dridi Boukelmoune authored
Trying to understand why I was seeing setsockopt fail on FreeBSD VTEST boxes and why it failed with an undocumented ENOENT I finally realized that I needed to kldload accf_http beforehand. The ENOENT errno was probably a result of accept_filter code not finding a kernel module for "httpready".
-
- 30 Dec, 2019 7 commits
-
-
Dridi Boukelmoune authored
I couldn't reproduce the failure reported by VTEST but hopefully this will shed some light next time it happens. Better diff with the --word-diff option.
-
Dridi Boukelmoune authored
The change in u00011.vtc is the result of having two commands starting with "pi", breaking auto-completion. Fortunately "pin\t" still does the trick.
-
Poul-Henning Kamp authored
-
Dridi Boukelmoune authored
It was a bit racy in the sense that the logs for c2 could be committed before the c1 logs. I hardened the expectations a bit in the process.
-
Dridi Boukelmoune authored
This adds the errno value to error logs for TCP fast open and accept filters. For FreeBSD errno is cleared prior to calling setsockopt with the hope that it will help understand if it's actually failing with an undocumented ENOENT. Speaking of documentation, the return value is either 0 or -1 for so there's no point in logging that.
-
Dridi Boukelmoune authored
Once all instances of a given test are started all of the remaining tests would free the test data structure, we needed another counter to keep track of ongoing tests so that only the last one to finish would do the single free.
-
Dridi Boukelmoune authored
-
- 29 Dec, 2019 6 commits
-
-
Guillaume Quintard authored
-
Guillaume Quintard authored
-
Guillaume Quintard authored
-
Guillaume Quintard authored
-
Guillaume Quintard authored
-
Guillaume Quintard authored
-