summaryrefslogtreecommitdiffstats
path: root/streaming
diff options
context:
space:
mode:
authorodynik <odynik.ee@gmail.com>2022-01-20 22:51:21 +0200
committerGitHub <noreply@github.com>2022-01-20 23:51:21 +0300
commit0f0d881bf3484e060d58cc69fb3ea54d5861da11 (patch)
tree271b955e07a6ac1492847a818d1c94be48c3b52f /streaming
parenta8f8f80c77d1f31b9872ae3af43541dc27f16b0b (diff)
[Stream Compression] - Compressor buffer overflow causes stream corruption. (#12019)
Diffstat (limited to 'streaming')
-rw-r--r--streaming/README.md12
-rw-r--r--streaming/rrdpush.c2
2 files changed, 10 insertions, 4 deletions
diff --git a/streaming/README.md b/streaming/README.md
index c90b7a77aa..eeb85f1b2d 100644
--- a/streaming/README.md
+++ b/streaming/README.md
@@ -362,13 +362,19 @@ To check if your Netdata Agent has stream compression enabled, run the following
```
Note: The `stream-compression` status can be `"enabled" | "disabled" | "N/A"`.
-Stream data compression is enabled by default on systems where LZ4 library v1.9.0+ is installed. A compressed data packet is determined and decompressed on the fly.
+A compressed data packet is determined and decompressed on the fly.
#### Limitations
-The current implementation of streaming data compression has the limitation that the size of single data block transmitted must not exceed 16384 bytes. If single data block size exceeds this limit, stream data compression should be disabled.
+ This limitation will be withdrawn asap and is work-in-progress.
+
+The current implementation of streaming data compression can support only a few number of dimensions in a chart with names that cannot exceed the size of 16384 bytes. In case you experience stream connection problems or gaps in the charts please disable stream compresssion in the `stream.conf` file. This limitation can be seen in the error.log file with the sequence of the following messages:
+```
+Compression error - data discarded
+Message size above limit:
+```
#### How to enable stream compression
-Netdata Agents are shipped with data compression enabled by default. You can also configure which streams will use compression.
+Netdata Agents are shipped with data compression disabled by default. You can also configure which streams will use compression.
With enabled stream compression, a Netdata Agent can negotiate streaming compression with other Netdata Agents. During the negotiation of streaming compression both Netdata Agents should support and enable compression in order to communicate over a compressed stream. The negotiation will result into an uncompressed stream, if one of the Netdata Agents doesn't support **or** has compression disabled.
diff --git a/streaming/rrdpush.c b/streaming/rrdpush.c
index 1aaf122b78..ebd8327f09 100644
--- a/streaming/rrdpush.c
+++ b/streaming/rrdpush.c
@@ -41,7 +41,7 @@ struct config stream_config = {
unsigned int default_rrdpush_enabled = 0;
#ifdef ENABLE_COMPRESSION
-unsigned int default_compression_enabled = 1;
+unsigned int default_compression_enabled = 0;
#endif
char *default_rrdpush_destination = NULL;
char *default_rrdpush_api_key = NULL;