Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

 Our current design approach is as follows:

  1.  Deprecate existing internal boolean system property: REMOVE_FROM_QUEUE_ON_EXCEPTION
    1. Continue to support default behavior if boolean set to false by setting # retries on receiver to -1
  2. Create new Java API

    1. Define callback API for senders to set callback to dispatchers

    2. Invoke callback if batch exception occurs prior to batch removal

    3. Implement a default callback API (see item 8 below)

    4. Add parameters on gateway receiver factory for # retries and wait time between retries.

  3. Modify Gfsh commands

    1. Add option to gfsh ‘create gateway sender’ command to specify custom callback

    2. Add options to gfsh ‘create gateway receiver’ command to set # retries and wait time between retries

    3. Store new options in cluster config

      1. Sender: callback implementation

      2. Receiver: # of retries and wait time between retries

  4. Create example implementation of Sender callback that writes event(s) and associated exceptions to a file

  5. Security features  

    1. Define privileges needed to deploy and configure sender callback

    2. With security, callback should only write eventId's and exceptions, i.e. no entry values should be written to disk


API Change



Risks and Unknowns

...