16

There's an EventQueue table in every Sitecore database. It contains both the local and remote events of Sitecore instances.

I would like to know how the event queue works, exactly.

  • Why are some events stored in the Core, some in the Master, and some in the Web database?
  • Why is there a need to track local events? Can't they just be handled internally in the instance that fired them?
  • How does Sitecore know that a remote event has been fully processed by all instances?
  • When is it safe to remove an EventQueue record from the table?
  • 3
    While we align on the rules of this community, is it worth discussing whether this question is too broad? I for one would like to know these answers, but there are several distinct questions and this would involve a very heavy answer to successfully meet all criteria. – Laver Oct 4 '16 at 21:07
  • 1
    I agree with @Laver. It's worth noting this guidance from the Area 51 FAQ: Don't suggest questions like 'How do I unclog a drain?' Instead ask, 'If you run 2.5 GPM through 50 feet of 1/2" galv pipe, how many psi will be lost to friction loss?' Remember, pro sites WILL attract the enthusiasts, but not the other way around!" Perhaps we should close this, in favor of turning any one of the bullets into a more detailed question. – Dan Solovay Oct 4 '16 at 22:29
  • I agree, as well. I think this question should be closed as too broad. – Zachary Kniebel Oct 4 '16 at 23:40
  • Here's an article on writing good stack questions stackoverflow.com/help/how-to-ask Amongst other things, it's important to demonstrate what research you've already done to find out the answer. – Martin Davies Oct 5 '16 at 7:35
  • In WFFM, suppose an entry created by the end user (in CD server), should come to the content editor for approval (in CM server) . This can be achived by passing the events from one event queue(CM server database table) to another event queue(CD Server database table). – Blue Clouds Aug 19 '18 at 7:12
4

I agree that this is many questions in one. As a start though this is from the Sitecore 6.3 PDF:

Event Queues

To ensure data and cache coherence and support communication between instances in an environment and between CM and CD environments, Sitecore CMS 6.3 maintains event queues as tables in Sitecore databases. Each Sitecore instance accesses one Database Event Queue for each database, and writes database events relevant to the containing database to each queue. Each instance designates one of the Database Event Queues as the System Event Queue, and additionally writes system events to that queue. The System Event Queue contains events related to security, publishing, and other operations. By default, Sitecore manages the System Event Queue in the Core database. Unless directed otherwise, each instance processes database and system events in all database queues.

More info here: https://sdn.sitecore.net/upload/sitecore6/63/introducing_sitecore_cms_6.3_a4.pdf

There is also some great info on how to enable this and how it works here:

https://sitecorebasics.wordpress.com/2011/03/19/basics-of-sitecore-event-queue/

  • Thank you, I have now simplified the question. Now it fits better with your answer. – Dmytro Shevchenko Oct 5 '16 at 6:07

Not the answer you're looking for? Browse other questions tagged or ask your own question.