where can configre index quartz job | Community
Skip to main content
New Participant
February 25, 2016
Solved

where can configre index quartz job

  • February 25, 2016
  • 9 replies
  • 3685 views

Hi Guys,

Does any one know why our cq6.1(without sp1) instance always running this job at 04:00 am every day?

This Quartz Job is very consuming cpu. I printed this information by java Jstack tool as below.

Where can change the running time or where can configure it?

Thanks.

 

"pool-6-thread-3" #124 prio=5 os_prio=0 tid=0x00007f9a0c085800 nid=0x7951 runnable [0x00007f95df062000]
   java.lang.Thread.State: RUNNABLE
        at com.google.common.io.ByteStreams.read(ByteStreams.java:828)
        at com.google.common.io.ByteStreams.readFully(ByteStreams.java:695)
        at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.loadBlob(OakDirectory.java:261)
        at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.readBytes(OakDirectory.java:307)
        at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexInput.readBytes(OakDirectory.java:404)
        at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexInput.readByte(OakDirectory.java:411)
        at org.apache.lucene.store.DataInput.readInt(DataInput.java:84)
        at org.apache.lucene.codecs.CodecUtil.checkHeader(CodecUtil.java:126)
        at org.apache.lucene.util.fst.FST.<init>(FST.java:318)
        at org.apache.lucene.util.fst.FST.<init>(FST.java:304)
        at org.apache.lucene.codecs.BlockTreeTermsReader$FieldReader.<init>(BlockTreeTermsReader.java:484)
        at org.apache.lucene.codecs.BlockTreeTermsReader.<init>(BlockTreeTermsReader.java:176)
        at org.apache.lucene.codecs.lucene41.Lucene41PostingsFormat.fieldsProducer(Lucene41PostingsFormat.java:437)
        at org.apache.lucene.index.SegmentCoreReaders.<init>(SegmentCoreReaders.java:116)
        at org.apache.lucene.index.SegmentReader.<init>(SegmentReader.java:96)
        at org.apache.lucene.index.ReadersAndUpdates.getReader(ReadersAndUpdates.java:141)
        at org.apache.lucene.index.BufferedUpdatesStream.applyDeletesAndUpdates(BufferedUpdatesStream.java:279)
        - locked <0x000000065f614798> (a org.apache.lucene.index.BufferedUpdatesStream)
        at org.apache.lucene.index.IndexWriter.applyAllDeletesAndUpdates(IndexWriter.java:3191)
        - eliminated <0x000000065f6147f0> (a org.apache.lucene.index.IndexWriter)
        at org.apache.lucene.index.IndexWriter.maybeApplyDeletes(IndexWriter.java:3182)
        - locked <0x000000065f6147f0> (a org.apache.lucene.index.IndexWriter)
        at org.apache.lucene.index.IndexWriter.doFlush(IndexWriter.java:3155)
        - locked <0x000000065f6147f0> (a org.apache.lucene.index.IndexWriter)
        at org.apache.lucene.index.IndexWriter.flush(IndexWriter.java:3123)
        at org.apache.lucene.index.IndexWriter.closeInternal(IndexWriter.java:988)
        at org.apache.lucene.index.IndexWriter.close(IndexWriter.java:932)
        - locked <0x000000065f614898> (a java.lang.Object)
        at org.apache.lucene.index.IndexWriter.close(IndexWriter.java:894)
        at org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditorContext.closeWriter(LuceneIndexEditorContext.java:192)
        at org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditor.leave(LuceneIndexEditor.java:212)
        at org.apache.jackrabbit.oak.plugins.index.IndexUpdate.leave(IndexUpdate.java:221)
        at org.apache.jackrabbit.oak.spi.commit.VisibleEditor.leave(VisibleEditor.java:63)
        at org.apache.jackrabbit.oak.spi.commit.EditorDiff.process(EditorDiff.java:56)
        at org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.updateIndex(AsyncIndexUpdate.java:376)
        at org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.run(AsyncIndexUpdate.java:318)
        - locked <0x00000004c2e36cc0> (a org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate)
        at org.apache.sling.commons.scheduler.impl.QuartzJobExecutor.execute(QuartzJobExecutor.java:105)
        at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by kautuk_sahni

