How does Sitecore know an event in the event queue table has been processed?Effective way to resolve the EventQueue, CPU and memory load related issueWhy is event data stored in every Sitecore database?Does Sitecore have a message queue?Excessive updates of the EventQueue tableEffective way to resolve the EventQueue, CPU and memory load related issueHow to know if Remote Events has been executed on remote environments?

I am often given, occasionally stolen, rarely sold, and never borrowed

Does obfuscation give any measurable security benefit?

Does cover affect melee attacks?

Car as a good investment

How can I communicate feelings to players without impacting their agency?

Proving the order of quaternion group is 8

If I did not sign promotion bonus document, my career would be over. Is this duress?

What would be the effect of a giant magical fireball burning in the ocean?

Axiom of choice and cartesian product

How are Aircraft Noses Designed?

How will the crew exit Starship when it lands on Mars?

Why do military jets sometimes have elevators in a depressed position when parked?

In the twin paradox does the returning twin also come back permanently length contracted flatter than the twin on earth?

How to prove that invoices are really unpaid?

Why are second inversion triads considered less consonant than first inversion triads?

Why is technology bad for children?

Is the tap water in France safe to drink?

Where does the upgrade to macOS Catalina move root "/" directory files?

Interaction between casting spells and the Attack action

Does any politician honestly want a No Deal Brexit?

Is it safe to pay bills over satellite internet?

How does Data know about his off switch?

Converting list into Integer

How to figure out key from key signature?



How does Sitecore know an event in the event queue table has been processed?


Effective way to resolve the EventQueue, CPU and memory load related issueWhy is event data stored in every Sitecore database?Does Sitecore have a message queue?Excessive updates of the EventQueue tableEffective way to resolve the EventQueue, CPU and memory load related issueHow to know if Remote Events has been executed on remote environments?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty
margin-bottom:0;









7

















We are currently looking to optimize how often the event queue table is cleaned up and there are some really good post on this such as this and this.



However have have some concerns about cleaning up the event queue table too often and not allowing time for all the events to be processed. When we do large publishing or indexing jobs they can take 12+ hours to complete.



As I understand it when Sitecore processes the events it does not remove them from the table (hence the need for the event queue cleanup task).



However what I can't see in the table is a status column of any kind. I can see status property on the json for some events (in the instance data column) but not all of them. So how does Sitecore know if an event have been processed?



Ideally we would only cleanup events that have been processed and leave the other events that have yet to be processed in the table.










share|improve this question



































    7

















    We are currently looking to optimize how often the event queue table is cleaned up and there are some really good post on this such as this and this.



    However have have some concerns about cleaning up the event queue table too often and not allowing time for all the events to be processed. When we do large publishing or indexing jobs they can take 12+ hours to complete.



    As I understand it when Sitecore processes the events it does not remove them from the table (hence the need for the event queue cleanup task).



    However what I can't see in the table is a status column of any kind. I can see status property on the json for some events (in the instance data column) but not all of them. So how does Sitecore know if an event have been processed?



    Ideally we would only cleanup events that have been processed and leave the other events that have yet to be processed in the table.










    share|improve this question































      7












      7








      7








      We are currently looking to optimize how often the event queue table is cleaned up and there are some really good post on this such as this and this.



      However have have some concerns about cleaning up the event queue table too often and not allowing time for all the events to be processed. When we do large publishing or indexing jobs they can take 12+ hours to complete.



      As I understand it when Sitecore processes the events it does not remove them from the table (hence the need for the event queue cleanup task).



      However what I can't see in the table is a status column of any kind. I can see status property on the json for some events (in the instance data column) but not all of them. So how does Sitecore know if an event have been processed?



      Ideally we would only cleanup events that have been processed and leave the other events that have yet to be processed in the table.










      share|improve this question

















      We are currently looking to optimize how often the event queue table is cleaned up and there are some really good post on this such as this and this.



      However have have some concerns about cleaning up the event queue table too often and not allowing time for all the events to be processed. When we do large publishing or indexing jobs they can take 12+ hours to complete.



      As I understand it when Sitecore processes the events it does not remove them from the table (hence the need for the event queue cleanup task).



      However what I can't see in the table is a status column of any kind. I can see status property on the json for some events (in the instance data column) but not all of them. So how does Sitecore know if an event have been processed?



      Ideally we would only cleanup events that have been processed and leave the other events that have yet to be processed in the table.







      event-queue






      share|improve this question
















      share|improve this question













      share|improve this question




      share|improve this question








      edited 7 hours ago









      Hishaam Namooya

      7,3621 gold badge10 silver badges28 bronze badges




      7,3621 gold badge10 silver badges28 bronze badges










      asked 9 hours ago









      Adam SeabridgeAdam Seabridge

      6,58718 silver badges57 bronze badges




      6,58718 silver badges57 bronze badges























          2 Answers
          2






          active

          oldest

          votes


















          8


















          In order to know which if the events have already been processed, you will need to check the Properties table.



          Using Sitecore OOTB



          You need to see the http://[domain]/sitecore/admin/EventQueueStats.aspx page. This page allows you to see if there are still events being processed.



          enter image description here
          If we take the above as an example, it means that all events have been processed because the Records to be processed is 0. If there was still events to be processed, the value will increase based on the number of remaining events to process.



          How Sitecore does this?



          Sitecore makes use of the Properties table. After all the events have been processed, Sitecore updates (insert if not exist) an entry in the table.



          • Sitecore versions up to 8.X, there is an entry which starts with EQSTAMP_***** in the Key column.


          • For Sitecore 9.X, it is [targetDatabase]_EQSTAMP_*****.


          This is what tells Sitecore if the events have been processed. There is a conversion which is performed for Sitecore to know if the events have been processed.



          How it is done



          1. Copy the value of the EQSTAMP. Below is a screenshot of my Properties table on the Web Database. So, in our case, the value will be 66999.

          enter image description here



          1. You need to convert the decimal 66999 to Hex. You can do this via a calculator. On windows, open the calculator and set it to programmer mode. Once done, select the DEC option and paste the value.

          enter image description here



          As you can see from the calculator screenshot, the value of the HEX is 105B7.



          1. Execute the query select top 100 * from [EventQueue] with (nolock) order by [Stamp] desc on the target database, in our case, web database. The first entry should match the STAMP value of the HEX

          enter image description here



          If the HEX value matches the STAMP value of the first entry, this means that all the events have been processed.



          You can read more on my article Sitecore Server Synchronization






          share|improve this answer



































            1


















            Expanding from the above answer you can try the below SQL Query to know the Number of Records to be processed from a given time and date:



            SELECT COUNT(*) 
            FROM EventQueue WITH (NOLOCK)
            WHERE
            (InstanceName <> @p1 AND RaiseGlobally=1 OR InstanceName = @p1 AND RaiseLocally=1)
            AND Stamp >= @p2
            AND Created >= @p3


            where




            • @p1 = InstanceName similar to databaseName-sitecoreInstance.local


            • @p2 = lastProcessedTimestamp


            • @p3 = fromDate





            share|improve this answer











            New contributor



            Sumit Upadhyay is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
            Check out our Code of Conduct.






















              Your Answer








              StackExchange.ready(function()
              var channelOptions =
              tags: "".split(" "),
              id: "664"
              ;
              initTagRenderer("".split(" "), "".split(" "), channelOptions);

              StackExchange.using("externalEditor", function()
              // Have to fire editor after snippets, if snippets enabled
              if (StackExchange.settings.snippets.snippetsEnabled)
              StackExchange.using("snippets", function()
              createEditor();
              );

              else
              createEditor();

              );

              function createEditor()
              StackExchange.prepareEditor(
              heartbeatType: 'answer',
              autoActivateHeartbeat: false,
              convertImagesToLinks: false,
              noModals: true,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: null,
              bindNavPrevention: true,
              postfix: "",
              imageUploader:
              brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
              contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/4.0/"u003ecc by-sa 4.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
              allowUrls: true
              ,
              onDemand: true,
              discardSelector: ".discard-answer"
              ,immediatelyShowMarkdownHelp:true
              );



              );














              draft saved

              draft discarded
















              StackExchange.ready(
              function ()
              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsitecore.stackexchange.com%2fquestions%2f22472%2fhow-does-sitecore-know-an-event-in-the-event-queue-table-has-been-processed%23new-answer', 'question_page');

              );

              Post as a guest















              Required, but never shown


























              2 Answers
              2






              active

              oldest

              votes








              2 Answers
              2






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes









              8


















              In order to know which if the events have already been processed, you will need to check the Properties table.



              Using Sitecore OOTB



              You need to see the http://[domain]/sitecore/admin/EventQueueStats.aspx page. This page allows you to see if there are still events being processed.



              enter image description here
              If we take the above as an example, it means that all events have been processed because the Records to be processed is 0. If there was still events to be processed, the value will increase based on the number of remaining events to process.



              How Sitecore does this?



              Sitecore makes use of the Properties table. After all the events have been processed, Sitecore updates (insert if not exist) an entry in the table.



              • Sitecore versions up to 8.X, there is an entry which starts with EQSTAMP_***** in the Key column.


              • For Sitecore 9.X, it is [targetDatabase]_EQSTAMP_*****.


              This is what tells Sitecore if the events have been processed. There is a conversion which is performed for Sitecore to know if the events have been processed.



              How it is done



              1. Copy the value of the EQSTAMP. Below is a screenshot of my Properties table on the Web Database. So, in our case, the value will be 66999.

              enter image description here



              1. You need to convert the decimal 66999 to Hex. You can do this via a calculator. On windows, open the calculator and set it to programmer mode. Once done, select the DEC option and paste the value.

              enter image description here



              As you can see from the calculator screenshot, the value of the HEX is 105B7.



              1. Execute the query select top 100 * from [EventQueue] with (nolock) order by [Stamp] desc on the target database, in our case, web database. The first entry should match the STAMP value of the HEX

              enter image description here



              If the HEX value matches the STAMP value of the first entry, this means that all the events have been processed.



              You can read more on my article Sitecore Server Synchronization






              share|improve this answer
































                8


















                In order to know which if the events have already been processed, you will need to check the Properties table.



                Using Sitecore OOTB



                You need to see the http://[domain]/sitecore/admin/EventQueueStats.aspx page. This page allows you to see if there are still events being processed.



                enter image description here
                If we take the above as an example, it means that all events have been processed because the Records to be processed is 0. If there was still events to be processed, the value will increase based on the number of remaining events to process.



                How Sitecore does this?



                Sitecore makes use of the Properties table. After all the events have been processed, Sitecore updates (insert if not exist) an entry in the table.



                • Sitecore versions up to 8.X, there is an entry which starts with EQSTAMP_***** in the Key column.


                • For Sitecore 9.X, it is [targetDatabase]_EQSTAMP_*****.


                This is what tells Sitecore if the events have been processed. There is a conversion which is performed for Sitecore to know if the events have been processed.



                How it is done



                1. Copy the value of the EQSTAMP. Below is a screenshot of my Properties table on the Web Database. So, in our case, the value will be 66999.

                enter image description here



                1. You need to convert the decimal 66999 to Hex. You can do this via a calculator. On windows, open the calculator and set it to programmer mode. Once done, select the DEC option and paste the value.

                enter image description here



                As you can see from the calculator screenshot, the value of the HEX is 105B7.



                1. Execute the query select top 100 * from [EventQueue] with (nolock) order by [Stamp] desc on the target database, in our case, web database. The first entry should match the STAMP value of the HEX

                enter image description here



                If the HEX value matches the STAMP value of the first entry, this means that all the events have been processed.



                You can read more on my article Sitecore Server Synchronization






                share|improve this answer






























                  8














                  8










                  8









                  In order to know which if the events have already been processed, you will need to check the Properties table.



                  Using Sitecore OOTB



                  You need to see the http://[domain]/sitecore/admin/EventQueueStats.aspx page. This page allows you to see if there are still events being processed.



                  enter image description here
                  If we take the above as an example, it means that all events have been processed because the Records to be processed is 0. If there was still events to be processed, the value will increase based on the number of remaining events to process.



                  How Sitecore does this?



                  Sitecore makes use of the Properties table. After all the events have been processed, Sitecore updates (insert if not exist) an entry in the table.



                  • Sitecore versions up to 8.X, there is an entry which starts with EQSTAMP_***** in the Key column.


                  • For Sitecore 9.X, it is [targetDatabase]_EQSTAMP_*****.


                  This is what tells Sitecore if the events have been processed. There is a conversion which is performed for Sitecore to know if the events have been processed.



                  How it is done



                  1. Copy the value of the EQSTAMP. Below is a screenshot of my Properties table on the Web Database. So, in our case, the value will be 66999.

                  enter image description here



                  1. You need to convert the decimal 66999 to Hex. You can do this via a calculator. On windows, open the calculator and set it to programmer mode. Once done, select the DEC option and paste the value.

                  enter image description here



                  As you can see from the calculator screenshot, the value of the HEX is 105B7.



                  1. Execute the query select top 100 * from [EventQueue] with (nolock) order by [Stamp] desc on the target database, in our case, web database. The first entry should match the STAMP value of the HEX

                  enter image description here



                  If the HEX value matches the STAMP value of the first entry, this means that all the events have been processed.



                  You can read more on my article Sitecore Server Synchronization






                  share|improve this answer
















                  In order to know which if the events have already been processed, you will need to check the Properties table.



                  Using Sitecore OOTB



                  You need to see the http://[domain]/sitecore/admin/EventQueueStats.aspx page. This page allows you to see if there are still events being processed.



                  enter image description here
                  If we take the above as an example, it means that all events have been processed because the Records to be processed is 0. If there was still events to be processed, the value will increase based on the number of remaining events to process.



                  How Sitecore does this?



                  Sitecore makes use of the Properties table. After all the events have been processed, Sitecore updates (insert if not exist) an entry in the table.



                  • Sitecore versions up to 8.X, there is an entry which starts with EQSTAMP_***** in the Key column.


                  • For Sitecore 9.X, it is [targetDatabase]_EQSTAMP_*****.


                  This is what tells Sitecore if the events have been processed. There is a conversion which is performed for Sitecore to know if the events have been processed.



                  How it is done



                  1. Copy the value of the EQSTAMP. Below is a screenshot of my Properties table on the Web Database. So, in our case, the value will be 66999.

                  enter image description here



                  1. You need to convert the decimal 66999 to Hex. You can do this via a calculator. On windows, open the calculator and set it to programmer mode. Once done, select the DEC option and paste the value.

                  enter image description here



                  As you can see from the calculator screenshot, the value of the HEX is 105B7.



                  1. Execute the query select top 100 * from [EventQueue] with (nolock) order by [Stamp] desc on the target database, in our case, web database. The first entry should match the STAMP value of the HEX

                  enter image description here



                  If the HEX value matches the STAMP value of the first entry, this means that all the events have been processed.



                  You can read more on my article Sitecore Server Synchronization







                  share|improve this answer















                  share|improve this answer




                  share|improve this answer








                  edited 6 hours ago

























                  answered 7 hours ago









                  Hishaam NamooyaHishaam Namooya

                  7,3621 gold badge10 silver badges28 bronze badges




                  7,3621 gold badge10 silver badges28 bronze badges


























                      1


















                      Expanding from the above answer you can try the below SQL Query to know the Number of Records to be processed from a given time and date:



                      SELECT COUNT(*) 
                      FROM EventQueue WITH (NOLOCK)
                      WHERE
                      (InstanceName <> @p1 AND RaiseGlobally=1 OR InstanceName = @p1 AND RaiseLocally=1)
                      AND Stamp >= @p2
                      AND Created >= @p3


                      where




                      • @p1 = InstanceName similar to databaseName-sitecoreInstance.local


                      • @p2 = lastProcessedTimestamp


                      • @p3 = fromDate





                      share|improve this answer











                      New contributor



                      Sumit Upadhyay is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                      Check out our Code of Conduct.

























                        1


















                        Expanding from the above answer you can try the below SQL Query to know the Number of Records to be processed from a given time and date:



                        SELECT COUNT(*) 
                        FROM EventQueue WITH (NOLOCK)
                        WHERE
                        (InstanceName <> @p1 AND RaiseGlobally=1 OR InstanceName = @p1 AND RaiseLocally=1)
                        AND Stamp >= @p2
                        AND Created >= @p3


                        where




                        • @p1 = InstanceName similar to databaseName-sitecoreInstance.local


                        • @p2 = lastProcessedTimestamp


                        • @p3 = fromDate





                        share|improve this answer











                        New contributor



                        Sumit Upadhyay is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                        Check out our Code of Conduct.























                          1














                          1










                          1









                          Expanding from the above answer you can try the below SQL Query to know the Number of Records to be processed from a given time and date:



                          SELECT COUNT(*) 
                          FROM EventQueue WITH (NOLOCK)
                          WHERE
                          (InstanceName <> @p1 AND RaiseGlobally=1 OR InstanceName = @p1 AND RaiseLocally=1)
                          AND Stamp >= @p2
                          AND Created >= @p3


                          where




                          • @p1 = InstanceName similar to databaseName-sitecoreInstance.local


                          • @p2 = lastProcessedTimestamp


                          • @p3 = fromDate





                          share|improve this answer











                          New contributor



                          Sumit Upadhyay is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                          Check out our Code of Conduct.









                          Expanding from the above answer you can try the below SQL Query to know the Number of Records to be processed from a given time and date:



                          SELECT COUNT(*) 
                          FROM EventQueue WITH (NOLOCK)
                          WHERE
                          (InstanceName <> @p1 AND RaiseGlobally=1 OR InstanceName = @p1 AND RaiseLocally=1)
                          AND Stamp >= @p2
                          AND Created >= @p3


                          where




                          • @p1 = InstanceName similar to databaseName-sitecoreInstance.local


                          • @p2 = lastProcessedTimestamp


                          • @p3 = fromDate






                          share|improve this answer











                          New contributor



                          Sumit Upadhyay is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                          Check out our Code of Conduct.








                          share|improve this answer




                          share|improve this answer








                          edited 51 mins ago









                          Dan Sinclair

                          3,4262 gold badges10 silver badges31 bronze badges




                          3,4262 gold badges10 silver badges31 bronze badges






                          New contributor



                          Sumit Upadhyay is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                          Check out our Code of Conduct.








                          answered 7 hours ago









                          Sumit UpadhyaySumit Upadhyay

                          475 bronze badges




                          475 bronze badges




                          New contributor



                          Sumit Upadhyay is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                          Check out our Code of Conduct.




                          New contributor




                          Sumit Upadhyay is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                          Check out our Code of Conduct.

































                              draft saved

                              draft discarded















































                              Thanks for contributing an answer to Sitecore Stack Exchange!


                              • Please be sure to answer the question. Provide details and share your research!

                              But avoid


                              • Asking for help, clarification, or responding to other answers.

                              • Making statements based on opinion; back them up with references or personal experience.

                              To learn more, see our tips on writing great answers.




                              draft saved


                              draft discarded














                              StackExchange.ready(
                              function ()
                              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsitecore.stackexchange.com%2fquestions%2f22472%2fhow-does-sitecore-know-an-event-in-the-event-queue-table-has-been-processed%23new-answer', 'question_page');

                              );

                              Post as a guest















                              Required, but never shown





















































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown

































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown









                              Popular posts from this blog

                              Invision Community Contents History See also References External links Navigation menuProprietaryinvisioncommunity.comIPS Community ForumsIPS Community Forumsthis blog entry"License Changes, IP.Board 3.4, and the Future""Interview -- Matt Mecham of Ibforums""CEO Invision Power Board, Matt Mecham Is a Liar, Thief!"IPB License Explanation 1.3, 1.3.1, 2.0, and 2.1ArchivedSecurity Fixes, Updates And Enhancements For IPB 1.3.1Archived"New Demo Accounts - Invision Power Services"the original"New Default Skin"the original"Invision Power Board 3.0.0 and Applications Released"the original"Archived copy"the original"Perpetual licenses being done away with""Release Notes - Invision Power Services""Introducing: IPS Community Suite 4!"Invision Community Release Notes

                              Canceling a color specificationRandomly assigning color to Graphics3D objects?Default color for Filling in Mathematica 9Coloring specific elements of sets with a prime modified order in an array plotHow to pick a color differing significantly from the colors already in a given color list?Detection of the text colorColor numbers based on their valueCan color schemes for use with ColorData include opacity specification?My dynamic color schemes

                              Ласкавець круглолистий Зміст Опис | Поширення | Галерея | Примітки | Посилання | Навігаційне меню58171138361-22960890446Bupleurum rotundifoliumEuro+Med PlantbasePlants of the World Online — Kew ScienceGermplasm Resources Information Network (GRIN)Ласкавецькн. VI : Літери Ком — Левиправивши або дописавши її