plugin.jelly hardwires Clover to use flushpolicy="interval" flushinterval="500". For large projects this can lead to a severe runtime performance impact because Clover tries to flush the coverage data to disk every 500msecs. I suggest exposing the flushpolicy and flushinterval as plugin properties, and also changing the default values:
plugin.properties:
maven.clover.flushpolicy=threaded
maven.clover.flushinterval=5000
plugin.jelly:
<ant:clover-setup
initstring="${maven.clover.database}"
flushpolicy="${maven.clover.flushpolicy}"
flushinterval="${maven.clover.flushinterval}">
Applied.Thanks Brendan.
Note: I've had a failure the first time I ran the clover plugin tests. I wasn't able to reproduce it later on. I hope this is not related to any time-issue while flushing coverage data to the database due to the change of policy.