Proposal: Maintain a list of flaky tests which can be ignored in main builds (for patches) and setup a new job which will periodically run those flaky tests.
Benefits: - Cleaner main builds. Less runs per patch, ideally no re-runs because of timeouts and other flakiness. Less frustration. Increased developer productivity. - Logs from various runs available when anyone tries to fix these tests. Possible con: We start demoting tests to flaky list which never get fixed. How? Internally, we have setup up two jenkins jobs, one for main build and one for flaky. In execute shell step, they curl to get the list of flaky tests and use surefire plugin flags to ignore/run particular tests. I volunteer to set them up. However, not sure if this approach will work since we have yetus upstream. - Appy