diff options
author | Nathaniel Braun <nbraun@amazon.com> | 2021-06-28 14:41:50 +0300 |
---|---|---|
committer | Nathaniel Braun <nbraun@amazon.com> | 2021-07-20 12:21:13 +0300 |
commit | 18706d92711c376750d91d113e4e397477e8241e (patch) | |
tree | af4d07290ecffbcc33ae5d210896c445e715d9df /redis.c | |
parent | 7c0ae874d4b17fbd513624bb1849d736949888c8 (diff) |
Add support for exponential backoff on retry
Diffstat (limited to 'redis.c')
-rw-r--r-- | redis.c | 16 |
1 files changed, 16 insertions, 0 deletions
@@ -775,6 +775,22 @@ static void add_class_constants(zend_class_entry *ce, int is_cluster) { zend_declare_class_constant_stringl(ce, "LEFT", 4, "left", 4); zend_declare_class_constant_stringl(ce, "RIGHT", 5, "right", 5); } + + /* retry/backoff options*/ + zend_declare_class_constant_long(ce, ZEND_STRL("OPT_MAX_RETRIES"), REDIS_OPT_MAX_RETRIES); + + zend_declare_class_constant_long(ce, ZEND_STRL("OPT_BACKOFF_ALGORITHM"), REDIS_OPT_BACKOFF_ALGORITHM); + zend_declare_class_constant_long(ce, ZEND_STRL("BACKOFF_ALGORITHM_DEFAULT"), REDIS_BACKOFF_ALGORITHM_DEFAULT); + zend_declare_class_constant_long(ce, ZEND_STRL("BACKOFF_ALGORITHM_CONSTANT"), REDIS_BACKOFF_ALGORITHM_CONSTANT); + zend_declare_class_constant_long(ce, ZEND_STRL("BACKOFF_ALGORITHM_UNIFORM"), REDIS_BACKOFF_ALGORITHM_UNIFORM); + zend_declare_class_constant_long(ce, ZEND_STRL("BACKOFF_ALGORITHM_EXPONENTIAL"), REDIS_BACKOFF_ALGORITHM_EXPONENTIAL); + zend_declare_class_constant_long(ce, ZEND_STRL("BACKOFF_ALGORITHM_FULL_JITTER"), REDIS_BACKOFF_ALGORITHM_FULL_JITTER); + zend_declare_class_constant_long(ce, ZEND_STRL("BACKOFF_ALGORITHM_EQUAL_JITTER"), REDIS_BACKOFF_ALGORITHM_EQUAL_JITTER); + zend_declare_class_constant_long(ce, ZEND_STRL("BACKOFF_ALGORITHM_DECORRELATED_JITTER"), REDIS_BACKOFF_ALGORITHM_DECORRELATED_JITTER); + + zend_declare_class_constant_long(ce, ZEND_STRL("OPT_BACKOFF_BASE"), REDIS_OPT_BACKOFF_BASE); + + zend_declare_class_constant_long(ce, ZEND_STRL("OPT_BACKOFF_CAP"), REDIS_OPT_BACKOFF_CAP); } static ZEND_RSRC_DTOR_FUNC(redis_connections_pool_dtor) |