RhoConnect settings === All Rhoconnect application and source settings located in the *`settings/settings.yml`* file. There are two main categories: application environment settings and source settings. ## Application settings Application-wide settings are specified per deployment environment (`:test`, `:development`, `:production`). Each of the environment categories must have the following entries: :::yaml :syncserver: - application's base url :redis: - Redis url :licensefile: - application's license file In addition, the following settings can be specified: :::yaml :poll_interval_default: - default sync poll interval setting for source adapters. This setting is used as a default if source doesn't specify its own value. Also, it is applied to dynamic adapters as a default sync poll interval. :bulk_data_poll_interval: - poll interval setting for bulk data sync ## Source settings All source-specific settings are specified under the corresponding source name entry in the `:sources` category. Typical source settings include: :::yaml :poll_interval: - source's sync poll interval. :force_default: - if specified, this setting forces to use default application poll interval even if source has its own setting. :partition_type: - default partition type for the source :retry_limit: - this option allows to for the user to perform sync upto times in case of previous sync failure. Normally, each sync resets the refresh time according to the polling interval regardless of the sync success or failure. In case of failure, it may not be a desired scenario because user will be getting an error on all sync attempts until the next polling interval will expire. This setting allows to overcome this issue.The following flow shows the algorithm in place: 1) If sync fails and :retry_limit is set to N > 0, refresh_time is not updated for next N retries (or until any of them succeeds). Here 'retry' means that user will be able to initiate another sync request (since refresh_time is not updated). 2) If one of the retry succeeds - source's refresh time is updated and retry counter is reset. 3) If the `:retry_limit` is reached and all attempts have failed - source's refresh time is updated to prevent excessive polling on the permanently down backend. 4) Also, if more then `:poll_interval` seconds has elapsed since last refresh_time - source's retry counter is reset.