Details
Description
See JAMES-3955
Today a tasks per default obey a 1 day consumer timeout (configurable!)
Yet, we might have some tasks like deduplication that might take longer than a day to complete...
As of today tihis means such a task would complete but very likely crash the consumer.
Likely, getting such long jobs in the first place might not be the best idea.
Things like deduplication could be packaged in separate binaries that one could run independently of James thus avoiding the issue altogether... We could allow this as an alternative way to run such long tasks.
Moreover, I think if needed we could write a Proof Of Concept of running the GC on top of something like Apache Spark to leverage parallele computations.