Hi

Adding to Tomar's answer, 

You can see some reference article to know about Scheduling with corn expression:

Link:- https://sling.apache.org/documentation/bundles/scheduler-service-commons-scheduler.html

//

Scheduling with a cron expression

To execute the job as defined above at 10:15am every Monday, Tuesday, Wednesday, Thursday and Friday, you can use the addJob() method with the following parameters:

String schedulingExpression = "0 15 10 ? * MON-FRI";this.scheduler.addJob("myJob", job, null, schedulingExpression, true);

Refer to http://www.docjar.com/docs/api/org/quartz/CronTrigger.html to define more scheduling expressions.

 

Link:- http://hashimkhan.in/aem-adobecq5-code-templates/scheduler/

// Talking about Scheduler.

 

I hope this would also help you.

Thanks and Regards

Kautuk Sahni

9 replies

ronnyfm
New Participant
June 20, 2016

Hi, if this runs every few seconds, how could I prevent this error, it is bringing the whole author instance down:

17.06.2016 12:51:28.702 *ERROR* [pool-7-thread-2] org.apache.sling.commons.scheduler.impl.QuartzScheduler Exception during job execution of org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate@51e94f2b : GC overhead limit exceeded java.lang.OutOfMemoryError: GC overhead limit exceeded

Regards,

joerghoh
Employee
February 29, 2016

Hi,

what do you mean with "high CPU usage"? What is the system doing at 4am? Is it periodic and not only at 4am?

This async indexing process also fills the fulltext index, which can be quite expensive.

kind regards,
Jörg

jiaBaiAuthor
New Participant
February 29, 2016

Hi,

It has made my server cpu go up when the thread running and it looks always running at 04:00 am.

I don't want it consuming high usage of cpu.

Best regards.

joerghoh
Employee
February 28, 2016

Hi,

this is the AsyncIndexUpdate job, which is a job running every few seconds. It is a part of Oak, and you should not change it. Do you have a problem with this specific thread?

kind regards,
Jörg

Jitendra_S_Toma
New Participant
February 26, 2016

Actually, it seems to me that the job which is running continuously is about Oak indexing. Are you using below AEM 6.1 version?. 

FYI : AEM 6.1 does not do indexing by default.

--

Jitendra

jiaBaiAuthor
New Participant
February 26, 2016

Thanks for your input.

It looks there is no this job in /system/console/components. I can only see org.apache.sling.commons.scheduler.impl.QuartzScheduler in the components console, but can not change anything.
Best Regars.

jiaBaiAuthor
New Participant
February 26, 2016

Thanks for your input.

Actually, I do not want to create cron job. I mean I would like to know where is the above job? Is it any possible to change it?

Why it always running at 04:00 am? This job is not created by me, it is already existing after cq installaction.

Best Regars.

kautuk_sahni
kautuk_sahniAccepted solution
Employee
February 26, 2016

Hi

Adding to Tomar's answer, 

You can see some reference article to know about Scheduling with corn expression:

Link:- https://sling.apache.org/documentation/bundles/scheduler-service-commons-scheduler.html

//

Scheduling with a cron expression

To execute the job as defined above at 10:15am every Monday, Tuesday, Wednesday, Thursday and Friday, you can use the addJob() method with the following parameters:

String schedulingExpression = "0 15 10 ? * MON-FRI";this.scheduler.addJob("myJob", job, null, schedulingExpression, true);

Refer to http://www.docjar.com/docs/api/org/quartz/CronTrigger.html to define more scheduling expressions.

 

Link:- http://hashimkhan.in/aem-adobecq5-code-templates/scheduler/

// Talking about Scheduler.

 

I hope this would also help you.

Thanks and Regards

Kautuk Sahni

Kautuk Sahni
Jitendra_S_Toma
New Participant
February 26, 2016

Is this the QuartzScheduler you are looking for?.

org.apache.sling.commons.scheduler.impl.QuartzScheduler

You can find it in OSGI components (http://localhost:4502/system/console/components). 

--

Jitendra