Kshirod Mohanty
10/18/2022, 2:05 AMJan Soubusta
10/18/2022, 11:36 AMMartin Blazik
10/18/2022, 12:34 PMKshirod Mohanty
10/18/2022, 4:14 PMRobert Moucha
10/18/2022, 9:14 PMallkeys-lru
as I suggested?
Please check logs from result-cache pods for exceptions.
it's also possible to trace down the request path using the same traceId
that is present in the most of logs.Kshirod Mohanty
10/19/2022, 5:28 AMKshirod Mohanty
10/19/2022, 5:39 AMKshirod Mohanty
10/19/2022, 5:45 AMRobert Moucha
10/19/2022, 1:19 PMallkeys-lru
as I suggested? It will configure Redis instance to delete least recently used keys so you will not need to delete the keys manually.
According to the log, it looks there is inconsistent status among several keys in Redis that coordinate report computation and result delivery.
In order to recover from this error perform the following steps:
1. flush all keys in redis.
2. exec into pulsar/pulsar-pulsar-0 pod and run:
apache-pulsar/bin/pulsar-admin topics delete "<persistent://gooddata-cn/gooddata-cn/sql.select>"
apache-pulsar/bin/pulsar-admin topics delete "<persistent://gooddata-cn/gooddata-cn/compute.calcique>"
apache-pulsar/bin/pulsar-admin topics delete "<persistent://gooddata-cn/gooddata-cn/result.xtab>"
Pulsar topics will be recreated immediately. Unprocessed messages will be lost and it will cause all running computations to fail. But when you reload your dashboard, data will be recalculated and redis cache populated.Kshirod Mohanty
10/19/2022, 11:00 PMKshirod Mohanty
10/20/2022, 12:59 AMRobert Moucha
10/20/2022, 9:01 AMHTTP 412 Precondition FailedRight, when apps are connected to the topics, force flag needs to be set (apache-pulsar/bin/pulsar-admin topics delete -f <<some-topic>>) msgInCounter and msgOutCounter may differ because a single incoming message may be redelivered when error ocurred during the first processing attempts. But if backlogSize is zero, it's not necessary to recreate topic. It's possible to clear backlog of topic subscription (without actual topic deletion) using pulsar-admin topics clear-backlog, but you need to pass the subscription name as well (these can be seen in "topics stats" output. As far as backlog is empty, it's not necessary to truncate the backlog by any means. Please respond to my question: did you checked or set the redis maxmemory-policy to
allkeys-lru
as I suggested?Kshirod Mohanty
10/21/2022, 6:17 AMKshirod Mohanty
10/21/2022, 6:22 AMRobert Moucha
10/21/2022, 10:01 AMO(1)
algorithmic complexity, so the processing time is not affected by the amount of stored keys. So there's no reason why would the amount of keys affect performance.
For your reference, here are charts from one regular perf test run in our environment. While the memory is "full" and number of keys reach to 700K keys, the redis response time usually remains below 20μs.Robert Moucha
10/21/2022, 10:11 AMRobert Moucha
10/21/2022, 10:18 AM