How to clear/delete published Platform event from EventBus after sometime?





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty{ margin-bottom:0;
}






up vote
2
down vote

favorite












I'm publishing Platform Events using APEX Code
EventBus.publish method and consuming the events in backend Java app using EventListener.



Problem



All the published events remains in EventBus and whenever my consumer Java app restarts, listener is receiving all the previously published events (in the past 24 hrs?, not sure about the timing though).



Is there any way to clear the events published to EventBus after some set interval? I've gone through the Platform Events documentation and couldn't find any help to tackle this problem.



Any pointer would be helpful










share|improve this question







New contributor




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


























    up vote
    2
    down vote

    favorite












    I'm publishing Platform Events using APEX Code
    EventBus.publish method and consuming the events in backend Java app using EventListener.



    Problem



    All the published events remains in EventBus and whenever my consumer Java app restarts, listener is receiving all the previously published events (in the past 24 hrs?, not sure about the timing though).



    Is there any way to clear the events published to EventBus after some set interval? I've gone through the Platform Events documentation and couldn't find any help to tackle this problem.



    Any pointer would be helpful










    share|improve this question







    New contributor




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






















      up vote
      2
      down vote

      favorite









      up vote
      2
      down vote

      favorite











      I'm publishing Platform Events using APEX Code
      EventBus.publish method and consuming the events in backend Java app using EventListener.



      Problem



      All the published events remains in EventBus and whenever my consumer Java app restarts, listener is receiving all the previously published events (in the past 24 hrs?, not sure about the timing though).



      Is there any way to clear the events published to EventBus after some set interval? I've gone through the Platform Events documentation and couldn't find any help to tackle this problem.



      Any pointer would be helpful










      share|improve this question







      New contributor




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











      I'm publishing Platform Events using APEX Code
      EventBus.publish method and consuming the events in backend Java app using EventListener.



      Problem



      All the published events remains in EventBus and whenever my consumer Java app restarts, listener is receiving all the previously published events (in the past 24 hrs?, not sure about the timing though).



      Is there any way to clear the events published to EventBus after some set interval? I've gone through the Platform Events documentation and couldn't find any help to tackle this problem.



      Any pointer would be helpful







      apex subscriber platform-event publisher






      share|improve this question







      New contributor




      jusermar10 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 question







      New contributor




      jusermar10 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 question




      share|improve this question






      New contributor




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









      asked 2 days ago









      jusermar10

      1133




      1133




      New contributor




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





      New contributor





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






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






















          2 Answers
          2






          active

          oldest

          votes

















          up vote
          4
          down vote



          accepted










          This is a feature called Event Durability. It is expected that the client retains the last replayId it has seen, and pass this in to the streaming handshake to resume where they left off. There's no way to clear this early and yet provide durability. The events do drop off after 24 hours. You will need to modify your code to remember the last replayId.






          share|improve this answer





















          • Got it! Thanks for pointing me in the right direction to track replayId. Will play around.
            – jusermar10
            2 days ago


















          up vote
          1
          down vote













          You cannot delete Platform Event records. This is mentioned in the documentation:




          Unlike custom objects, you can’t update or delete event records.




          The only way you can delete event records is by deleting its definition altogether:




          When you delete a platform event definition, it’s permanently deleted.







          share|improve this answer























          • +1 lol you beat me by 6 seconds!
            – codeyinthecloud
            2 days ago













          Your Answer








          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "459"
          };
          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',
          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/3.0/"u003ecc by-sa 3.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
          });


          }
          });






          jusermar10 is a new contributor. Be nice, and check out our Code of Conduct.










           

          draft saved


          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsalesforce.stackexchange.com%2fquestions%2f239645%2fhow-to-clear-delete-published-platform-event-from-eventbus-after-sometime%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








          up vote
          4
          down vote



          accepted










          This is a feature called Event Durability. It is expected that the client retains the last replayId it has seen, and pass this in to the streaming handshake to resume where they left off. There's no way to clear this early and yet provide durability. The events do drop off after 24 hours. You will need to modify your code to remember the last replayId.






          share|improve this answer





















          • Got it! Thanks for pointing me in the right direction to track replayId. Will play around.
            – jusermar10
            2 days ago















          up vote
          4
          down vote



          accepted










          This is a feature called Event Durability. It is expected that the client retains the last replayId it has seen, and pass this in to the streaming handshake to resume where they left off. There's no way to clear this early and yet provide durability. The events do drop off after 24 hours. You will need to modify your code to remember the last replayId.






          share|improve this answer





















          • Got it! Thanks for pointing me in the right direction to track replayId. Will play around.
            – jusermar10
            2 days ago













          up vote
          4
          down vote



          accepted







          up vote
          4
          down vote



          accepted






          This is a feature called Event Durability. It is expected that the client retains the last replayId it has seen, and pass this in to the streaming handshake to resume where they left off. There's no way to clear this early and yet provide durability. The events do drop off after 24 hours. You will need to modify your code to remember the last replayId.






          share|improve this answer












          This is a feature called Event Durability. It is expected that the client retains the last replayId it has seen, and pass this in to the streaming handshake to resume where they left off. There's no way to clear this early and yet provide durability. The events do drop off after 24 hours. You will need to modify your code to remember the last replayId.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered 2 days ago









          sfdcfox

          239k10182401




          239k10182401












          • Got it! Thanks for pointing me in the right direction to track replayId. Will play around.
            – jusermar10
            2 days ago


















          • Got it! Thanks for pointing me in the right direction to track replayId. Will play around.
            – jusermar10
            2 days ago
















          Got it! Thanks for pointing me in the right direction to track replayId. Will play around.
          – jusermar10
          2 days ago




          Got it! Thanks for pointing me in the right direction to track replayId. Will play around.
          – jusermar10
          2 days ago












          up vote
          1
          down vote













          You cannot delete Platform Event records. This is mentioned in the documentation:




          Unlike custom objects, you can’t update or delete event records.




          The only way you can delete event records is by deleting its definition altogether:




          When you delete a platform event definition, it’s permanently deleted.







          share|improve this answer























          • +1 lol you beat me by 6 seconds!
            – codeyinthecloud
            2 days ago

















          up vote
          1
          down vote













          You cannot delete Platform Event records. This is mentioned in the documentation:




          Unlike custom objects, you can’t update or delete event records.




          The only way you can delete event records is by deleting its definition altogether:




          When you delete a platform event definition, it’s permanently deleted.







          share|improve this answer























          • +1 lol you beat me by 6 seconds!
            – codeyinthecloud
            2 days ago















          up vote
          1
          down vote










          up vote
          1
          down vote









          You cannot delete Platform Event records. This is mentioned in the documentation:




          Unlike custom objects, you can’t update or delete event records.




          The only way you can delete event records is by deleting its definition altogether:




          When you delete a platform event definition, it’s permanently deleted.







          share|improve this answer














          You cannot delete Platform Event records. This is mentioned in the documentation:




          Unlike custom objects, you can’t update or delete event records.




          The only way you can delete event records is by deleting its definition altogether:




          When you delete a platform event definition, it’s permanently deleted.








          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited 2 days ago

























          answered 2 days ago









          Jayant Das

          10.2k2522




          10.2k2522












          • +1 lol you beat me by 6 seconds!
            – codeyinthecloud
            2 days ago




















          • +1 lol you beat me by 6 seconds!
            – codeyinthecloud
            2 days ago


















          +1 lol you beat me by 6 seconds!
          – codeyinthecloud
          2 days ago






          +1 lol you beat me by 6 seconds!
          – codeyinthecloud
          2 days ago












          jusermar10 is a new contributor. Be nice, and check out our Code of Conduct.










           

          draft saved


          draft discarded


















          jusermar10 is a new contributor. Be nice, and check out our Code of Conduct.













          jusermar10 is a new contributor. Be nice, and check out our Code of Conduct.












          jusermar10 is a new contributor. Be nice, and check out our Code of Conduct.















           


          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsalesforce.stackexchange.com%2fquestions%2f239645%2fhow-to-clear-delete-published-platform-event-from-eventbus-after-sometime%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

          "Incorrect syntax near the keyword 'ON'. (on update cascade, on delete cascade,)

          Alcedinidae

          RAC Tourist Trophy