bloom
bloom copied to clipboard
Cached response is incomplete
Hi, I am getting clipped responses when set up with nginx. First request looks good (using curl), but second gets part of the response clipped (typically last bit of
Do you have network traces (HTTP traces) to provide as examples?
No, I'm sorry, I'll see if I get the chance to do that. I do not have too much time to debug this, so I understand if you decide to close the issue.
Here is the test file test.html I use and the bloom.cfg: https://gist.github.com/squaresmile/151efedc0ce86c3f4701ab11852238d6
The upstream is a simple basic python -m http.server serving the html file.
The first request without caching returns the test.html file correctly.
⋊> curl -H "Bloom-Request-Shard: 0" localhost:8080/test.html
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bloom test</title>
Bloom Test
More Bloom Test
The second request with caching returns the test.html missing "Test" at the end.
⋊> curl -H "Bloom-Request-Shard: 0" localhost:8080/test.html
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bloom test</title>
Bloom Test
More Bloom⏎
I queried the redis data directly and the data looks fine:
>>> print(brotli.decompress(data).decode("utf-8"))
HTTP/1.1 200 OK
Server: SimpleHTTP/0.6 Python/3.8.5
Content-Type: text/html
Content-Length: 178
Last-Modified: Tue, 06 Oct 2020 18:42:46 GMT
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bloom test</title>
Bloom Test
More Bloom Test
bloom-server 1.29.0
Redis 6.0.6
Just from what i read here, might it be that the Redis takes to long to serve the cached object? Also i ran this in my development with dragonfly since its a lot faster and didnt notice this isse with around 10k req/m