Hi,
I found a couple of issue with the expirationQueue in leveldb.
AFAIK, this queue has the goal to avoid 2 writes to leveldb per
infinispan write. correct me if I'm wrong.
Also, it is drain when the eviction thread is trigger (every minute by
default).
#1 the queue is is only drained when the eviction thread is triggered.
It is difficult to configure a queue-size + wake-up interval for all the
possible workloads.
A possible solution is to use an internal thread in LevelDBStore to
drain this queue.
#2 It is possible to write to leveldb asynchronously. So why can't we
remove the queue? Do we have some performance numbers that shows a
degradation without the queue?
Thoughts?
Cheers,
Pedro