Changelog

Version 1.3.2

  • Improved reconnection logic to account for more error types, including TimeoutException and EOFException.

Version 1.2.3

  • Improved reconnection logic to account for more error types, including TimeoutException and EOFException.

Version 1.2.1

  • Updated Confluent Hub description

Version 1.2.0

  • Added a new SObjects sink connector to publish Salesforce PushTopic events previously captured with a different Salesforce PushTopic source connector. A use case for using these two connectors is copying events from one Salesforce account to another via Apache Kafka®.
  • Added a new Platform Events sink connector to publish Salesforce Platform Events previously captured with a different Salesforce Platform Event source connector. A use case for using these two connectors is to copy events from one Salesforce account to another via Kafka.

Version 1.1.5

  • Improved reconnection logic to account for more error types, including TimeoutException and EOFException.

Version 1.1.4

  • Include the Salesforce error code in the connector failure message.

Version 1.1.3

  • Improve the handling and reconnection logic of the connector. The connector now continues to immediately reconnect on many of the Salesforce errors, including authentication failures (401 errors), handshake denied (403 error), unknown clients (403 error), and incomplete handshake (403 error). The connector will delay reconnecting between 5 and 1 minutes when the errors signfiy that API limits were exceeded or if the server is too busy (403 error). The connector task will fail if any error is such that the connector cannot proceed, including unknown channel and other 404 errors, and 400, 413, and 500 errors.

Version 1.1.2

  • Updated support terms

Version 1.1.1-Preview

  • Fixed an issue where timestamps in PushTopic events and Platform events were parsed into the incorrect timestamps in the records written to Kafka.

Version 1.1.0-Preview

  • The connector that captures Salesforce PushTopic events was renamed to io.confluent.salesforce.SalesforcePushTopicSourceConnector. The old class name io.confluent.salesforce.SalesforceSourceConnector is still available but has been deprecated. As soon as it is convenient, change your existing connector configurations to use io.confluent.salesforce.SalesforcePushTopicSourceConnector for the connector class name.
  • Add a new source connector to capture Salesforce Platform Events. This source connector is named io.confluent.salesforce.SalesforcePlatformEventSourceConnector.
  • Added salesforce.initial.start configuration property for both Salesforce connectors to allow users to specify where a newly created connector should start replaying events. Use all to send a replayId of -2 to Salesforce that replays all events enqueued within the last 24 hours, or use latest to send a replayId of -1 to Salesforce that plays only events enqueued after the connector starts. The default is latest in case there are more enqueued events than might be allowed by API limits.
  • Added an ability to use an HTTP proxy. The http.proxy configuration property is available in both Salesforce connectors. This property specifies the HTTP(S) proxy host and port the connector should use when talking to Salesforce. It defaults to a blank string, which corresponds to not using a proxy and directly connecting to Salesforce API.
  • Corrected how the salesforce.instance property is interpreted. It now defaults to https://login.salesforce.com, which provides backward compatibility that should work for most users. It can be set to https://test.salesforce.com to use a test environment in Salesforce.
  • Both connectors now automatically refresh the OAuth token when needed. Previously, the connector would stop writing events to Kafka after the OAuth token expired, or about 24 hours after it was last used.
  • Once the Salesforce connectors successfully authenticate, any subsequent request failures are automatically retried using exponential backoff. A new request.max.retries.time.ms connector configuration property specifies the maximum time in milliseconds that the connector retries failed requests after authentication succeeds. The backoff period for each retry attempt uses a randomization function that grows exponentially. But, if the total time spent retrying the request exceeds this duration (15 minutes by default) retries stop and the request fails. This will likely result in task failure.
  • Both connectors now use a Confluent license upon startup and the connector configurations include license-related configuration properties. See Configuration Properties and Configuration Properties for details.

Salesforce Connector v1.0.0-Preview

Initial preview version.