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

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

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 3.6.0
    • Fix Version/s: 3.7.0
    • Component/s: camel-salesforce
    • Labels:
      None
    • Estimated Complexity:
      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

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

                Dates

                • Created:
                  Updated:
                  Resolved: