0
votes

Issue

Create an ignite client (in client mode false) and put some data (10k entries/values) to it with very small expiration time (~20s) and TTL enabled. Each time the thread is running it'll remove all the entries that expired, but after few attempts this thread is not removing all the expired entries, some of them are staying in memory and are not removed by this thread execution. That means we got some expired data in memory, and it's something we want to avoid.

Please can you confirm that is a real issue or just misuse/configuration of my setup?

Thanks for your feedback.

Test

I've tried in three different setups: full local mode (embedded server) on MacOS, remote server using one node in Docker, and also remote cluster using 3 nodes in kubernetes.

To reproduce

Git repo: https://github.com/panes/ignite-sample

Run MyIgniteLoadRunnerTest.run() to reproduce the issue described on top.

(Global setup: Writing 10k entries of 64octets each with TTL 10s)

1

1 Answers

1
votes

It seems to be a known issue. Here's the link to track it https://issues.apache.org/jira/browse/IGNITE-11438. It's to be included into Ignite 2.8 release. As far as I know it has already been released as a part of GridGain Community Edition.