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
>

Reply via email to