Hi Sham, About the ":async" properties, all of the important bits are already exposed via the 'IndexStatsMBean' [0], of interest are 'getReferenceCheckpoint' - the current reference, 'getProcessedCheckpoint' - the in progress checkpoint, and possibly the 'getTemporaryCheckpoints' - stuff that is queued to be cleaned up in the future. The lease mechanics is not there but I don't think is needed.
Basically if there's a checkpoint under the CheckpointManager that's not in either 'processed', 'referenced' or 'temp', it's probably garbage and needs to be cleared manually. Also, of note is that you might have more than a single 'IndexStatsMBean' (there's one per indexing lane, by default there's an 'async' one, but depending on setup, you might find others as well), so be sure to collect all existing instances when debugging. Were you looking for other information that's missing? best, alex [0] https://github.com/apache/jackrabbit-oak/blob/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/api/jmx/IndexStatsMBean.java#L102 On Thu, Feb 4, 2016 at 4:22 AM, Sham Hassan <[email protected]> wrote: > Hello Team, > > To find cause for why async indexing "is broken” we need [A]. In order > to get :async is costly noice because we need to get production system down > from business approval. Any low level api script you can share to get the > same without getting system down? > > > [A] > > 1. 5 minutes of thread dumps one every 2 seconds > 2. debug level and logs for the appender: > 1. org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate and > 2. org.apache.jackrabbit.oak.plugins.index.IndexUpdate. > 3. collect data from the IndexStatsMbean. > 4. list of checkpoints using the CheckpointManager MBean. > 5. using the oak-console what is under /:async node. > > > Thanks, > Sham >
