When running integration tests, it is common to have the need to wait for the async indexes to have been executed. So that the test can successfully validate operations that depend on the search result.
With the current IndexStatsMBean implementation it cannot return the start time of the last successful indexing. It provide a "LastIndexedTime" which is not sufficient to know if changes made recently are now indexed.
The idea is to set the start time as value of a new attribute (i.e "StartLastSuccessIndexedTime") to the IndexStatsMBean.
Then create a new Mbean that calculate from all existing IndexStatsMBean (as multiple are possible now) the oldest "StartLastSuccessIndexedTime".
That will allow integration tests to be able to wait until that oldest "StartLastSuccessIndexedTime" is greater than the time it started to wait.
Attached is a sample patch containing the necessary changes (for a Oak core 1.4.0-SNAPSHOT).