Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-15904

camel-salesforce: streaming replayId should default to -1 (new events)

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 3.6.0
    • 3.7.0
    • camel-salesforce
    • None
    • Unknown

    Description

      A while back (v37?), the salesforce streaming API started requiring a replayId.

      Error subscribing to CamelTestTopic: Replay Id not found for channel. Error (id=794472383-90 (-1822401099))
      

      Prior to this, the behavior was equivalent to -1 (new events that are broadcast after the client subscribes). If we default `defaultReplayId` to -1, it provides a sensible default for new projects, and is backwards compatible with existing projects that are on old versions of the streaming API.

      Related, as of v37, it appears that salesforce no longer supplies the Bayeux clientId in broadcast messages:

      The protocol does not require clientId:

      The clientId message field MAY be returned in message responses except for failed handshake requests and for publish message responses that were sent without clientId.

      I'm guessing they made this change to reduce the surface area for clientId leakage. In any case, forthcoming PR removes non-null assertions for clientId since it's not there anymore.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              jeremyross Jeremy Ross
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: